NewSQL

NewSQL是一类关系数据库,它寻求为線上交易處理(OLTP)工作提供NoSQL系统的可扩展性,同时维护传统数据库系统的ACID保证。

许多处理重要数据的企业系统(例如,财务和订单处理系统)对于常规的关系数据库而言太大了,但是具有事务性和一致性要求,这对于NoSQL系统是不切实际的。 这些组织以前可用的唯一选择是购买功能更强大的计算机,或开发可通过常规DBMS分发请求的定制中间件。这两种方法都具有高成本或高开发成本的特点。NewSQL系统试图解决这方面的冲突。

历史
451集团分析师Matthew Aslett在2011年的一篇研究论文中首次使用了这个词,论文讨论了新一代数据库管理系统的兴起。

应用
典型应用的特点是OLTP事务量大。OLTP事务具有:

  • 短期(即没有用户交互)
  • 每个事务都接触少量的数据
  • 使用索引查找(无表扫描)
  • 表单数量少(使用不同参数的少量查询)。

不过,有些支持(HTAP)应用。这些系统通过省略重量级或并发控制来提高性能和可扩展性。典型newsql数据库如TiDB。

功能
NewSQL数据库解决方案的两个共同特点是,它们支持NoSQL数据库的在线可扩展性和以SQL为主要接口的关系数据模型(包括ACID一致性)。

NewSQL系统可以大致分为三类:

新架构
NewSQL系统采用多种内部架构。一些系统采用节点的集群,其中每个节点管理数据的子集。它们包括一些组件,比如分布式查询并发控制、流控制和分布式查询处理。

SQL引擎
第二类是针对SQL优化的存储引擎。这些系统提供了与SQL相同的编程接口,但比内置引擎更具可伸缩性。

透明切片
这些系统使用Raft或Paxos一致性算法在多个节点上自动分割数据库。

参见

  • SQL
  • NoSQL
  • 事务处理

*

参考文献

评论 (0)

  • 还没有评论,来抢沙发吧。