NoSQL——大数据的机遇和挑战 许建辉, 巨杉数据库软件,研发总裁
NoSQL——大数据的机遇和挑战 许建辉, 巨杉数据库软件,研发总裁
http://www.uml.org.cn/course/yunke_guidline.asp
http://blog.csdn.net/xiaoqiangxx/article/details/7566654
在这个原则下(CAP理论),事务系统的一致性属性被定义为ACID(atomicity, consistency, isolation, durability)是一种不同类型的一致性保证。
在ACID中,一致性保证当一个事务完成时数据库处于一致的状态;例如,当从一个账户转钱到另一个账户,两个账户的总数是不变的。
在基于ACID的系统中,通常由编写事务的开发人员负责一致性,数据库的完整性约束能辅助开发。
NoSQL——大数据的机遇和挑战
大数据时代,数据有各种来源,很多都是非结构化的,如何处理这些非结构化数据,NoSQL提供了一套采集、处理、存储、分析和应用方法,可以帮助您挖掘庞大而凌乱的数据中的商业价值,本次讲座,带您走进NoSQL的大数据世界。
主讲:许建辉, 广州巨杉软件,研发总裁
时间:2015年10月31,上午10:00-11:30
f

f
CAP理论
最终数据一致
CA符合产品
CP符合产品
AP符合产品

f
KV数据库不提供数据库引擎计算能力,不适合复杂计算 ,不能用于分析系统
redis,memcached
只用于主键的快速存取

f
NoSQL分类
kv:redis,memcached
宽表:HBASE
文档:mongodb
图形:InfoGrid

f
宽表:列存储,布隆过滤器,一般用于分析系统

f

f

f
文档:mongodb,巨衫数据库
使用JSON,半结构化数据

f

f

f
巨衫 优点
自动判断文件系统64K ,128K数据块进行切分,放在不同存储区域
使用Direct IO,不用文件系统缓存

f
使用LSN保证一致性

f

f

f
支持强一致性/最终一致性

f

f
ShardingKey切分到多个数据组
只支持两种分区方法:范围 ,HASH
f

f

f
读写分离机制帮助业务使用 数据湖
对抗微软Azure的数据湖

f

f
Spark SQL可以访问巨衫数据库数据

f
提供Connector在异构数据源中交换数据:HDFS<->巨衫数据库<->RDBMS

f

f

f
主要归档在冷存储上,部分在线,任何对早期历史数据的查询都要漫长过程

f
管理海量历史数据挑战
DBA要历史数据分类管理
时间序是最直观的管理方式
热点数据保证高性能,TCO低

f
海量数据存储
传统放在磁带库或者直接丢弃历史数据
日增数据几百G甚至上TB
数据表结构的变更
巨衫做法
水平扩展
JSON非结构化数据存储,自适应数据结构变更

f
历史全量数据用途,用户流水实时查询
DB2数据库数据全量导入到巨衫数据库,巨衫数据库对外提供SQL接口,可以继续使用现有查询应用
查询时间<3s

f

f

f
f
传统应用没有改变,唯一变化的是数据量

f
http://blog.csdn.net/starxu85/article/details/5399183
最终一致性(eventually consistent)
对于一致性,可以分为从客户端和服务端两个不同的视角。从客户端来看,一致性主要指的是多并发访问时更新过的数据如何获取的问题。从服务端来看,则 是更新如何复制分布到整个系统,以保证数据最终一致。一致性是因为有并发读写才有的问题,因此在理解一致性的问题时,一定要注意结合考虑并发读写的场景。
从客户端角度,多进程并发访问时,更新过的数据在不同进程如何获取的不同策略,决定了不同的一致性。对于关系型数据库,要求更新过的数据能被后续的 访问都能看到,这是强一致性 。如果能容忍后续的部分或者全部访问不到,则是弱一致性 。 如果经过一段时间后要求能访问到更新后的数据,则是最终一致性。
最终一致性根据更新数据后各进程访问到数据的时间和方式的不同,又可以区分为:
- 因果一致性 。如果进程A通知进程B它已更新了一个数据项,那么进程B的后续访问将返回更新后的值,且一次写入 将保证取代前一次写入。与进程A无因果关系的进程C的访问遵守一般的最终一致性规则。
- “读己之所写(read-your-writes)”一致性 。当进程A自己更新一个数据项之后,它总是访问到 更新过的值,绝不会看到旧值。这是因果一致性模型的一个特例。
- 会话(Session)一致性 。这是上一个模型的实用版本,它把访问存储系统的进程放到会话的上下文中。只要 会话还存在,系统就保证“读己之所写”一致性。如果由于某些失败情形令会话终止,就要建立新的会话,而且系统的保证不会延续到新的会话。
- 单调(Monotonic)读一致性 。如果进程已经看到过数据对象的某个值,那么任何后续访问都不会返回在那 个值之前的值。
- 单调写一致性 。系统保证来自同一个进程的写操作顺序执行。要是系统不能保证这种程度的一致性,就非常难以编程 了。
f

浙公网安备 33010602011771号