MatrixOne v0.7.0 Release Notes

We are excited to announce MatrixOne 0.7.0 release on 2023/2/23. In this release, MatrixOne version 0.7.0 has been optimized for stability and performance under a cloud-native architecture and complete database functionality.

To improve stability, we have optimized the memory management mechanism to significantly reduce the likelihood of memory leaks. We have also adjusted the timeout mechanism of some modules to prevent the system from becoming unresponsive during extreme cases, such as data import and restart. Additionally, we have fixed the issue where a single module failure in the distributed architecture would cause a system-wide collapse.

To enhance performance, this iteration has focused on read and write optimization. For reading, we have implemented Zonemap-based statistical information and provided a better execution plan. We have also added the Cluster by field when creating a table to arrange data in advance, making it easier to obtain data faster. Furthermore, we have optimized many performance bottlenecks, including the IN operator, type conversion, and predicate filtering. As for writing, this iteration has achieved many parallel writes to shared storage directly through the CN node, greatly improving loading performance.

Docker

  1. docker pull matrixorigin/matrixone:0.7.0

Features

  • Support parallel load data mode.
  • Support Foreign Key.
  • Support adding Cluster by in DDL statements.
  • Add a MYSQL_COMPATBILITY_MODE to manage MySQL-compatible behaviors.
  • Modify the system default isolation level parameter to REPEATABLE_READ for better MySQL compatibility.
  • Improve Unique Index behavior.
  • Support to load data from the client machine.
  • Support Alter View.
  • Add query_result() function to get saved query results.
  • Support account suspending.
  • Support system table sharing to accounts.
  • Support aggregate function group_concat.
  • Support built-in functions: format, replace, curdate, field, substring_index, and other system functions.

Known Issues

  • 0.7.0 data format is not compatible with the previous versions.
  • Transactional performance doesn’t compete with mature DBMS products.
  • The concurrent performance of OLTP type load is unstable.
  • Secondary Key doesn’t improve any performance.
  • Only support up to 100GB benchmark testing.
  • Out of memory(OOM) error or context deadline will occur after 5 hours of frequent testing.
  • Loading multiple GB-level large tables in a distributed cluster will cause OOM problems.

Contributors

This release includes 656 commits by 43 authors.

New Contributors

  • @sourcelliu
  • @iceTTTT
  • @chrisxu333
  • @songjiayang
  • @dr-lab
  • @arjunsk
  • @Morranto

We appreciate your contribution! Welcome to MatrixOne community.

Full Changelog

https://github.com/matrixorigin/matrixone/compare/v0.6.0…v0.7.0