版本发布

注意!
实验特性(Experimental)是某特定版本中存在但未正式发布的特性,会在未事先通知的情况下发生语法或实现上的变化或直接删除,请慎用。

4.8.2 发布介绍


特性发布

  1. MatrixGate 升级:
    • 支持针对数据写入的全流程观测,用于调试 MatrixGate 到 Segment 的传输性能(文档
    • 支持热更新 MatrixGate 日志级别(文档
    • [实验特性]提供 --source 参数中所有数据源(http / stdin / kafka / transfer / grpc)类型下的 JSON 格式数据的解析及映射支持(文档
    • [实验特性]--dml-template 参数支持对接 TEXT / CSV 格式的数据(文档
    • Master 手动切换到 Standby 后,向 MatrixGate 写入的指标信息会切换为写入 Standby
    • 当停止一个未进行写入数据操作的事务时,速度大幅增加
  2. mxshift 功能增强(文档):
    • 以数据库为单位,实现对数据表 DDL 的迁移,并且可选择是否只迁移 DDL
    • [实验特性]支持将数据表 DDL 导出到文件
    • [实验特性]支持数据表 DDL 文件直接导入或修改后并发导入数据库
  3. 图形化界面升级:
    • 部署页面全新升级,步骤更加简单(文档)
    • 扩容页面全新升级,步骤更加轻便(文档)
    • 增加 Segment 高可用状态检测功能(文档)
    • 健康监测页面升级,优化页面效果(文档
    • 轻松上手文档升级,增加写入测试和查询测试页面(文档
  4. 监控增强:
    • 允许自定义监控脚本:支持用户在通过 mxmgr_init_local() 或 mxmgr_init_exporter() 部署 Grafana / Prometheus 监控时,通过修改监控脚本,自行开发监控项目(文档

错误修复

  1. 存储引擎:
    • 修复了 MARS2 存储引擎在处理文本类型排序键时内存错误的问题
    • 修复 AOCO 存储引擎压缩导致内存错误的问题
    • 修复了存储诊断工具 datainspect 出现错误崩溃的问题
    • 修复 MARS2 存储引擎 xid 溢出的问题
  2. Cylinder:
    • 修复了滑动窗口无法触发的错误
    • 修复了一定概率下,扩容重分布数据后 APM/TBS/SV 指令无法触发的错误
  3. MatrixGate:
    • 修复了 YMatrix 重启或恢复时,MatrixGate 中某些正在插入数据库的 HTTP 请求无法响应的问题
    • 修复了当用户对目标表进行 DROP 或 ALERT 后,仍向 MatrixGate 发送此表的数据引起 MatrixGate 写入队列阻塞,导致其他事务的入数被卡住的问题
    • 修复了 MatrixGate 在解析 "1,2,3" 类似错误 JSON 数据时,没有报错的问题
  4. MatrixManager:
    • 修复了 mxstat 重启失败的问题
    • 修复 mxstat 在进程退出时偶发崩溃的问题
  5. 查询引擎:
    • 修复了 direct dispatch 模式下客户端编码设置错误的问题
    • 修复了 COPY 语句处理非法选项错误的问题

4.8.1 发布介绍


特性发布

  1. 新增存储诊断工具 Datainspect。此工具只适用于 MARS2 表(文档
  2. MatrixGate JAVA SDK 功能增强,写入性能大幅提升(文档
  3. 图形化界面升级:
    • 查询监控页面新增阻塞会话监测功能(文档
    • 集群管理页面全面升级,分为指标视图、实例视图、列表视图三个板块(文档

错误修复

  1. 存储引擎:
    • MARS2 表参与 nestloop join 时,由于索引扫描参数传递不全导致结果错误
  2. 资源组:
    • 修复资源组在处理 SIGTERM 时产生操作崩溃的问题
  3. 优化器:
    • 修复 CTE 由于不支持并行执行产生操作崩溃的问题
    • 修复启动 ORCA 时不正确处理子计划计算的错误
  4. 执行引擎:
    • 修复 Share CTE 由于不正确处理 Direct Dispatch 产生操作卡死的问题

4.8.0 发布介绍


特性发布

  1. MatrixGate 升级:
    • 支持到 Segment 的 ZSTD 压缩数据传输(文档
    • 支持通过集成 JAVA SDK 简化数据写入代码(文档
  2. 图形化界面新增:
    • 健康监测界面,可通过配置邮箱及时收到告警邮件(文档
    • 热升级功能,支持单独升级图形化界面(文档
  3. mxbackup 支持 S3 对象存储插件,将数据上传到 S3 对象存储(文档
  4. mxshift 功能增强(文档
  5. 新增日志采集及打包工具 mxpacklogs(文档
  6. Ubuntu20 平台支持(文档
  7. Grafana 监控项增强(文档

错误修复

  1. 优化器:
    • 修复 nestloop join 参数化路径计划中处理重复扫描产生的错误

4.7.5 发布介绍


错误修复

  1. MatrixManager:
    • 修复获取慢查询 SQL 实际执行时间不精确问题

4.7.4 发布介绍


错误修复

  1. 优化器:
    • 修复查询计划中 Redistribution Motion 的分布键包含 Param 时的错误

4.7.3 发布介绍


错误修复

  1. 存储引擎:
    • 修复镜像节点中的 MARS2 表处理 vacuum 时没有完全删除所需文件的问题

4.7.2 发布介绍


错误修复

  1. 优化器:
    • 修复 Redistribution Motion 执行时涉及常量值的错误问题

4.7.1 发布介绍


错误修复

  1. MatrixManager:
    • 修复 mxstat 错误保留快照时产生操作崩溃的问题

4.7.0 发布介绍


特性发布

  1. 支持 CREATE INDEX CONCURRENTLY 语法(文档
  2. 新增数据迁移工具 mxshift(文档

错误修复

  1. 执行引擎:
    • 修复 Copy 没有正确处理 Interrupt 导致操作卡死的问题
    • 修复创建大量分区表时的内存溢出问题
  2. 存储引擎:
    • 修复 Master Only AOCS 表对应 relsize 估计不准问题
  3. 工具:
    • 修复 Analyze 没有正确处理特殊字符的问题
  4. 优化器:
    • 修复 Recursive CTE 在 Merge Join 下产生错误查询计划的问题

4.6.1 发布介绍


  1. MatrixGate 升级:
    • 对于 Kafka 接入的 JSON 数据, 支持使用 dml-template 参数自定义 JSON 至数据列的映射关系
    • 新增 Kafka 身份认证机制。使用 SASL框架,目前支持 SCRAM 验证
  2. 修复已知错误

4.6.0 发布介绍


  1. MARS2 存储引擎聚集查询性能大幅优化
  2. 图形化界面全面升级:
    • 外观升级,极致视觉体验
    • 增加轻松上手功能,一键体验时序业务场景(文档
    • Kafka 数据流写入支持自动创建 MARS2 表(文档
    • 新增图形化界面扩容(文档
  3. MatrixGate 升级:
    • 新增不停机更新并行写入相关参数的功能(文档
    • 新增不停机更新表结构的功能(文档
    • 迁移模式不再需要大量连续端口
    • 支持在 UDF 内调用
  4. Grafana 监控页面升级,支持 Prometheus 数据监控(文档
  5. 国产化平台支持:银河麒麟 V10 操作系统 + ARM 平台支持
  6. 修复已知错误

4.5.0 发布介绍


  1. MARS2 存储引擎隆重发布,UPSERT 场景优化显著,并且后台自动压缩,省去了转表过程(文档
  2. 新增查询统计组件,可以用来统计查询使用时间和资源消耗(文档
  3. MatrixGate 升级(文档):
    • 支持任意列 timestamp 转换;
    • 新增 watch 功能,可以查看 MatrixGate 写入数据的实时以及历史指标信息;
    • UPSERT 支持 boolean 类型。
  4. mxbench 升级,用户可以灵活配置指标类型、采集频率、空值率、随机度等(文档
  5. 新增滑动窗口流计算,流数据的实时分析与监控,并支持订阅发布(文档
  6. Kubernetes 支持,可以在 k8s 上部署 MatrixDB 集群(文档

4.4.0 发布介绍


  1. MatrixGate 升级(文档
    • UPSERT 支持去重
    • 新增 --insert-timeout--request-timeout 参数来控制超时,防止高负载场景因资源耗尽导致雪崩
  2. Kafka 数据接入流程重新设计,支持 CSV 和 JSON 两种数据格式和映射关系设置(文档
  3. 自动分区管理页面升级(文档
  4. INSERT INTO SELECT 语句支持并行扫描
  5. Grafana 监控页面升级,监控面板拆分为系统面板和数据库面板,并增加了中文描述(文档
  6. PXF 升级到 6.2.1,在大量小文件场景吞吐率有 2~5 倍提高

4.3.10 发布介绍


4.3.10 修复了如下错误:

  1. segment crash 后 mirror 无法启动的问题
  2. 特定情况下 UDF 访问 catalog 导致 QD crash 的问题
  3. PXF 访问 Hive ORC 添加 filter crash 的问题

4.3.0 发布介绍


  1. 持续聚集隆重上线
    • 持续聚集通过物化视图实时同步源表数据并做排序归并,使聚集查询更高效(参考文档
  2. 空间数据类型支持
    • 开发了增强版的 PostGIS 组件,可以完美支持空间数据类型的存储和计算(参考文档
  3. MatrixGate升级
    • 增强数据接入容错机制,单条数据格式错误不会影响所在批次其他数据(参考文档
    • MatrixGate 日志管理,支持自动归档与清理
    • 新增了迁移模式,可以高效同步其他 Greenplum5、Greenplum6、YMatrix Database 集群中的数据表到本集群(参考文档
  4. 可视化数据表上线
    • 管理页面里新增了可视化数据表版块,可以方便查看集群数据库与表的状态(参考文档
  5. 自动分区图形化管理
    • 分区表可以通过图形化界面设置模板和自动化分区管理策略(参考文档
  6. MARS 存储引擎升级
    • tag_id 支持数据类型在整型基础上新增了 text,varchar,name,numeric;并且支持多分组键,即用多个列作为 tag_id
    • MARS 存储引擎支持 merge scan 操作,可以通过合并方式来对已有数据做更新

4.2.0 发布介绍


  1. MARS 引擎再优化
    • 智能压缩算法上线,根据数据类型和特征判断是否启用压缩。使用新编码压缩后,存储占用空间下降 70%。
    • 查询性能提升,基于时间戳排序的特定查询,时延下降千倍,从秒级降到“毫秒级”。
    • 查询内存使用量大大的降低,SELECT 语句,内存使用率下降 90%。
  2. MatrixGate 支持 UPSERT,适用于如下场景(使用方法请参考文档):
    • 设备可能重复发送数据或更正错误时序数据
    • 不同类别的指标数据分批发送,实现自动合并
  3. 冷热分级转换支持归并压缩:为方便用户在分区表做热转冷的数据转换,可以将多个分区表合并到一起。一来能降低分区管理的压力,也利于 DBA 进行维护。使用方法请参考文档
  4. 并行备份恢复“工具”首度公开亮相:YMatrix Database 隆重推出 mxbackup 和 mxrestore 两大工具,相比继承自 PostgreSQL 的 pg_dump 和 pg_restore,支持并行处理,备份恢复效率更高。使用方法请参考文档

4.1.0 发布介绍


  1. 新增 mxkv 用户自定义数据类型做 kv 存储,方便扩展附加字段,相比 JSON 类型性能更好
  2. 支持 Kafka 数据接入和图形化操作界面
  3. 提供分区自动化管理函数。用户可以自定义分区策略,后台进程自动完成分区管理

4.0.3 发布介绍


  1. 增加多机安装可视化部署
  2. 修复 MARS 增加分区的错误

4.0.2 发布介绍


  1. MARS 压缩默认启用
  2. 升级后 supervisor.conf 平滑过渡
  3. gapfill 并行优化

4.0.1 发布介绍


  1. 修复 build_timeseries_table 时未对列名做转义的错误
  2. MARS 引擎优化

4.0.0 发布介绍


YMatrix Database 4.0.0 已正式发布,新版包括如下新特性:

  1. MARS 引擎 MARS 引擎是自研的存储引擎。该引擎包含如下特性:
    • 列式存储
    • 数据编码和压缩
    • 聚集下推优化
    • 无索引扫描的优化

在时序场景中,适合存储历史冷数据,基于时间戳的聚集查询性能极高。

MARS 目前只支持插入,不支持更新和删除。

  1. 多节点自动化部署 在 YMatrix Database 3系统单节点自动化部署的基础上,实现了多节点自动化部署。包括:
    • 添加集群节点
    • 配置每个节点 Segment 数量
    • 配置是否启用数据自动镜像

只用不到 5 分钟,即可部署好一个集群。

具体使用方法请参考YMatrix Database 4集群部署

  1. 冷热分级存储 UDF 为方便用户为时序表建立分区、维护分区表、冷热数据转换,实现了关于创建分区模板、建立分区、替换冷热分区的一整套管理接口。

具体使用方法请参考冷热分级存储

  1. time_bucket_gapfill 时序组件 MatrixTS 中,在 time_bucket 函数基础上,增加了 time_bucket_gapfill 函数。可以为缺失的时间间隔按照规则填充。

目前支持两种填充规则:

  • locf:用聚合组中之前出现的值填充
  • interpolate:对缺失的值做线性插值填充