NewSQL 介绍

一、CAP:

CAP原理:
• Consistency(一致性): 数据一致更新,全部数据变更都是同步的
• Availability(可用性): 好的响应性能
• Partition tolerance(分区耐受性): 可靠性数据库

上面的解释可能显得太过抽象,举例来讲在高可用的网站架构中,对于数据基础提出了如下的要求:
• 分区耐受性
保证数据可持久存储,在各类状况下都不会出现数据丢失的问题。为了实现数据的持久性,不但须要在写入的时候保证数据可以持久存储,还须要可以将数据备份一个或多个副本,存放在不一样的物理设备上,防止某个存储设备发生故障时,数据不会丢失。
• 数据一致性
在数据有多份副本的状况下,若是网络、服务器、软件出现了故障,会致使部分副本写入失败。这就形成了多个副本之间的数据不一致,数据内容冲突。
• 数据可用性
多个副本分别存储于不一样的物理设备的状况下,若是某个设备损坏,就须要从另外一个数据存储设备上访问数据。若是这个过程不能很快完成,或者在完成的过程当中须要中止终端用户访问数据,那么在切换存储设备的这段时间内,数据就是不可访问的。服务器

CAP原理认为,一个提供数据服务的存储系统没法同时完美的知足一致性(Consistency)、数据可用性(Availability)、分区耐受性(Partition Tolerance)这三个条件网络


二、关系型数据库和非关系型数据库

2.一、关系型数据库(MySQL、PostgreSQL等)问题:
知足CP,但A不完美
2.二、非关系型数据库(Redis、MongoDB、HBase等)问题:
知足AP,但C不完美架构


三、NewSQL

能够同时知足CAP性能

理想下能作到:网站

支持标准SQL
水平扩容,自动容灾
库表权限控制(读写分离)
资源限额
资源

 

详细可见NewSQL对比,开源主要由TiDB和CockroachDB同步

相关文章
相关标签/搜索