云腾数据库是一个高性能的云原生分布式SQL数据库,旨在支持所有后greSQL功能。它最适合云原生 OLTP(即实时、业务关键型)应用程序,这些应用程序需要绝对的数据正确性,并且至少需要以下一项:可伸缩性、对故障的高容忍度或全局分布式部署。
强大的研发人员管理系统功能YUGABYTE SQL(简称YSQL)重用了后greSQL的查询层(类似于亚马逊极光后浏览器),从而支持其大多数功能(数据类型,查询,表达式,运算符和函数,存储过程,触发器,扩展等)。以下是YSQL当前支持的功能的详细列表。
分布式事务交易设计基于谷歌扳手架构。通过使用 Raft 共识进行复制和使用混合逻辑时钟的集群范围的分布式 ACID 事务,可以实现写入的强一致性。支持快照、可序列化和读取已提交隔离级别。默认情况下,读取(查询)具有很强的一致性,但可以动态调整为从关注者和只读副本读取。
持续可用性YugabyteDB 通过本机故障转移和修复对常见中断具有极强的弹性。YugabyteDB 可以配置为自动容忍磁盘、节点、区域、区域和云故障。对于在公有云上的多个区域中跨多个区域部署 YugabyteDB 群集的典型部署,RPO 为 0(表示发生故障时不会丢失任何数据),RTO 为 3 秒(表示故障节点提供的数据在 3 秒内可用)。
水平可扩展性扩展 YugabyteDB 集群以实现更多 IOPS 或数据存储就像向集群添加节点一样简单。
异地分布式、多云YugabyteDB可以部署在公共云中,也可以在库伯内特斯内部进行本地部署。它支持跨三个或更多容错域的部署,例如多区域、多区域和多云部署。它还支持 xCluster 异步复制,具有可在双区域部署中使用的单向主-从和双向多主配置。为了以低延迟提供(陈旧)数据,只读副本也是一项受支持的功能。
多接口设计汤字节数据库的查询层是为可扩展而构建的。目前,百兆字节数据库支持两个分布式 SQL API:百兆字节 SQL (YSQL),一个完全关系的 API,它重用 PostgreSQL 的查询层,以及尤加字节云 QL (YCQL),一个半关系型 SQL 类 API,具有文档/索引支持,具有 Apache 卡桑德拉 QL 根。
100%开源汤字节数据库在 Apache 2.0许可证下是完全开源的。开源版本具有强大的企业功能,例如分布式备份,静态数据加密,动态TLS加密,更改数据捕获,只读副本等。
在我们的常见问题解答中阅读有关YugabyteDB的更多信息。
找不到你要找的内容?有问题吗?请在我们的社区休闲或论坛上发布你的问题或意见。
汤字节数据库支持多种语言和客户端驱动程序,包括 Java、Go、NodeJS、蟒蛇等。有关完整列表(包括示例),请参阅驱动程序和 ORM。
本部分最后更新于 2022 年 3 月。
以下是即将发布的版本的一些关键功能列表(YugabyteDB v2.13预览版已于2022年3月发布,v2.12稳定版本于2022年2月发布)。
特征 | 地位 | 发布目标 | 进展 | 评论 |
---|---|---|---|---|
在百字节数据库中更快地加载大容量数据 | 进展 | 版本2.15 | 跟踪 | 主问题,用于跟踪改进,以便更轻松、更快速地将大量数据导入 YugabyteDB。 |
具有表组的数据库级多租户 | 进展 | 版本2.15 | 跟踪 | 使用表组跟踪数据库级多租户的主问题。 |
升级到后格雷SQL v13 | 进展 | 版本2.15 | 跟踪 | 有关最新功能、新的 PostgreSQL 扩展、性能和社区修复 |
支持群集内 PITR | 进展 | 版本2.15 | 跟踪 | 跨 DDL 和 DML 更改将 YSQL 数据库的时间点恢复到固定时间点 |
默认情况下启用自动平板电脑拆分 | 进展 | 版本2.15 | 跟踪 | 允许在运行时更改平板电脑(即数据拆分)的数量。 |
YSQL 表统计和基于成本的优化器 (CBO) | 进展 | 版本2.15 | 跟踪 | 提高 YSQL 查询性能 |
YSQL 功能支持 - 更改表 | 进展 | 版本2.15 | 跟踪 | 支持各种变体ALTER TABLE |
在线模式迁移 | 进展 | 版本2.15 | 跟踪 | 架构迁移(包括 DDL 操作)将与前台操作同时安全运行 |
悲观锁定设计 | 进展 | 版本2.15 | 跟踪 | |
使共置表 成为 YSQL 的默认值 |
规划 | 跟踪 | ||
支持异步 x 群集复制中的事务 | 规划 | 跟踪 | 在使用者群集上以原子方式应用事务。 | |
支持 GiST 索引 | 规划 | 跟踪 | 支持基于 GiST(广义搜索树)的索引 |
特征 | 地位 | 发布目标 | 文档/增强功能 | 评论 |
---|---|---|---|---|
变更数据捕获 | 版本2.13 | 更改数据捕获 (CDC) 允许多个下游应用和服务使用对 Yugabyte 数据库的连续且永无止境的更改流 | ||
支持实例化视图 | 版本2.13 | 文档 | 实例化视图是从查询规范派生并存储以供以后使用的预先计算的数据集 | |
对事务状态表的异地分区支持 | 版本2.13 | 文档 | 它现在针对来自不同区域的访问进行了优化,而不是中央远程事务执行 metatda。由于事务元数据也是异地分区的,因此无需往返于远程区域来更新事务状态。 | |
透明地重新启动事务 | 版本2.13 | 减少在各种情况下看到的事务重启错误的发生率 | ||
行级地理分区 | 版本2.13 | 文档 | 行级地理分区允许对将用户表中的数据(在每行级别)固定到地理位置进行精细控制,从而允许在表行级别管理数据驻留。 | |
支持杜松子油指数 |
版本2.11 | 文档 | 支持容器数据类型(如 jsonb、向量和数组)的通用倒排索引 | |
排序规则支持 | 版本2.11 | 文档 | 允许指定每列数据的排序顺序和字符分类行为,甚至根据语言和国家/地区特定的规则指定每个操作 | |
保存点支持 | 版本2.11 | 文档 | 可用于在多语句事务中实现复杂的错误恢复 | |
通过平台进行集群复制管理 | 版本2.11 | 文档 | ||
弹簧数据 YugabyteDB 模块 | 版本2.9 | 跟踪 | 通过熟悉和轻松使用Spring数据API来弥合学习分布式SQL概念的差距 | |
支持液基、飞行路线、ORM 架构迁移 | 版本2.9 | 文档 | ||
支持更改表添加主键 |
版本2.9 | 跟踪 | ||
支持 | 版本2.8 | 文档 | 支持在 YCQL 接口中进行 LDAP 身份验证 | |
平台警报和通知 | 版本2.8 | 文档 | 为了实时获取有关数据库警报的通知,用户定义的警报策略会在性能指标高于或低于你设置的阈值时通知你。 | |
平台接口 | 版本2.8 | 文档 | 使用基础架构即代码安全地部署 YugabyteDB 集群 |
在我们的文档中查看详细的体系结构。
作为一个专注于用户社区的开源项目,我们欢迎GitHub拉取请求的贡献。请参阅我们的投稿人指南以开始使用。功能的讨论和 RFC 发生在我们论坛的设计讨论部分。
此存储库中的源代码根据 Apache 许可证 2.0 和 Polyform 免费试用许可证 1.0.0 获得不同的许可。可以在许可证目录中找到每个许可证的副本。
该生成生成两组二进制文件:
-managed
默认情况下,构建选项仅生成 Apache 许可证 2.0 二进制文件。