NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Cockroach DB 1.0 发布

  • 2017-06-08
  • 本文字数:1053 字

    阅读完需:约 3 分钟

分布式 SQL 数据库 Cockroach DB 遵循软件产品以动物命名的模式。近日,该数据库的第一个生产就绪版本 1.0 发布。

许多人将 Cockroach DB 视为 Google Spanner 的开源版本。后者是一个强一致性、横向可扩展的 RDBMS,它起初是一个服务于谷歌服务的内部项目,近日加入了谷歌云。和 NuoDB 一样,这些数据库都致力于解决同样的问题,那个 NoSQL 数据库在过去十年中设法从不同角度解决的问题。高可用性、线性可扩展性、强一致性、运行中复制技术以及快速响应和呈指数增长的数据集,所有这些问题都是数据库供应商数十年来致力于解决的问题。

NoSQL 供应商采用的一种方法是放松关系型数据库强加的部分约束,一致性、可用性或分区容错性,就像 CAP 理论所描述的那样。SQL 支持即使存在,大多数时候也是受限的。

另一方面,有时称为“NewSQL”数据库的方法是从头设计一种完全兼容 SQL 的数据库系统,并且仍然设法满足上述所有需求。

构建分布式数据库的其中一个最大的挑战是事件顺序。一个事务中的有序操作可以确保读取者和写入者有一致的数据视图。

根据谷歌发表的论文,Google Spanner 使用了 TrueTime 概念中的 GPS 和原子钟在几毫秒内实现不同节点之间的同步。Cockroach 的全局排序方法使用了他们在博客中描述的混合逻辑时钟。据称,两种方法都违背了CAP 理论的定律,就是在一个分布式系统中,我们无法通过稍微不同的实现同时保证一致性、高可用性和分区容错性。

Cockroach 的第一个生产就绪版本还提供了零宕机(在线)模式修改、次级索引和外键支持。在提供高可用性的同时,Cockroach 还重点强调了一致性,使用每个数据集三个或三个以上的活动副本,所有这些副本都可以同时读 / 写。除了增加高可用性外,地理上分散的客户端可以连接到最近的服务器进行写入,确保每个客户端的状态在全球范围内都是一致的,在这种情况下,该“多活可用性”模型也很有用。Cockroach 的其中一个客户是一家大型游戏公司,他们正积极地在生产环境中使用这项特性。Cockroach 的主要客户还包括百度,他们积极地用它处理每秒23000 多次的写入操作。

Cockroach DB 的一大卖点是,它不需要重写 MVC 代码或者使用一些中间层翻译 ORM 和数据库查询,因为它提供了面向许多流行框架(如 Ruby on Rails、Hibernate、Python 和 Node 的 Sequelize)的连接器及示例代码 GitHub 上提供了详细的架构图,企业客户可以获得商业支持。复杂 SQL 联合查询还不够优化,它的名字也让许多用户心情复杂,但这没有阻止Cockroach 于月初在红点创投领投的B 轮融资中获得了2700 万美元。

查看英文原文 Cockroach DB Reaches 1.0

2017-06-08 19:001969
用户头像

发布了 1008 篇内容, 共 374.2 次阅读, 收获喜欢 341 次。

关注

评论

发布
暂无评论
发现更多内容

MyBatis3源码解析(4)参数解析

Java mybatis

Linux系统编程-进程间通信(共享内存)

DS小龙哥

Linux 共享内存 2月月更

设计模式【15】--从审批流中学习责任链模式

秦怀杂货店

Java 设计模式

MyBatis3源码解析(3)查询语句执行

Java mybatis

MyBatis3源码解析(6)TypeHandler使用

Java mybatis

MyBatis3源码解析(8)MyBatis与Spring的结合

Java mybatis

AI生明月,万里共文心

脑极体

MyBatis Demo 编写(1)基础功能搭建

Java mybatis

Mybatis3 源码解析系列

Java mybatis

MyBatis3源码解析(7)TypeHandler注册与获取

Java mybatis

MyBatis Demo 编写(2)结果映射转换处理

Java mybatis

人人都是 Serverless 架构师 | 弹幕应用开发实战

阿里巴巴云原生

阿里云 Serverless 架构 云原生

服务网格 ASM 年终总结:最终用户如何使用服务网格?

阿里巴巴云原生

阿里云 云原生 服务网格 容器服务

MyBatis3源码解析(5)查询结果处理

Java mybatis

MySQL RC事务隔离级别的实现

JavaEdge

2月月更

Apache RocketMQ + Hudi 快速构建 Lakehouse

阿里巴巴云原生

阿里云 开源 云原生 消息队列

云原生年度技术盘点出炉!乘风破浪正当时

阿里巴巴云原生

阿里云 云原生 年度盘点

创新推出 | Serverless 调试大杀器:端云联调

阿里巴巴云原生

阿里云 Serverless 云原生 端云联调

独家交付秘籍之招式拆解(第一回)

阿里巴巴云原生

阿里云 云原生 应用交付

SchedulerX 如何帮助用户解决分布式任务调度难题?

阿里巴巴云原生

阿里云 云原生 公有云 SchedulerX

如何实现一个人管理1000个主播?

优秀

低代码 直播带货, 主播

MyBatis3源码解析(2)数据库连接

Java mybatis

Spring Boot Serverless 实战系列 | 性能调优

阿里巴巴云原生

spring 阿里云 Serverless 云原生 框架

【架构师训练营】模块七作业

樰巳-堕~Horry

架构实战营 「架构实战营」

一个cpp协程库的前世今生(二十六)共享栈

SkyFire

c++ cocpp

如何做“健康码”的性能压测

阿里巴巴云原生

云原生 压测 健康码

Go 语言入门很简单:基准测试

宇宙之一粟

Go 语言 2月月更

网络安全之小程序抓包渗透测试流程

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

性能分析之用户登录TPS低以及CPU被打满问题分析

zuozewei

性能分析 2月月更

《MySQL入门很轻松》第4章:数据表的创建修改删除

乌龟哥哥

数据库 2月月更

年度盘点|2021 年阿里云可观测实践回顾

阿里巴巴云原生

阿里云 云原生 可观测 Arms Arms 告警运维中心

Cockroach DB 1.0发布_数据库_Alex Giamas_InfoQ精选文章