MatrixOne 0.6版本正式发布啦!
项目文档网站:https://docs.matrixorigin.io/...
重点关注:业界领先的分布式云原生HTAP架构
MatrixOne在0.6迭代中完成了云原生化的全面升级,经过四个月全力以赴的紧张研发,MatrixOne已经完成了单机HTAP到分布式云原生HTAP的进化,成为了全球第一款同时具备存算分离、读写分离、冷热分离、事务和分析能力分离、并拥有完整功能和极致灵活扩展能力的云原生HTAP数据库。
MatrixOne将资源管理,集群管理,计算,存储,事务全部组件化,将过去耦合在一起的数据库功能彻底解耦,同时采用了部分业内先进成熟的云原生组件,以保证各模块的稳定可靠。
分布式云原生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.io及http://matrixorigin.io.cn中更新。
- 增加新版本MatrixOne的功能清单。
- 增加Java及Python的connector及ORM工具连接MatrixOne的说明。
- 增加Java及Python使用MatrixOne创建CRUD demo应用的教程。
- 增加分布式部署安装的流程说明。
- 增加导入,导出及备份还原的流程说明。
- 增加多租户及权限管理体系的概念及使用说明。
- 增加视图、外表、临时表、时区等新对象的介绍与使用说明。
- 增加新增数据类型、函数及SQL语句的说明。
- 更新MatrixOne的系统库表的释义列表。
- 更新与MySQL兼容性说明的列表。
- 试用Playground已下线,MatrixOne将在近期内推出公有云的公测版本。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。