海量数据库解决方案
基本信息
编辑推荐
10亿韩元40万册销售神话
韩国数据库泰斗李华植先生力作 风摩日韩
推荐阅读
内容简介回到顶部↑
《海量数据库解决方案》将整体内容分为两部分,在第1部分中以影响数据读取效率的所有要素为类别,对其各自的概念、原理、 特征、应用准则,以及表的结构特征、多样化的索引类型、优化器的内部作用、优化器为各种结果制定的执行计划予以详细说明,并以对优化器的正确理解为基础,提出对执行计划和执行速度产生最大影响的索引构建战略方案;在第2部分中主要介绍提高数据读取效率的具体战略方案,在这部分中介绍与数据读取效率相关的局部范围扫描的原理和具体应用方法,以及对被认为是提高数据库使用效率基础的表连接的所有类型予以详细说明。
《海量数据库解决方案》系列丛书深受广大读者的喜爱已经长达10年之久,在被誉为“圣经”的同时,它已经变成了数据库用户不可或缺的必读书籍。作者竭力探求能够让it工作者在实际工作中轻松应用并掌控的巧妙方法,提供事半功倍的海量数据库解决之道。
《海量数据库解决方案》适合数据库开发人员和数据库管理员等阅读。
《海量数据库解决方案》系列丛书深受广大读者的喜爱已经长达10年之久,在被誉为“圣经”的同时,它已经变成了数据库用户不可或缺的必读书籍。作者竭力探求能够让it工作者在实际工作中轻松应用并掌控的巧妙方法,提供事半功倍的海量数据库解决之道。
《海量数据库解决方案》适合数据库开发人员和数据库管理员等阅读。
作译者回到顶部↑
本书提供作译者介绍
作者:(韩国)李华植 译者:郑保卫 盖国强
李华植
代表韩国的数据库技术先驱
集基于EA(Enterprise Architecture)的数据架构(Data Architecture)
方法论之大成
在韩国最早提出了数据专家顾问的概念
现任EN-CORE CONSULTING总经理及代表顾问
曾在韩国Oracle公司担任200多家企业的技术顾问
论文:《构建海量数据系统时的RDB Performance问题解决方案》
书籍:《Data Modeling&Database Design》(1995)
《Oracle Server Tuning}(1.. << 查看详细
目录回到顶部↑
第1部分 影响数据读取的因素
第1章 数据的存储结构和特征1
1.1 表和索引分离型5
1.1.1 堆表的结构5
1.1.2 聚簇因子(cluster factor)10
1.1.3 影响读取的因素13
1.1.3.1 大范围数据读取的处理方案14
1.1.3.2 提高聚簇因子的手段17
1.2 索引组织表(index-organized table)19
1.2.1 堆表和索引组织表的比较19
1.2.2 索引组织表的结构和特征20
1.2.3 逻辑rowid和物理猜(physical guess)22
1.2.4 溢出区(overflow area)24
1.2.5 索引组织表的创建25
1.3 聚簇表26
1.3.1 聚簇表的概念27
1.3.2 单表聚簇29
1.3.3 复合表聚簇31
1.3.4 聚簇表的代价34
1.3.5 哈希聚簇39
第1章 数据的存储结构和特征1
1.1 表和索引分离型5
1.1.1 堆表的结构5
1.1.2 聚簇因子(cluster factor)10
1.1.3 影响读取的因素13
1.1.3.1 大范围数据读取的处理方案14
1.1.3.2 提高聚簇因子的手段17
1.2 索引组织表(index-organized table)19
1.2.1 堆表和索引组织表的比较19
1.2.2 索引组织表的结构和特征20
1.2.3 逻辑rowid和物理猜(physical guess)22
1.2.4 溢出区(overflow area)24
1.2.5 索引组织表的创建25
1.3 聚簇表26
1.3.1 聚簇表的概念27
1.3.2 单表聚簇29
1.3.3 复合表聚簇31
1.3.4 聚簇表的代价34
1.3.5 哈希聚簇39
序言回到顶部↑
这已经是第四次为本书写作者序言了,此时此刻过去20年的生活如同电影般在我的脑海里一一掠过。当我最初决定步入IT领域时就为自己立下了誓言,时至今日回想起多年走过的历程,其间充满了艰辛,也正是这无数的艰辛让我最终体验了收获的愉悦。
回望这20多年的足迹,我一直努力用新的视角去观察他人所忽视的领域,尝试用崭新的思维和充满创意的双手去耕耘。尽管如此,也仍然无法紧跟IT技术飞快的发展步伐,我为实现理想而终日不停前行的脚步,虽然忙碌但却无限满足。
众所周知,能够加工成宝石的原石比比皆是,一分耕耘,一分收获,每当我们初次接触某个新的东西时都会或多或少有些紧张。因此从这一层面来看,数据库散发着无穷的魅力,它如同渊博精深的智者般质朴,总是以真实、坦诚的心去面对每一位学习和研究它的人。
在过去并不短暂的岁月里我一直深信数据库的骨骼就是“数据”,并为这一理论的发展不断努力,吸收同仁们分享的经验而持续奋斗。为了打破始终在理论表面徘徊的固有模式而不断寻求新的尝试,并试图探求能够让IT工作者在实际工作中轻松应用并掌控的巧妙方法。
这种巧妙方法不能是只通过经验和试验才能获得的,它必须是利用日常常识就可以理解说明的方法。有这么一句话“会者不难,难者不会”,如果能够把一些复杂的理论与通俗浅显的常识相结合,那么不仅有利于人们的理解,更有利于人们在合适的情况下加以灵活运用。相反,有这么一句话“一知半解以为是”,意思是指那些只观其表不观其里就加以相信的人。
很多程序员只忠实地相信自己的经验,当问及为何如此时,大部分人的答案都是“因为我那样做过”或“那样比较好”。10种类型的原理可以组合出10的阶乘(3 628 800)种现象,那么100种类型的原理所能够表现出来的现象数可以认为是一个天文数字。
如若仅凭经验去思考问题,无论怎么努力,最终也只能获得其中一部分的原理而已。然而,事实上我们是完全有能力深刻地理解这100种原理的。但如果不试图进行深刻钻研而只停留在表面,最终只能是一无所获。宝石是不会被轻易发现的,只有凭借最大的努力去寻找方能找到。
在不知不觉中当我们遇到了从表面上看无法解决的复杂问题时,会出现两种人:其一,是坚持不懈、彻夜不休也要寻找到最佳解决办法的人,这种人通过不懈的努力最终能够获得什么呢?事实上随着岁月的流逝,他们终将成为众人皆知的专家;其二,是认为过于烦琐,直接予以放弃的人,这种人只会让自己的血汗变成廉价的废弃物。
可以自豪地说“我付出了常人所无法想象的艰辛”,为了寻求完美的真理舍弃了很多常人的生活。在没有钓到鱼时钓鱼人也许会为此而耿耿于怀,但在我看来问题的关键在于没有寻找到有效的钓鱼方法。如果钓鱼人能够充分理解我的想法,并甘愿为了改变自己的固有观念而付出较大努力,尽管他也可能会为此而花费大量的时间和心血,但坚信他一定能够获得别人所无法获得的成果。如果他研究出了别人所无法研究出的钓鱼方法,那么从此就再也不用为钓不到鱼而担心了。
各位读者在工作的同时究竟是否一直在使用一种平凡的方法呢?还是为了解决明天必须要完成的任务而临时抱佛脚呢?现在该到结束这种恶性循环的时候了。应用程序其实就是处理数据的手段而已,它需要紧跟流行的步伐,如不及时进行更新,在不经意之间就已经落伍了。
然而数据和数据库并非如此,不论岁月如何流失,我们积攒起来的“内功”是不会消失的。如果能对其原理有一个深刻的理解,那么不论何时何地都能够随心所欲地钓到很多鱼。随着数据库技术的发展进步,能够精确执行指令的DBMS与日俱增,随着对DBMS应用能力的不同所获得的性能差异使我们从技术中获得满足感。
不知不觉中《海量数据库解决方案》系列书籍深受广大读者的喜爱已经长达10年之久,在本书被誉为“圣经”的同时它已经变成了数据库用户不可或缺的必读书籍。截至今日,本书依旧深受广大读者的喜爱,并且我们为了帮助各位读者深刻地理解本书的内容,特意开设了相应的培训课程,很多读者从中受益。
IT领域技术10年的发展状况与其他领域100年的发展状况相当, 在数据库的发展历程中,有一些技术和原理被不断更新,有一些技术和原理被直接替代,也有一些技术和原理始终被维持使用。其中能够被持续使用而没有被改进的,说明它们是完美的,是适应性非常强的。
然而,我并没能及时将数据库所提供的新功能的真正含义和特性,及其在实际工作中的灵活运用方法和准则介绍给各位读者,借这次机会向各位忠实的读者表示深深的歉意。我知道很多读者对这本新书寄予了厚望, 相信通过我的努力能够让各位读者如愿以偿。
事实上,本人在此期间为了研究数据架构(Data Architecture)的相关理论花费了大量的时间和精力,因为我认为数据架构的重要性和根本性主要体现在它是搜集和管理数据体系的理论,它的目的在于以数据库技术为基础,构建更加深邃、全面的数据体系。现在,有很多用户开始对数据构建的相关理论感兴趣,并且一些用户还组织了专门的学习小组,我为此而感到非常欣慰。
随着信息化进程的不断加快,利用数据库所要管理的数据不仅会显著增多,而且也会变得非常复杂,由此而引发的数据合并、标准化、数据质量等方面的问题也已经到了不得不解决的境地了,实际上可以说是迫在眉睫。因此,构建以监督数据构架是否按照要求构建、完善对数据进行有效控制的元数据系统,已经成了我们所必须完成的迫切任务。
幸运的是,很多开发人员和管理人员都对数据构架注入了极大的关心,韩国政府为此专门设置了数据构架资格考试,也正是由于国家和各位IT领域从业者的努力才使得数据构架有了今天的良好发展形势。为了使其得到进一步的发展,我们为此而研究出了更为体系化的理论方法,出版了高质量的书籍,设置了高标准的培训课程,构建出了将数据构架解决方案和相关组件相结合的元数据系统。
然而,在我为了推进数据构架的发展而付出大量时间和精力的同时,并没有放弃对数据库的研究。在此期间,我不仅连续不断地向很多用户提供数据库的咨询工作,而且也在不断地研究着新出现的技术。虽然我并没有公开地出版新书,但是却编写了大量的研究材料,并将其中相当大一部分在公司韩国数据库振兴院的主页上公开发表。尽管如此,现在对数据库的深刻研究,并将这些材料系统化的工作已经迫在眉睫了。
经过一年的昼夜工作终于完成了本书,并为了在本书中涵盖所有DBMS的“最小公倍数”而付出了很大的努力。虽然在各个DBMS之间多少都有一些差异,但是如果从原理和灵活运用准则的角度来看,它们之间其实并没有太大的差异。如若对所有DBMS的功能进行详细说明,反倒不利于各位读者的理解,所以在本书中以Oracle为基准进行说明的部分比较多。
尽管在本书中所使用的描述方法和命令语言主要以Oracle为基准,但所说明的原理和概念适用于所有的DBMS,这就像尽管每一个照相机的具体操作方法都有所不同,但从拍摄照片的角度来看却并没有太大的差异一样。为了帮助各位读者更好地理解和应用本书中所介绍的原理和方法,介绍其被应用在各个不同DBMS中的相关书籍在不久的将来将呈现给各位读者。
回望这20多年的足迹,我一直努力用新的视角去观察他人所忽视的领域,尝试用崭新的思维和充满创意的双手去耕耘。尽管如此,也仍然无法紧跟IT技术飞快的发展步伐,我为实现理想而终日不停前行的脚步,虽然忙碌但却无限满足。
众所周知,能够加工成宝石的原石比比皆是,一分耕耘,一分收获,每当我们初次接触某个新的东西时都会或多或少有些紧张。因此从这一层面来看,数据库散发着无穷的魅力,它如同渊博精深的智者般质朴,总是以真实、坦诚的心去面对每一位学习和研究它的人。
在过去并不短暂的岁月里我一直深信数据库的骨骼就是“数据”,并为这一理论的发展不断努力,吸收同仁们分享的经验而持续奋斗。为了打破始终在理论表面徘徊的固有模式而不断寻求新的尝试,并试图探求能够让IT工作者在实际工作中轻松应用并掌控的巧妙方法。
这种巧妙方法不能是只通过经验和试验才能获得的,它必须是利用日常常识就可以理解说明的方法。有这么一句话“会者不难,难者不会”,如果能够把一些复杂的理论与通俗浅显的常识相结合,那么不仅有利于人们的理解,更有利于人们在合适的情况下加以灵活运用。相反,有这么一句话“一知半解以为是”,意思是指那些只观其表不观其里就加以相信的人。
很多程序员只忠实地相信自己的经验,当问及为何如此时,大部分人的答案都是“因为我那样做过”或“那样比较好”。10种类型的原理可以组合出10的阶乘(3 628 800)种现象,那么100种类型的原理所能够表现出来的现象数可以认为是一个天文数字。
如若仅凭经验去思考问题,无论怎么努力,最终也只能获得其中一部分的原理而已。然而,事实上我们是完全有能力深刻地理解这100种原理的。但如果不试图进行深刻钻研而只停留在表面,最终只能是一无所获。宝石是不会被轻易发现的,只有凭借最大的努力去寻找方能找到。
在不知不觉中当我们遇到了从表面上看无法解决的复杂问题时,会出现两种人:其一,是坚持不懈、彻夜不休也要寻找到最佳解决办法的人,这种人通过不懈的努力最终能够获得什么呢?事实上随着岁月的流逝,他们终将成为众人皆知的专家;其二,是认为过于烦琐,直接予以放弃的人,这种人只会让自己的血汗变成廉价的废弃物。
可以自豪地说“我付出了常人所无法想象的艰辛”,为了寻求完美的真理舍弃了很多常人的生活。在没有钓到鱼时钓鱼人也许会为此而耿耿于怀,但在我看来问题的关键在于没有寻找到有效的钓鱼方法。如果钓鱼人能够充分理解我的想法,并甘愿为了改变自己的固有观念而付出较大努力,尽管他也可能会为此而花费大量的时间和心血,但坚信他一定能够获得别人所无法获得的成果。如果他研究出了别人所无法研究出的钓鱼方法,那么从此就再也不用为钓不到鱼而担心了。
各位读者在工作的同时究竟是否一直在使用一种平凡的方法呢?还是为了解决明天必须要完成的任务而临时抱佛脚呢?现在该到结束这种恶性循环的时候了。应用程序其实就是处理数据的手段而已,它需要紧跟流行的步伐,如不及时进行更新,在不经意之间就已经落伍了。
然而数据和数据库并非如此,不论岁月如何流失,我们积攒起来的“内功”是不会消失的。如果能对其原理有一个深刻的理解,那么不论何时何地都能够随心所欲地钓到很多鱼。随着数据库技术的发展进步,能够精确执行指令的DBMS与日俱增,随着对DBMS应用能力的不同所获得的性能差异使我们从技术中获得满足感。
不知不觉中《海量数据库解决方案》系列书籍深受广大读者的喜爱已经长达10年之久,在本书被誉为“圣经”的同时它已经变成了数据库用户不可或缺的必读书籍。截至今日,本书依旧深受广大读者的喜爱,并且我们为了帮助各位读者深刻地理解本书的内容,特意开设了相应的培训课程,很多读者从中受益。
IT领域技术10年的发展状况与其他领域100年的发展状况相当, 在数据库的发展历程中,有一些技术和原理被不断更新,有一些技术和原理被直接替代,也有一些技术和原理始终被维持使用。其中能够被持续使用而没有被改进的,说明它们是完美的,是适应性非常强的。
然而,我并没能及时将数据库所提供的新功能的真正含义和特性,及其在实际工作中的灵活运用方法和准则介绍给各位读者,借这次机会向各位忠实的读者表示深深的歉意。我知道很多读者对这本新书寄予了厚望, 相信通过我的努力能够让各位读者如愿以偿。
事实上,本人在此期间为了研究数据架构(Data Architecture)的相关理论花费了大量的时间和精力,因为我认为数据架构的重要性和根本性主要体现在它是搜集和管理数据体系的理论,它的目的在于以数据库技术为基础,构建更加深邃、全面的数据体系。现在,有很多用户开始对数据构建的相关理论感兴趣,并且一些用户还组织了专门的学习小组,我为此而感到非常欣慰。
随着信息化进程的不断加快,利用数据库所要管理的数据不仅会显著增多,而且也会变得非常复杂,由此而引发的数据合并、标准化、数据质量等方面的问题也已经到了不得不解决的境地了,实际上可以说是迫在眉睫。因此,构建以监督数据构架是否按照要求构建、完善对数据进行有效控制的元数据系统,已经成了我们所必须完成的迫切任务。
幸运的是,很多开发人员和管理人员都对数据构架注入了极大的关心,韩国政府为此专门设置了数据构架资格考试,也正是由于国家和各位IT领域从业者的努力才使得数据构架有了今天的良好发展形势。为了使其得到进一步的发展,我们为此而研究出了更为体系化的理论方法,出版了高质量的书籍,设置了高标准的培训课程,构建出了将数据构架解决方案和相关组件相结合的元数据系统。
然而,在我为了推进数据构架的发展而付出大量时间和精力的同时,并没有放弃对数据库的研究。在此期间,我不仅连续不断地向很多用户提供数据库的咨询工作,而且也在不断地研究着新出现的技术。虽然我并没有公开地出版新书,但是却编写了大量的研究材料,并将其中相当大一部分在公司韩国数据库振兴院的主页上公开发表。尽管如此,现在对数据库的深刻研究,并将这些材料系统化的工作已经迫在眉睫了。
经过一年的昼夜工作终于完成了本书,并为了在本书中涵盖所有DBMS的“最小公倍数”而付出了很大的努力。虽然在各个DBMS之间多少都有一些差异,但是如果从原理和灵活运用准则的角度来看,它们之间其实并没有太大的差异。如若对所有DBMS的功能进行详细说明,反倒不利于各位读者的理解,所以在本书中以Oracle为基准进行说明的部分比较多。
尽管在本书中所使用的描述方法和命令语言主要以Oracle为基准,但所说明的原理和概念适用于所有的DBMS,这就像尽管每一个照相机的具体操作方法都有所不同,但从拍摄照片的角度来看却并没有太大的差异一样。为了帮助各位读者更好地理解和应用本书中所介绍的原理和方法,介绍其被应用在各个不同DBMS中的相关书籍在不久的将来将呈现给各位读者。







点击看大图









加载中...
