mariadb 10.4 alpha版本在2018年11月9日发布了,这个版本的新特性还是相当多的,其中最重要的是国内的厂家参与了开发,像阿里云,腾讯云,百度云都有开发人员参与进去,这还是非常值得期待的,之前阿里云还贡献了一部分代码作为开源库使用。
10.4最重要的是innodb快速删除列的实现,要知道在之前10.3.x版本中,这是无法做到的,删除一列通常要遍历整个表或索引,在数据量少的情况下感觉不出来,但表的数据特别多的时候就感觉到压力了,会很缓慢响应方面,网站也会慢很多。另外还有一个特性是galera即将发布4.0版本,它可是很多年都未更新过的。
之前米次mariadb新版本一发布,偶就马上下载安装并使用,管它是alpha Beta Release Candidate还是Stable正式版本,在偶的机器和空间上面,这些米有任何问题。10.4.0真的很不错,速度感觉要比之前10.3.10要好点,不知道是不是心里作用,其实在机器上是感觉不出来的,除非你网站数据表单表特别大,那样才能体现出明显差距:)
下面是官方原文:
2017年,马里亚开发银行(MariaDB)在深圳召开了开发者大会(Unconference),从那时起,包括2018年在纽约召开的开发者大会(Developers Unconference), 10.4项目的规划工作一直在继续。下面的特性正在考虑纳入MariaDB 10.4。这份清单只是初步的,未来几乎肯定会有所改变。如果您想参与开发这些特性中的任何一个,请参见对MariaDB项目的贡献。也欢迎您向这个列表或JIRA添加新特性。
Very Likely
Better Security
- Automatic DOS attacks detection – MariaDB Corporation
- Automatic password crack detection – MariaDB Corporation
- Encryption on client side – MariaDB Corporation
- Password expiration – MariaDB Foundation
- Multiple authentication plugins per user – MariaDB Foundation
- Socket authentication by default (MDEV-12484) – MariaDB Foundation
- Encryption plugin (Tencent Cloud)
- Column encryption (Tencent Cloud)
Compatibility
- Oracle stage 2 (MDEV-10872)
- CONNECT BY – Alibaba Cloud, MariaDB Corporation & MariaDB Foundation
- MSSQL (?)
Spider
- Spider (10.4 patches) – Kentoku & MariaDB Corporation
- Tencent Spider patches (10 patches)
- Vertical partitioning – Kentoku
Distributed Storage Engine (stage 1 of 4)
- Write scaling
- Planning to be done in November-December
InnoDB
- Instant drop column etc. (MDEV-15562) – MariaDB Corporation
- Better redo log (MDEV-14425) – MariaDB Corporation & Tencent Cloud
Performance
- Micro optimization (MDEV-7941) – MariaDB Foundation (Svoj)
- Scalability issues – MariaDB Foundation (Svoj) & IBM
- Moving blocks without using any L? cache (Svoj and Monty)
- MDEV-7487 – semi-join optimisations – (MariaDB Corporation)
- Aggregation on the server (Tencent Cloud)
- GROUP INSERT (Alibaba Cloud)
Re-Entrant Items
- Building block for parallel query and be able to share stored procedures between threads (Stored procedure cache)
- Reading and updating my.cnf from server – MariaDB Corporation
Other
- Galera 4 – Codership
- MySQL syntax for multi source (CHANNEL) – Alibaba Cloud
- Updates to MyRocks – MariaDB Corporation & Facebook
- Reverse privileges – MariaDB Foundation
- BLOB & optimized VARCHAR for memory tables – MariaDB Corporation (Greatly reduces memory for internal temporary tables)
Rolling Features
Backup
- Backup from the server through storage engine API, patch for mariabackup (MariaDB Corporation and Alibaba)
Columnstore
- Columnstore integration (MariaDB Corporation)
Replication
- GTID in OK Packet (MDEV-11956) – MariaDB Corporation
Optimizer
- Better ORDER BY LIMIT Optimization (MDEV-8306) – MariaDB Corporation
- Optimizer trace (MDEV-6111) – MariaDB Corporation
- Better histograms (MDEV-12313) – Google Summer of Code project
- Prefiltering – MariaDB Corporation (Igor)
- Better telemetry ???
- Improve single-thread CPU performance ???
Other
- Virtual host in protocol – Microsoft(?)
- Index on expression – MariaDB Corporation
- Pattern matching for keys
- Downscaling memory on demand/request – MariaDB Corporation (?)
- Closing not used connections
- Reducing buffer-pool and key caches
- Flush all internal caches
- Parallel replication of one table – Tencent Cloud
- Depending on benchmark results
- TIMESTAMP with timezone support (MDEV-7928) – Seth(?)
- Implement all window function features – MDEV-12987, MDEV-6115
- Remove the need to use comments for configuration (MariaDB Corporation)
- Remotely provision slaves (?)
Other Activities Overlapping with 10.4 Release
- Allow community builds – MariaDB Foundation (Vicentiu)
- Docker – MariaDB Foundation (Vicentiu)
- Staging trees – MariaDB Foundation (Vicentiu)
- Python Connector – MariaDB Foundation (Vicentiu)
- Query characteristics being returned to Connector (MariaDB Corporation)
- Reduce the number of open MDEVs (?)
JIRA
We manage our development plans in JIRA, so the definitive list will be there. This search shows what we currently plan for 10.4. It shows all tasks with the Fix-Version being 10.4. Not all these tasks will really end up in 10.4, but tasks with the “red” priorities have a much higher chance of being done in time for 10.4. Practically, you can think of these tasks as “features that will be in 10.4″. Tasks with the “green” priorities probably won’t be in 10.4. Think of them as “bonus features that would be nice to have in 10.4″.