数据库原理DATABASEPRINCIPLES天津大学计算机科学与技术学院陈世展副教授博士shizhan@tju.edu.cn王鑫副教授博士wangx@tju.edu.cn2我的研究方向•研究方向–移动互联网与社会计算•语义标注质量工程研究•移动互联网生态系统机制研究•社团发现优化方法研究•智慧交通应用研究•主页––数据库•计算机科学与技术的一个重要领域•研究问题–如何用计算机有效管理数据?•信息系统的核心和基础–促进信息系统向各行各业推广computersciencedatalogyPeterNaur2005TuringAward4《数据库原理》的位置计算机科学与技术数学与自然科学基础离散数学数据结构程序设计语言编译原理数据库理论与技术数据挖掘知识库数据仓库信息检索Web技术算法各种数据处理应用系统5课程目标和内容•目标–掌握数据库系统的基本理论和基本技术•内容–数据库基本概念–关系数据库系统(重点)–数据库系统的设计与开发–事务处理6人物•图灵奖:“计算机界的诺贝尔奖”•数据库领域的三位图灵奖得主–C.W.Bachman1973•网状数据库之父–E.F.Codd1981•关系数据库之父–JimGray1998•事务处理奠基者7数据库产业•关系数据库管理系统(RDBMS)2008年2011年–年市场销售额188亿241亿美元•Oracle44.3%48.8%•IBMDB221.0%20.2%•MicrosoftSQLServer18.5%17.0%•SAP/Sybase3.5%4.6%•Teradata3.3%3.7%•其他9.4%5.8%数据来源Garnter(2012年3月)8大数据时代•数据量(volume)–2013年全世界产生和复制了大约4.4ZB(IDC)•4.4万亿GB•13.7亿中国人每人每分钟发3条文字微信,且不停地写14894年所产生的数据总量•数据处理速度(velocity)–数据实时处理:感知、传输、决策、控制•数据多样性(variety)–结构化、半结构、无结构1TB=1024GB1PB=1024TB1EB=1024PB1ZB=1024EB99语义大数据•关联政府数据语义大数据应用将无处不在!•电脑“沃森”–大数据知识–通过“图灵测试”?“沃森”基于语义大数据,而非一般海量数据语义大数据唤起人工智能新希望!•英国data.gov.uk–345,631数据集–1,246应用–健康、交通、财政、环境、安全、金融•美国data.gov–445,317数据集–1,603应用–教育、能源、健康、制造、海洋、安全10Textbooks•“AFirstCourseinDatabaseSystems,3rdEdition”,2007–机械工业出版社影印,2008•StanfordUniversity•《数据库系统基础教程》(原书第3版)–JeffreyD.Ullman,JenniferWidom著–岳丽华等译–机械工业出版社,200911Textbooks(Cont’d)•“DatabaseSystemImplementation,2ndEdition”,2008(17,18.1-18.6)–机械工业出版社,影印,2010•StanfordUniversity•《数据库系统实现》(原书第2版)–HectorGarcia-Molina,JeffreyD.Ullman,JenniferWidom著–杨冬青等译–机械工业出版社,201012Textbooks(Cont’d)•“DatabaseSystems:TheCompleteBook,2ndEdition”,2008(全书)–HectorGarcia-Molina,JeffreyD.Ullman,JenniferWidom–“DatabaseSystemImplementation,2ndEdition”实际上是全书的后一半•国外只有全书,并无此书•《数据库系统全书》13ReferenceBooks•《数据库系统概论》(第4版)–王珊,萨师煊–高等教育出版社,2006•《数据库系统概论-学习指导与习题解析》–王珊–高等教育出版社,200814ReferenceBooks(Cont’d)•“DatabaseManagementSystems,3rdEdition”,2002–“奶牛书”(CowBook)–清华大学出版社影印,2003•MIT•UniversityofWisconsin•《数据库管理系统:原理与设计》(第3版)–RaghuRamakrishnan,JohannesGehrke著–周立柱等译–清华大学出版社,2004.15ReferenceBooks(Cont’d)•“DatabaseSystemConcepts,6thEdition”,2010–“帆船书”(SailboatBook)–高等教育出版社影印(第5版),2006•《数据库系统概念》第6版–AviSilberschatz,HenryF.Korth,S.Sudarshan著–杨冬青等译–机械工业出版社,2012.16OutlineofOurCourse•RelationalDatabaseModeling–2.TheRelationalModelofData–3.DesignTheoryofRelationalDatabases–4.High-LevelDatabaseModels•RelationalDatabaseProgramming–6.TheDatabaseLanguageSQL–7.ConstraintsandTriggers–8.ViewsandIndexes–9.SQLinaServerEnvironment–10.1SecurityandUserAuthorizationinSQL•TransactionProcessing–17.CopingWithSystemFailures–18.ConcurrencyControl•总课时:56–上课:40学时–上机:16学时(4个半天)–预计:第9、15、16、17周停课,去做上机实验–可能:上机压缩一次,改成习题课、复习等18课程成绩•考试成绩:70%•书面作业成绩:10%–5~6次•上机实验和大作业成绩:20%–数据库系统设计与编程实现19e-Learning教学平台•数据库系统的世界OUTLINESEvolutionofDatabaseSystems1OverviewofaDBMS223数据(Data)•是数据库存储的基本对象,描述事物的符号记录–数字(number)–文本(text)–图形(graph)–图像(image)–音频(audio)–视频(video)…•数据的语义–数据的含义–93•某门课的成绩•某个人的体重•计算机系学生人数•…–数据与其语义是不可分的•信息–带有语义的数据24有组织的数据•一条记录–(张三,男,19900510,天津市,计算机,2009)•语义–学籍系统中的一条学生记录–姓名,性别,出生日期,居住地,所在系,入学年份•给出这条记录的另一种解释?26数据/信息爆炸•IDC(国际数据资讯公司)报告–2006年1610亿GB制造和复制的数据量–2010年9880亿GB•自然界–哈勃太空望远镜:每天约产生50亿字节数据–人类基因组计划:海量基因数据处理•人类社会–企业:商品生产和流通环节产生的数据–银行:每笔业务生成的相关数据–电子商务:网上买卖交易数据–证券市场:证券交易、委托与持仓数据需求:科学地组织和存储数据、高效地获取和维护数据27数据库(Database)•数据库(Database,简称DB)–长期存储在计算机内、–有组织的、–可共享的–数据的集合。28DatabasesAreEssential•Databasestodayareessentialtoeverybusiness–Google–Yahoo!–Amazon.com•Thereisadatabasebehindthescenes–DataBaseManagementSystem–DBMS29数据库管理系统•数据库管理系统–DatabaseManagementSystem,缩写DBMS–位于用户与操作系统之间的一层数据管理软件•DBMS是系统软件•DBMS是大型复杂的软件系统–功能•数据定义、数据存储、数据操作、数据控制、事务管理、数据库维护…硬件操作系统DBMS应用程序30DBMS的位置硬件平台基础软件平台基础架构平台应用软件平台软件产品办公软件管理软件应用服务器中间件DBMSOS31数据库管理系统:产品•关系数据库管理系统(RDBMS)–商业的•Oracle•IBMDB2•MSSQLServer–开源的•MySQL/MariaDB•PostgreSQL32数据库系统•DatabaseSystem,缩写DBS–针对某种应用而开发的信息管理系统–构成•数据库•DBMS•应用程序•数据库管理员(DBA)–典型的DBS•银行交易系统•人力资源管理系统•电子购物系统…操作系统数据库管理系统DBMS应用程序数据库DB数据库管理员用户用户用户...33ManagementofData•Expectations1.Allowuserstocreatenewdatabasesandspecifytheirschemas2.Theabilitytoqueryandmodifythedata,aquerylanguage3.Supportthestorageoflargeamountsofdataoveralongperiodoftime,efficientaccesstothedataforqueries4.Enabledurability5.Controlaccesstodatafrommanyusersatonce34文件系统FileSystems•Whatfilesystemsprovideandnotprovide?–Someofitem(3)•Storingdataoveralongperiodoftime•Storageoflargeamountsofdata–Cons•Datamaybelostifitisnotbackedup•Donotsupportefficientaccessiflocationisnotknown35文件系统FileSystems(Cont’d)•Whatfilesystemsprovideandnotprovide?–Donotdirectlysupportitem(2)•Aquerylanguageforthedatainfiles–Supportforitem(1)islimited•Creationofdirectorystructuresforfiles–Item(4)isnotalwayssupported•Maylosedatathathasnotbeenbackedup–Donotsatisfyitem(5)•Twousersmodifyingthesamefileatthesametime应用程序与数据的对应关系(文件系统阶段)应用程序1文件1应用程序2文件2应用程序n文件n存取方法...…...…文件系统–应用程序与数据之间的对应关系应用程序与数据的对应关系(数据库系统)DBMS应用程序1应用程序2数据库…数据库系统--应用程序与数据之间的对应关系38DBMS•Firstimportantapplications–Datawascomposedofmanysmallitems–Manyqueriesormodificationsweremade1.Bankingsystems2.Airlinereservationsystems3.