CGFT大数据技术原理中关系数据库的关键特性有哪些?关系数据库的关键特性包括完善的事务机制和高效的查询机制。关系数据库的事务机制是由1998年图灵奖获得者、被誉为“数据库事务处理*”的詹姆斯·格雷提出的,一个事务原子性、一致性、隔离性、持续性等“ACID”四性,有了事务机制,数据库中的各种操作可以*数据的一致性修改。
关系数据库还拥有*高效的查询处理引擎,可以对查询语句进行语法分析和性能优化,*查询的高效执行。
但是,关系数据库引以为傲的两个关键特性,到了Web2.0时代却成了“鸡肋”,主要表现在以下几个方面。
1.Web2.0网站系统通常不要求严格的数据库事务
对于许多Web2.0网站而言,数据库事务已经不是那么重要。
比如,对于微博网站而言,如果一个用户发布微博过程出现错误,可以直接丢弃该信息,而不必像关系数据库那样执行复杂的回滚操作,这样并不会给用户造成什么损失。而且,数据库事务通常有一套复杂的实现机制来*数据库一致性,需要大量系统开销,对于包含大量频繁实时读写请求的Web2.0网站而言,实现事务的代价是难以承受的。
2.Web2.0并不要求严格的读写实时性
对于关系数据库而言,一旦有一条数据记录成功插入数据库中,就可以立即被查询。
这对于银行等金融机构而言,是*重要的。银行用户肯定不希望自己刚刚存入一笔钱,却无法在系统中立即查询到这笔存款记录。但是,对于Web2.0而言,却没有这种实时读写需求,用户的微博粉丝数量增加了10个,在几分钟后显示更新后的粉丝数量,用户可能也不会察觉。
3.Web2.0通常不包含大量复杂的SQL查询
复杂的SQL查询通常包含多表连接操作,在数据库中,多表连接操作代价高昂,因此,各类SQL查询处理引擎都设计了十分巧妙的优化机制,通过调整选择、投影、连接等操作的顺序,达到尽早缩小参与连接操作的元组数目的目的,从而降低连接代价、提高连接效率。但是,Web2.0网站在设计时就已经尽量减少甚至避免这类操作,通常只采用单表的主键查询,因此,关系数据库的查询优化机制在Web2.0中也就难以有所作为。