数据库技术复习概要.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库技术复习概要

与网状和层次数据库相比,关系数据库有哪些优点? 与层次和网状模型比较,关系模型有下列优点:数据结构单一;建立在严格的数学概念基础上;将数据定义和数据操纵统一在一种语言中,使用方便,易学易用。 试述关系模型的完整性规则 实体完整性:关系中键属性的值不能取空值。 参照完整性:是关系间引用所遵循的规则,与外键有关。 用户定义的完整性:数据间应满足的语义约束关系,由用户定义,由系统检查。 试述等值连接与自然连接的区别和联系 等值连接表示为R A=BS,自然连接表示为R S;自然连接是除去重复属性的等值连接。两者之间的区别和联系如下:1、自然连接一定是等值连接,但等值连接不一定是自然连接。 等值连接不把重复的属性除去;而自然连接要把重复的属性除去。2、等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。3等值连接不把重复的属性除去;而自然连接要把重复的属性除去。key/value的数据结构。 key/value的数据结构:域(Domain)+数据项(Item) 域类似于传统关系数据库中的“表”,但域无结构,作用是容纳数据项; 数据项用Key定义,一个域中的不同数据项可能具有不同的结构,数据属性全部是字符串类型,但在有些实现中,属性也可以具有简单的类型,如整型、字符串数组等。 Key/Value数据模式与关系数据库的比较有哪些优点和缺点? Key/Value的优点: –便于扩展,适于云计算的环境 –与应用程序代码的兼容性更好 Key/Value的缺点: –数据完整性约束转移至应用程序 –目前的很多Key/Value数据存储系统之间不兼容 –在云环境中,很多用户和应用使用同一个系统。为了避免一个进程使共享环境超载,往往严格限制一个单独的查询所能够产生的全局影响。 在数据切分机制中,一致性哈希算法的基本原理是什么? 下面就来按照5个步骤简单介绍consistent hashing算法的基本原理。 环形hash空间 考虑通常的hash算法都是将value映射到一个32位的key值,也即是0~2^32-1次方的数值空间;我们可以将这个空间想象成一个首(0)尾(2^32-1)相接的圆环 (2) 把数据对象映射到hash空间 接下来考虑4个对象object1~object4,通过hash函数计算出的hash值key在环上的分布如下图所示。 hash(object1) = key1; … … hash(object4) = key4; (3) 把cache映射到hash空间 Consistent hashing的基本思想就是将对象和cache都映射到同一个hash数值空间中,并且使用相同的hash算法。 假设当前有A,B和C共3台cache,那么其映射结果将如图3所示,他们在hash空间中,以对应的hash值排列。 hash(cache A) = key A; … … hash(cache C) = key C; (4) 把对象映射到cache 现在cache和对象都已经通过同一个hash算法映射到hash数值空间中了,接下来要考虑的就是如何将数据对象映射到服务器cache上面了。 在这个环形空间中,如果沿着顺时针方向从对象的key值出发,直到遇见一个cache,那么就将该对象存储在这个cache上,因为对象和cache的hash值是固定的,因此这个cache必然是唯一和确定的。这样就找到了对象和cache的映射方法! 依然继续上面的例子,那么根据上面的方法,数据对象object1将被存储到服务器cache A上;object2和object3对应到cache C;object4对应到cache B。 (5) 考察cache的变动 前面讲过,通过简单hash然后求余的方法带来的最大问题就在于:当cache有所变动时,cache会失效,进而对后台服务器造成巨大的冲击,现在就来分析分析consistent hashing算法。 (a)移除cache 考虑假设cache B挂掉了,根据上面讲到的映射方法,这时受影响的将仅是那些沿cache B逆时针遍历直到下一个cache(cache A)之间的对象,也即是本来映射到cache B上的那些数据对象。 因此这里仅需要变动对象object4,将其重新映射到cache C上即可;参见下图。 (b) 添加cache 再考虑添加一台新的cache D的情况,假设在这个环形hash空间中,cache D被映射在对象object2和object3之间。这时受影响的将

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档