大数据学习笔记之三十六 NewSQL相关知识

NewSQL
特点
支持关系数据模型、使用SQL作为其主要接口
类别
1)新的架构
工作在一个分布式集群的节点上,其中每个节点都拥有一个数据子集,SQL查询被分成查询片段发送给自己所在的数据的节点上执行,可以通过添加额外的节点来线性扩展,代表Google spanner
通常有一个单一的主节点的数据源,它们有一组节点来做事务处理,这些节点接到特定SQL查询后,会把它们所需要的所有数据从主节点上取回来后执行SQL,再返回结果
2)SQL引擎
高度优化的SQL存储引擎
3)透明分片
提供了分片的中间件层,这些数据库可以跨多个节点分片
定义
可扩展、高性能的数据库的,不仅具有NoSQL对海量数据库的存储管理能力,还保持了传统数据库支持ACID和SQL等特性
产品
1)spanner
数据模型
传统数据库
关系模型,有丰富的功能,支持SQL查询语句
NoSQL
在key-value存储之上增加有限功能,如列索引、范围查询等,但具有良好的扩展性
spannner
继承了Megastore的设计,数据模型介于RDBMS和NoSQL之间,提供树形、层次化的数据Scheme
支持SQL的查询语言,提供表连接等关系数据库特性,功能上类似RDBMS
整个数据库所有记录都存储在同一个key-value大表中,实现上类似BigTable,具有NoSQL的高扩性
优点
1)一个Directory中所有记录的主键都具有相同前缀,在存储到底层key-value大表时,会被分配到相邻的位置,如果数据量不大,会位于同一个节点上,提高了数据访问的局部性,也保证了在一个Directory中 发生的事务都是单机的
2)Directory还实现了从细粒度上对数据进行分区,整个数据库被划分成百万个甚至更多Directory,每个Directory都可以定制自己的复制策略
3)Directory提供了高效的表连接运算方式,在一个Directory中,多张表上的记录按主键排序,交错存储在一起,因此进行表连接运算是无需排序即可在表间进行归并
复制和一致性
Spanner使用Paxos协议在多个副本间同步redo日志,从而保证数据在多个副本上是一致的
2)MemSQL
特点
1,高效率:是一款内存数据库,它通过将数据存储在内存中,执行效率比传统基于磁盘的数据库高30 倍,它优于其他内存数据库,将SQL语句预编译成C++而获得急速的执行效率
2,强大的SQL执行能力:支持全功能的关系型数据库,开发者不必修改现有程序即可获得NoSQL键值存储系统的效率
3, 横向和纵向扩展:MemSQL支持纵向扩展,CPU效率越好效率就越高,而且支持CPU扩展,此外,MemSQL还可以与MySQL节点结合起来处理PB级负载
4,默认支持数据持久性:MemSQL默认支持数据从内存到磁盘/SSD的同步,保证数据的可靠性
5,安装简便:只要30S即可安装并使用MemSQL,兼容MySQL,学习曲线平滑
6,支持JSON格式的数据处理
架构
Aggregator:存储元数据,负责分发SQL给Leaf,然后综合Leaf的查询结果
可以有多个Aggregator节点,但是有一个为主Aggregator
主Aggregator可以执行DDL和负责Leaf的auto-failover
Leaf:存储真正的数据,数据通过主键hash存储到各Leaf节点,Leaf之间数据均匀分布,不会倾斜
通过参照表实现Aggregator到Leaf节点同步数据,分布表存储在每个Leaf节点,用来存储数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值