写点什么

MatrixOne 0.6.0 :首个云原生架构的 HTAP 数据库发布!

作者:MatrixOrigin
  • 2022-12-13
    上海
  • 本文字数:1752 字

    阅读完需:约 6 分钟

MatrixOne 0.6.0 :首个云原生架构的HTAP数据库发布!


MatrixOne 0.6 版本正式发布啦!

项目文档网站

https://docs.matrixorigin.io/0.6.0/


重点关注:业界领先的分布式云原生 HTAP 架构

MatrixOne 在 0.6 迭代中完成了云原生化的全面升级,经过四个月全力以赴的紧张研发,MatrixOne 已经完成了单机 HTAP 到分布式云原生 HTAP 的进化,成为了全球第一款同时具备存算分离、读写分离、冷热分离、事务和分析能力分离、并拥有完整功能和极致灵活扩展能力的云原生 HTAP 数据库。

MatrixOne 将资源管理,集群管理,计算,存储,事务全部组件化,将过去耦合在一起的数据库功能彻底解耦,同时采用了部分业内先进成熟的云原生组件,以保证各模块的稳定可靠。

MatrixOne 分布式 HTAP 架构

分布式云原生 HTAP 架构

  • 在资源管理上:我们直接采用成熟的 K8s 的容器化管理方案,MatrixOne 整体集群资源由 K8s 进行分配管理与调度。

  • 在集群管理上:我们实现了一套基于 Raft 的 HA Keeper 组件,用来保障集群各节点的可用性。

  • 在存储接口上:我们实现了一套 File service 组件,对底层可以兼容本地磁盘、S3、NFS 等,未来可进一步扩展兼容 HDFS,对上层可以屏蔽不同存储方案的差异,本迭代也根据 S3 的读写特点对数据库进行了相应的适配。

  • 在事务处理及计算上:我们都实现了完全的 serverless 化,计算层可以做到完全无状态的海量扩展,同时做到了读写分离、存算分离以及负载隔离。

  • 在共享日志上:我们自研了一套 Log service 组件,基于 Multi-Raft 机制构建了一套高可靠的存储状态机,使得该组件可以成为整个集群最核心的可靠性和状态的保障。

MatrixOne 的 0.6 版本也已经在 AWS 上进行了完整的公有云技术架构验证,敬请期待 MO 正式的公有云服务。


用户功能补齐和优化

MatrixOne0.6 版本在功能丰富度上也得到了大幅提升,增加了很多用户高频使用的功能,目前已经可以在大部分中小型应用的业务系统中试用。

  • 支持 Snapshot Isolation 隔离级别的分布式乐观事务。

  • 增加了 TEXT、BLOB、TIME、JSON 数据类型。

  • 支持 JDBC、Python、Go 语言连接,及 Java ORM(MyBatis, MyBatisPlus, Spring JPA)、Python ORM(Sqlalchemy)连接 MatrixOne。

  • 支持从云端及本地 S3 组件中导入数据,支持 CSV 及 JSON 格式。

  • 支持通过 modump 工具导出及备份数据。

  • 增加了复合主键,唯一键 Unique Key 约束,全局自增列 Auto Increment。

  • 增加了 system_metrics 系统监控指标库监控数据库运行状态。

  • 增加了 system 系统库记录日志及 SQL 操作以帮助运维及审计。

  • 增加了视图 VIEW 功能。

  • 内置多租户,User 及 Role 权限管理功能。

其他新 Feature

  • 增加对时区 timezone 的支持。

  • 支持 TLS 加密传输。

  • 支持预编译语句 PREPARE、EXECUTE、 DEALLOCATE。

  • 支持 Explain Analyze 详细查询计划分析。

  • 支持 UNION/ UNION ALL/ INTERSECT/ MINUS 操作符。

  • 支持 CREATE TEMPORARY TABLE 临时表。

  • 支持 CREATE EXTERNAL TABLE 外部表。

  • 增加了分区 Partition by 能力。

  • 支持权限管控相关的 CREATE/GRANT/SET ROLE/REVOKE 等操作。

  • 增加了大量系统配置参数,函数及系统表以保持对 MySQL 的兼容。

  • 增加大量 Datetime 类型函数。

  • 增加 UUID 函数。

  • 支持位操作符 &, |, ^, ~, <<, >>。

  • 支持 DDL 中带 comment 功能。

  • 支持 SET 自定义变量功能。

Known Issues

  • 0.6 版本的存储数据格式与以前版本不兼容,无法直接升级。

  • 在点查与并发等典型 OLTP 操作的性能上未做优化。

  • 复合主键、唯一键、次级索引尚未实现查询加速 #6028。

  • Insert/Update into select 超过 100MB 数据在分布式环境下可能失败 #6780。

  • 持续循环 Load 数据会出现内存不足问题 #6793。

  • 分布式环境中会出现 Data Race 问题 #6855,#6926。

  • 后台任务会有较低概率与用户正在执行的事务产生读写冲突,从而终止用户事务 #6049。

  • 写入二进制文件到 BLOB 中可能出现失败 #6302。

文档更新

  • 0.6 版本的文档内容已经从 MatrixOne 主库迁移,所有文档都会在http://matrixorigin.iohttp://matrixorigin.io.cn中更新。

  • 增加新版本 MatrixOne 的功能清单。

  • 增加 Java 及 Python 的 connector 及 ORM 工具连接 MatrixOne 的说明。

  • 增加 Java 及 Python 使用 MatrixOne 创建 CRUD demo 应用的教程。

  • 增加分布式部署安装的流程说明。

  • 增加导入,导出及备份还原的流程说明。

  • 增加多租户及权限管理体系的概念及使用说明。

  • 增加视图、外表、临时表、时区等新对象的介绍与使用说明。

  • 增加新增数据类型、函数及 SQL 语句的说明。

  • 更新 MatrixOne 的系统库表的释义列表。

  • 更新与 MySQL 兼容性说明的列表。

  • 试用 Playground 已下线,MatrixOne 将在近期内推出公有云的公测版本。

发布于: 刚刚阅读数: 4
用户头像

MatrixOrigin

关注

还未添加个人签名 2021-12-06 加入

一个以技术创新和用户价值为核心的基础软件技术公司。

评论

发布
暂无评论
MatrixOne 0.6.0 :首个云原生架构的HTAP数据库发布!_分布式数据库_MatrixOrigin_InfoQ写作社区