版本发布
注意!
实验特性(Experimental)是某特定版本中存在但未正式发布的特性,会在未事先通知的情况下发生语法或实现上的变化或直接删除,请慎用。
4.8.2 发布介绍
特性发布
- MatrixGate 升级:
- 支持针对数据写入的全流程观测,用于调试 MatrixGate 到 Segment 的传输性能(文档)
- 支持热更新 MatrixGate 日志级别(文档)
- [实验特性]提供 --source 参数中所有数据源(http / stdin / kafka / transfer / grpc)类型下的 JSON 格式数据的解析及映射支持(文档)
- [实验特性]--dml-template 参数支持对接 TEXT / CSV 格式的数据(文档)
- Master 手动切换到 Standby 后,向 MatrixGate 写入的指标信息会切换为写入 Standby
- 当停止一个未进行写入数据操作的事务时,速度大幅增加
- mxshift 功能增强(文档):
- 以数据库为单位,实现对数据表 DDL 的迁移,并且可选择是否只迁移 DDL
- [实验特性]支持将数据表 DDL 导出到文件
- [实验特性]支持数据表 DDL 文件直接导入或修改后并发导入数据库
- 图形化界面升级:
- 监控增强:
- 允许自定义监控脚本:支持用户在通过 mxmgr_init_local() 或 mxmgr_init_exporter() 部署 Grafana / Prometheus 监控时,通过修改监控脚本,自行开发监控项目(文档)
错误修复
- 存储引擎:
- 修复了 MARS2 存储引擎在处理文本类型排序键时内存错误的问题
- 修复 AOCO 存储引擎压缩导致内存错误的问题
- 修复了存储诊断工具 datainspect 出现错误崩溃的问题
- 修复 MARS2 存储引擎 xid 溢出的问题
- Cylinder:
- 修复了滑动窗口无法触发的错误
- 修复了一定概率下,扩容重分布数据后 APM/TBS/SV 指令无法触发的错误
- MatrixGate:
- 修复了 YMatrix 重启或恢复时,MatrixGate 中某些正在插入数据库的 HTTP 请求无法响应的问题
- 修复了当用户对目标表进行 DROP 或 ALERT 后,仍向 MatrixGate 发送此表的数据引起 MatrixGate 写入队列阻塞,导致其他事务的入数被卡住的问题
- 修复了 MatrixGate 在解析 "1,2,3" 类似错误 JSON 数据时,没有报错的问题
- MatrixManager:
- 修复了 mxstat 重启失败的问题
- 修复 mxstat 在进程退出时偶发崩溃的问题
- 查询引擎:
- 修复了 direct dispatch 模式下客户端编码设置错误的问题
- 修复了 COPY 语句处理非法选项错误的问题
4.8.1 发布介绍
特性发布
错误修复
- 存储引擎:
- MARS2 表参与 nestloop join 时,由于索引扫描参数传递不全导致结果错误
- 资源组:
- 修复资源组在处理 SIGTERM 时产生操作崩溃的问题
- 优化器:
- 修复 CTE 由于不支持并行执行产生操作崩溃的问题
- 修复启动 ORCA 时不正确处理子计划计算的错误
- 执行引擎:
- 修复 Share CTE 由于不正确处理 Direct Dispatch 产生操作卡死的问题
4.8.0 发布介绍
特性发布
- MatrixGate 升级:
- 图形化界面新增:
- mxbackup 支持 S3 对象存储插件,将数据上传到 S3 对象存储(文档)
- mxshift 功能增强(文档)
- 新增日志采集及打包工具 mxpacklogs(文档)
- Ubuntu20 平台支持(文档)
- Grafana 监控项增强(文档)
错误修复
- 优化器:
- 修复 nestloop join 参数化路径计划中处理重复扫描产生的错误
4.7.5 发布介绍
错误修复
- MatrixManager:
- 修复获取慢查询 SQL 实际执行时间不精确问题
4.7.4 发布介绍
错误修复
- 优化器:
- 修复查询计划中 Redistribution Motion 的分布键包含 Param 时的错误
4.7.3 发布介绍
错误修复
- 存储引擎:
- 修复镜像节点中的 MARS2 表处理 vacuum 时没有完全删除所需文件的问题
4.7.2 发布介绍
错误修复
- 优化器:
- 修复 Redistribution Motion 执行时涉及常量值的错误问题
4.7.1 发布介绍
错误修复
- MatrixManager:
- 修复 mxstat 错误保留快照时产生操作崩溃的问题
4.7.0 发布介绍
特性发布
错误修复
- 执行引擎:
- 修复 Copy 没有正确处理 Interrupt 导致操作卡死的问题
- 修复创建大量分区表时的内存溢出问题
- 存储引擎:
- 修复 Master Only AOCS 表对应 relsize 估计不准问题
- 工具:
- 修复 Analyze 没有正确处理特殊字符的问题
- 优化器:
- 修复 Recursive CTE 在 Merge Join 下产生错误查询计划的问题
4.6.1 发布介绍
- MatrixGate 升级:
- 对于 Kafka 接入的 JSON 数据, 支持使用 dml-template 参数自定义 JSON 至数据列的映射关系
- 新增 Kafka 身份认证机制。使用 SASL框架,目前支持 SCRAM 验证
- 修复已知错误
4.6.0 发布介绍
- MARS2 存储引擎聚集查询性能大幅优化
- 图形化界面全面升级:
- MatrixGate 升级:
- Grafana 监控页面升级,支持 Prometheus 数据监控(文档)
- 国产化平台支持:银河麒麟 V10 操作系统 + ARM 平台支持
- 修复已知错误
4.5.0 发布介绍
- MARS2 存储引擎隆重发布,UPSERT 场景优化显著,并且后台自动压缩,省去了转表过程(文档)
- 新增查询统计组件,可以用来统计查询使用时间和资源消耗(文档)
- MatrixGate 升级(文档):
- 支持任意列 timestamp 转换;
- 新增 watch 功能,可以查看 MatrixGate 写入数据的实时以及历史指标信息;
- UPSERT 支持 boolean 类型。
- mxbench 升级,用户可以灵活配置指标类型、采集频率、空值率、随机度等(文档)
- 新增滑动窗口流计算,流数据的实时分析与监控,并支持订阅发布(文档)
- Kubernetes 支持,可以在 k8s 上部署 MatrixDB 集群(文档)
4.4.0 发布介绍
- MatrixGate 升级(文档)
- UPSERT 支持去重
- 新增
--insert-timeout
和--request-timeout
参数来控制超时,防止高负载场景因资源耗尽导致雪崩
- Kafka 数据接入流程重新设计,支持 CSV 和 JSON 两种数据格式和映射关系设置(文档)
- 自动分区管理页面升级(文档)
INSERT INTO SELECT
语句支持并行扫描- Grafana 监控页面升级,监控面板拆分为系统面板和数据库面板,并增加了中文描述(文档)
- PXF 升级到 6.2.1,在大量小文件场景吞吐率有 2~5 倍提高
4.3.10 发布介绍
4.3.10 修复了如下错误:
- segment crash 后 mirror 无法启动的问题
- 特定情况下 UDF 访问 catalog 导致 QD crash 的问题
- PXF 访问 Hive ORC 添加 filter crash 的问题
4.3.0 发布介绍
- 持续聚集隆重上线
- 持续聚集通过物化视图实时同步源表数据并做排序归并,使聚集查询更高效(参考文档)
- 空间数据类型支持
- 开发了增强版的 PostGIS 组件,可以完美支持空间数据类型的存储和计算(参考文档)
- MatrixGate升级
- 可视化数据表上线
- 管理页面里新增了可视化数据表版块,可以方便查看集群数据库与表的状态(参考文档)
- 自动分区图形化管理
- 分区表可以通过图形化界面设置模板和自动化分区管理策略(参考文档)
- MARS 存储引擎升级
- tag_id 支持数据类型在整型基础上新增了 text,varchar,name,numeric;并且支持多分组键,即用多个列作为 tag_id
- MARS 存储引擎支持 merge scan 操作,可以通过合并方式来对已有数据做更新
4.2.0 发布介绍
- MARS 引擎再优化
- 智能压缩算法上线,根据数据类型和特征判断是否启用压缩。使用新编码压缩后,存储占用空间下降 70%。
- 查询性能提升,基于时间戳排序的特定查询,时延下降千倍,从秒级降到“毫秒级”。
- 查询内存使用量大大的降低,
SELECT
语句,内存使用率下降 90%。
- MatrixGate 支持 UPSERT,适用于如下场景(使用方法请参考文档):
- 设备可能重复发送数据或更正错误时序数据
- 不同类别的指标数据分批发送,实现自动合并
- 冷热分级转换支持归并压缩:为方便用户在分区表做热转冷的数据转换,可以将多个分区表合并到一起。一来能降低分区管理的压力,也利于 DBA 进行维护。使用方法请参考文档
- 并行备份恢复“工具”首度公开亮相:YMatrix Database 隆重推出 mxbackup 和 mxrestore 两大工具,相比继承自 PostgreSQL 的 pg_dump 和 pg_restore,支持并行处理,备份恢复效率更高。使用方法请参考文档
4.1.0 发布介绍
- 新增 mxkv 用户自定义数据类型做 kv 存储,方便扩展附加字段,相比 JSON 类型性能更好
- 支持 Kafka 数据接入和图形化操作界面
- 提供分区自动化管理函数。用户可以自定义分区策略,后台进程自动完成分区管理
4.0.3 发布介绍
- 增加多机安装可视化部署
- 修复 MARS 增加分区的错误
4.0.2 发布介绍
- MARS 压缩默认启用
- 升级后 supervisor.conf 平滑过渡
- gapfill 并行优化
4.0.1 发布介绍
- 修复 build_timeseries_table 时未对列名做转义的错误
- MARS 引擎优化
4.0.0 发布介绍
YMatrix Database 4.0.0 已正式发布,新版包括如下新特性:
- MARS 引擎
MARS 引擎是自研的存储引擎。该引擎包含如下特性:
- 列式存储
- 数据编码和压缩
- 聚集下推优化
- 无索引扫描的优化
在时序场景中,适合存储历史冷数据,基于时间戳的聚集查询性能极高。
MARS 目前只支持插入,不支持更新和删除。
- 多节点自动化部署
在 YMatrix Database 3系统单节点自动化部署的基础上,实现了多节点自动化部署。包括:
- 添加集群节点
- 配置每个节点 Segment 数量
- 配置是否启用数据自动镜像
只用不到 5 分钟,即可部署好一个集群。
具体使用方法请参考YMatrix Database 4集群部署。
- 冷热分级存储 UDF 为方便用户为时序表建立分区、维护分区表、冷热数据转换,实现了关于创建分区模板、建立分区、替换冷热分区的一整套管理接口。
具体使用方法请参考冷热分级存储。
- time_bucket_gapfill 时序组件 MatrixTS 中,在 time_bucket 函数基础上,增加了 time_bucket_gapfill 函数。可以为缺失的时间间隔按照规则填充。
目前支持两种填充规则:
- locf:用聚合组中之前出现的值填充
- interpolate:对缺失的值做线性插值填充