数据架构选型必读:2019年数据库产品技术总结与展望

Newsletter 2019-12-30 14:53:06

 

本期目录

DB-Engines数据库排行榜

新闻资讯

一、RDBMS家族

  • Oracle数据库年度总结与展望

  • MySQL发布8.0.18版本

  • MariaDB发布10.4.11稳定版

  • PostgreSQL 12正式发布

  • OceanBase发布2.2.3版本及年度总结与展望

二、NoSQL家族

  • Redis更新5.0.6和5.0.7版本

  • RocksDB发布6.4.6版本及年度总结与展望

三、NewSQL家族

  • CockroachDB发布19.2版本

  • SequoiaDB发布3.4版本及年度总结与展望

  • TiDB发布3.0.6版本及年度总结与展望

大数据生态圈

  • Hadoop发布2.10.0 release版本 

  • Flink发布1.9.0版本

  • Elasticsearch发布7.5.0版本

  • Greenplum年度总结与展望:从OLAP到HTAP

五、国产数据库

  • 本期新秀:GaussDB年度总结与展望

  • 本期新秀:OushuDB年度总结与展望

  • ArkDB发布1.0.2版本

  • QianBase发布1.5正式版

  • 达梦数据库年度总结与展望

六、云数据库

  • 本期新秀:POLARDB年度总结与展望

  • 本期新秀:AnalyticDB年度总结

  • TBase开源及腾讯云多款产品更新版本

  • 京东云数据库年度总结与展望

  • RadonDB发布1.0.8版本 

七、推出dbaplus Newsletter的想法

八、感谢名单

 

为方便阅读、重点呈现,本文将对各板块内容进行精简,需阅读全文可登录云盘链接下载:https://pan.baidu.com/s/1TqunuAqJchuss2JEidteAA

 

本年度收录版本回顾

 

在2019年即将结束之际,本期dbaplus Newsletter除了呈现今年第四季度各数据库版本更新情况以外,还带来了相关年度总结与发展趋势展望。以下是过去这一年Newsletter收录过的版本对照,便于大家直观回顾:

 

 

往期回顾:

 

DB-Engines数据库排行榜

 

以下取自2019年12月的数据,具体信息可以参考http://db-engines.com/en/ranking/,数据仅供参考。

 

 

DB-Engines排名的数据依据5个不同的因素:

  • Google以及Bing搜索引擎的关键字搜索数量

  • Google Trends的搜索数量

  • Indeed网站中的职位搜索量

  • LinkedIn中提到关键字的个人资料数

  • Stackoverflow上相关的问题和关注者数

 

新闻资讯

 

1、2019年8月20日,MongoDB决定不再维护Perl驱动,具体是在2.2.0版本发布的12个月后正式结束生命周期(2020年8月13日)。在那12个月内,MongoDB将仅为该驱动程序提供关键/安全修复程序。

 

2、2019年9月17日,Oracle宣布将首次采用VMware,并将正式支持在VMware虚拟化环境中运行的Oracle企业软件。

 

3、2019年9月18日,Oracle宣布云服务永久免费。具体来说,Oracle用户可以永久享受到以下福利:
  • 2个Autonomous Database(自主数据仓库或自主事务处理),每个Autonomous Database都有1个OCPU和20 GB存储资源;
  • 2个Compute VM,每个Compute VM有1/8 OCPU和1 GB内存;
  • 2个Block Volumes,总共100 GB,最多5个免费备份;
  • 10 GB Object Storage、10 GB Archive Storage和每月50000个API请求;
  • 1个Load Balancer,10 Mbps带宽;
  • 每月10 TB的出站数据传输;
  • 5亿个摄取数据点和10亿个服务监测数据点;
  • 每月传递100万个通知的选项和每月1000封电子邮件。

 

4、2019年9月19日,华为宣布将开源其GaussDB数据库,开源后命名为openGaus,将在2020年6月正式上线,可覆盖70%企业业务场景。

 

5、2019年10月9日,SUSE宣布将逐步停止OpenStack相关业务,并正在转向Kubernetes。

 

RDBMS家族

 

 
Oracle数据库年度总结与展望

 

Gartner最新发布了两份权威数据库报告,其中甲骨文在Gartner 2019年“操作型数据库管理系统关键能力”报告全部四大使用场景中的排名均蝉联第一。四个使用场景如下:

 

  • 传统事务处理;

  • 分布式可变多模数据处理;

  • 事件处理/动态数据处理;

  • 增强事务处理。

 

甲骨文还被Gartner 2019年“操作型数据库管理系统魔力象限”评为领导者。

 

2019年,Oracle新推出的自治数据库版本19c提供了更多的自治能力和新功能。

 

Oracle Database 19c新特性摘要:

 

  • 自动索引(Auto-Indexing)自动化索引功能在帮助用户简化开发、运维的同时,数据库性能最高可提升60%;

  • 实时自动统计信息收集在数据库发生变化时,可自动收集统计数据供SQL优化器使用,极大减轻人工SQL调优压力;

  • Active Data Guard备库DML重定向备端可做DML操作, 实现数据中心应用级双活,简化应用部署难度,同时最大化架构可用性和硬件利用率;

  • 自动SQL隔离可将开发人员性能不好的SQL进行资源隔离,保障系统正常运行,提升数据库可用性;

  • 物联网(IoT)流处理功能专为插入快速激增的IoT数据打造,让IoT更易用、更好用。

 

另外, 在2019年8月8日的数据库大会上发布了Oracle区块链本地解决方案,帮助企业轻松搭建区块链网络。

 

2019年9月17日,甲骨文全球大会上发布了最新的Exadata X8M,Oracle Exadata X8M业内首个采用了英特尔®傲腾™DC持久性内存和创新的数据库RDMA技术,与上一版本相比I/O吞吐量提高了2.5倍,I/O延迟降低了90% 。

 

根据Oracle的产品策略, 2020年将会推出Oracle 20c,20c将会提供更多的自治能力,包括原生持久内存(PMEM)数据库、自动机器学习、为安全交易而打造的原生区块链表,以及性能更加强大的二进制JSON数据类型。

 

 
MySQL发布8.0.18版本

 

2019年10月14日,MySQL发布8.0.18版本。版本亮点:

 

1、Hash Join

 

Hash Join不需要任何索引来执行,并且在大多数情况下比当前的块嵌套循环算法更有效。

 

2、EXPLAIN ANALYZE

 

EXPLAIN ANALYZE将运行查询,然后生成EXPLAIN输出,以及有关优化程序估计如何与实际执行相匹配的其他信息。

 

3、创建用户时可以随机生成密码

 

为CREATE USER / ALTER USER / SET PASSWORD语句添加了语法,以生成强随机密码,并将其作为结果返回给客户端。添加的语法是:CREATE USER user IDENTIFIED BY RANDOM PASSWORD,ALTER USER user IDENTIFIED BY RANDOM PASSWORD,和SET PASSWORD [FOR user] TO RANDOM。

 

4、群组复制

 

group_replication_exit_state_action增加了OFFLINE_MODE 模式。

 

用于指定当服务器无意离开群组时群组复制的行为。OFFLINE_MODE行为将关闭所有连接,并禁止非CONNECTION_ADMIN或SUPER权限的用户建立新连接,否则它的行为类似于现有READ_ONLY模式。

 

5、innodb增加了一个空闲状态下控制写入IOPs的选项

 

该选项在InnoDB空闲时控制写IOP。目的是减少写IO,以延长闪存的寿命。

 

此外,还有很多内部细节的改进,详细可访问:https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-18.html

 

 
MariaDB发布10.4.11稳定版

 

2019年12月11日,MariaDB发布10.4.11稳定版,主要改进如下:

 

1、账户锁定

 

支持管理员锁定/解锁用户帐户,语句:

 

  • 锁定

ALTER USER  'hechunyang'@'%' ACCOUNT LOCK;

 

当锁定后,用户再次登录时,提示如下信息:

# mysql  -h127.0.0.1 -uhechunyang -p -P3312

Enter password:

ERROR  4151 (HY000): Access denied, this account is locked

 

  • 解锁

ALTER USER  'hechunyang'@'%' ACCOUNT UNLOCK;

 

注:帐户被锁定,现有连接不受影响,新的客户端不允许连接。

 

  • 查看账户锁定信息

> show create  user hechunyang@'%'\G;

***************************  1. row ***************************

CREATE USER for  hechunyang@%: CREATE USER 'hechunyang'@'%'

IDENTIFIED BY  PASSWORD

'*1DA3AF2348DE66F7554E816DEDC1F1340814842E' ACCOUNT LOCK

 

> select *  from mysql.global_priv where user='hechunyang'\G;

***************************  1. row ***************************

Host: %

User: hechunyang

Priv:

{"access":1073740799,"plugin":"mysql_native_password","authentication_string":"*

1DA3AF2348DE66F7554E816DEDC1F1340814842E","password_last_changed":15

76823835,"account_locked":true}

 

2、用户密码到期

 

  • 设置用户到期时间

>CREATE USER  'hechunyang'@'%' PASSWORD EXPIRE INTERVAL 1 DAY;

 

注:单位默认只有DAY(天),最小为1天。

 

当用户权限到期后,登录时提示修改密码,如下:

hechunyang@127.0.0.1[(none)]>show  processlist;

ERROR 1820  (HY000): You must SET PASSWORD before executing this statement

 

  • 解除限制

>ALTER USER  'hechunyang'@'%' PASSWORD EXPIRE NEVER;

 

3、支持更改字符集utf8->utf8mb4采用ALGORITHM=INSTANT算法

 

MariaDB支持表的某一字段,或者整张表,字符集utf8转换为utf8mb4采用ALGORITHM=INSTANT算法(只修改字典信息)。

 

列表结构:

CREATE TABLE t1  (

  id int(11) DEFAULT NULL,

  cid int(11) DEFAULT NULL,

  name varchar(60) DEFAULT NULL,

  KEY IX_cid (cid)

) ENGINE=InnoDB  DEFAULT CHARSET=utf8;

 

DDL变更语句(秒级更改)

alter table t1  modify name varchar(60) charset utf8mb4, ALGORITHM=INSTANT;

 

需要注意的地方:

  • 反过来utf8mb4->utf8是不支持INSTANT算法的;

  • 如果你的字段是latin1拉丁文,转utf8/utf8mb4是不支持INSTANT算法的。

 

注:在MySQL 8.0.18版本中,修改字符集utf8->utf8mb4是无法使用到INSTANT算法的,需要重建表(ALGORITHM=COPY算法),且会锁表,update/delete/insert/replace into语句会被MDL锁住(Waiting for table metadata lock)

 

4、字段长度不大于varchar(256),支持采用ALGORITHM=INSTANT算法

 

需要注意的地方:

  • varchar(60)减少到varchar(40)是不支持INSTANT算法的。

  • 大于并等于varchar(256),这里的256是指字节(UTF8占用3字节),是不支持INSTANT算法的。

 

注:只对varchar类型采用INSTANT算法,char和int是无效的,仍旧是需要拷贝数据且锁表。

 

MariaDB 10.4.11早期新功能变化,请参考dbaplus社群文章《MySQL 8.0与MariaDB 10.4,谁更易于填坑补锅?》

 

 
PostgreSQL 12正式发布

 

2019年10月3日,PostgreSQL最新稳定版PG 12正式发布,带来大量新特性以及性能提升。

 

1、PostgreSQL 12正式发布

 

  • 支持AM接口,通过AM接口可以扩展存储、索引接口。例如:支持undo的ZHEAP存储引擎,以及ZEDSTORE行列混合存储引擎。

  • 分区表性能得到巨大提升,相比以前版本,在1024个分区的情况下,查询性能提升469倍。

  • Btree,GiST索引支持指定任意字段排序组织形式的聚集存储。大幅提升聚集查询效率,例如轨迹数据、订单跟踪数据的查询效率。

  • 支持审计日志采样。

  • 支持reindex concurrently语法,简化索引膨胀维护操作流程。

  • 索引空间利用率提升,读写性能提升。

  • 支持虚拟列。

  • 支持SQL/JSON path语言,提升开发者操作JSON字段的效率。

 

2、PostgreSQL常用插件动态

 

1)分布式插件citus发布9.1.0

 

citus是PostgreSQL的一款sharding插件,agpl开源协议,目前为微软所拥有,国内苏宁有较大量使用案例。

 

9.1.0加入对PG 12的支持。

https://github.com/citusdata/citus

 

2)分布式代理函数pl/proxy发布2.9

 

Pl/proxy是PostgreSQL的一款sharding代理函数插件,bsd开源协议。2.9加入

 

对PG 12的支持。

https://github.com/plproxy/plproxy

 

3)地理信息插件postgis 3.0.1 dev1发布

 

PostGIS是专业的时空数据库插件,在测绘、航天、气象、地震、国土资源、地图等时空专业领域应用广泛。同时在互联网行业也得到了对GIS有性能、功能深度要求的客户青睐,比如共享出行、外卖等客户。

http://postgis.net/

 

4)时序插件timescaledb发布1.5.1

 

timescale是PostgreSQL的一款时序数据库插件,在IoT行业中有非常好的应用。github star数目前有7401,是一个非常火爆的插件。

 

1.5.1的主要功能增强包括:压缩功能,支持多重压缩算法:rle、Gorilla、字典、lz等压缩算法。

https://github.com/timescale/timescaledb

 

5)Oracle兼容插件orafce发布3.8

 

Orafce是PG的兼容Oracle常用类型、包、函数、操作符的扩展插件包。3.8发布,支持PG 12。

https://github.com/orafce/orafce

 

6)阿里云RDS PG发布图像识别插件

 

阿里云RDS PG发布palaemon插件,支持图像识别,支持512维高纬向量索引。内置hnsw、ivfflat两种算法。千万级高纬向量毫秒级查询响应。

https://www.aliyun.com/database/postgresqlactivity

 

7)实时用户画像插件pg_roaringbitmap发布0.5.0

 

Pg_roaringbitmap是兼容roaringbitmap库的PG数据库插件,支持位图类型的压缩存储、开发友好的大量聚合、计算函数和操作符,广泛应用于实时精准用户画像系统。

https://github.com/ChenHuajun/pg_roaringbitmap

 

3、PostgreSQL衍生产品动态

 

1)gpdb发布6.1.0 版

 

gpdb是兼容PostgreSQL的开源mpp数据库,适合OLAP场景。

https://github.com/greenplum-db/gpdb

 

 
OceanBase发布2.2.3版本及年度总结与展望

 

1、OceanBase发布2.2.3版本

 

2019年12月10日,OceanBase发布2.2.3版本。该版本增加了安全审计、flashback table、备份恢复等功能,同时进一步提升性能和兼容性。

 

  • Oracle mode新增闪回功能(flashback table)。通过该特性,可以恢复因误操作而丢失的数据,2.2.3版本支持快速闪回到上一次执行每日合并的快照点。

  • 进一步完善数据库安全特性,包括SSL、审计、透明加密、label security、user profile,基本满足国家信息安全等级保护认证三级的要求。

  • 支持单分区多线程并行转储,从而解决特别大的分区转储性能瓶颈。该特性可通过 alter system set _enable_parallel_minor_merge = true 开启。

  • 性能优化:分区表批量导入性能大幅提升,性能是2.1版本的2~3倍;分区表批量更新的性能大幅提升,性能是2.1版本的15~28倍。

  • 完善备份恢复功能,除MySQL对象以外,进一步支持Oracle对象的备份恢复。另外,支持回收站备份恢复,允许在备份过程中删表、删索引等DDL操作。

  • 适配国产硬件,除华为ARM、海光CPU以外,进一步支持飞腾2000 CPU。

 

2、OceanBase 2019年度总结与发展趋势展望

 

2019年,OceanBase在性能和功能等方面都取得了一些突破:

 

1)2019年10月,OceanBase通过了数据库联机事务处理(OLTP)的国际标准TPC-C测试。OceanBase不仅是首个通过TPC-C测试的中国数据库系统,还以60,880,800 tpmC的成绩打破了TPC-C的世界纪录。
 
2)2019年11月,蚂蚁金服正式发布OceanBase 2.2版本,该版本内置MySQL以及Oracle两种兼容模式,并在Oracle模式中引入了许多广受欢迎的功能,同时性能和稳定性上也相对2.0版本有大幅提升。OceanBase 2.2版本平稳支撑了2019年的天猫双11,创造了6100万次/秒处理峰值的全新纪录。2019年双11中,支付宝的交易和支付的OceanBase数据库首次从MySQL模式切换为更适合企业级应用的Oracle模式,提升性能并降低了延时。
 
2020年,OceanBase将进一步完善内置的Oracle功能,实现更多客户的Oracle系统的无缝迁移(业务代码不做任何修改)。OceanBase还将进一步完善集OLTP和OLAP于一体的HTAP混合负载功能,让更多客户用一个系统既实现交易处理,又完成商业智能分析。
 

NoSQL家族

 

 
Redis更新5.0.6和5.0.7版本

 

1、5.0.7版本,主要修复了一些非关键的问题

 

  • 复制相关的命令和回调问题;

  • AOF fsync的个别问题;

  • 极个别场景下的内存泄露问题;

  • Stream数据行为的个别问题;

  • 在同一时间处理多个键的命令中可能会发生崩溃的问题。

 

2、5.0.6版本,主要修复bug以及功能增强

 

  • 格式错误的HyperLogLog字符串可能导致对内存的无效访问的bug修复;

  • 新Redis API模块合并到Redis 5;

  • 一些与对象创建有关的内存优化;

  • 修复了flushSlaveOutputBuffer()的bug,确保SHUTDOWN命令会将挂起的缓冲区传输到副本中。

 

 
RocksDB发布6.4.6版本及年度总结与展望

 

1、RocksDB发布6.4.6版本

 

2019年10月16日,RocksDB发布6.4.6版本。在2019年第4季度,RocksDB主要在围绕6.4.x几个版本进行迭代,主要特性如下:

 

  • 增加了--secondary_path参数,可以让ldb打开第2个实例作为辅助实例。以保证原始数据库的完整性;

  • 以Index/Filter Blocks 类型的方式预先加载 Compression dictionary block 到cache中,并且用户自定义;

  • 添加了DBOptions :: log_readahead_size,它指定了在读取日志时要预取的字节数。这对于读取远程日志最有用,因为它可以节省往返次数。如果为0(默认值),则禁用预取;

 

API更新:

 

  • 添加了新的API:ExportColumnFamily和CreateColumnFamilyWithImport以支持导出和导入 Column Family;

  • 添加了GetAproximateSizes 来获取SizeApproximationOptions对象及Status。老的  API 将其调用重定向到此新方法,并且如果include_flags没有设置INCLUDE_MEMTABLES或INCLUDE_FILES位,则不再断言。建议使用新的 API,因为类型更安全,返回的的状态更有语意。

 

性能方面的改进:

 

  • 减少在迭代器中对upper/lower bound的验证;

  • 改进row_cache的性能:除一些事务情况以为,读取较新的Snapshot,如果 SSTable共用相同的cache key的数据;

  • 查询时,压缩字典不再复制到新对象。

 

2、RocksDB 2019年度总结与发展趋势展望

 
 
 
在即将过去的2019年里,RocksDB从5.X来到了6.X,有一个大版本的更新,在迭代过程中不仅有一些新功能的迭代,而且在一些性能上方面也有不断的提升。RocksDB被越来越多的开源项目使用,如MyRacks、TiKV,同时也被越来越多公司运用在自研分布式KV存储中。
 
发布文档详见:https://github.com/facebook/rocksdb/releases
发布Blog详见:https://rocksdb.org/blog
 

NewSQL家族

 

 
CockroachDB发布19.2版本

 

2019年11月12日, CockroachDB发布19.2版本。该版本提高了CockroachDB的延迟、可靠性和可用性,主要亮点如下:

 

1、减少多区域和单区域部署的延迟

 

CockroachDB的新优化原子提交协议将事务的提交延迟减半,从两轮降至一轮。与事务流水线相结合,并行提交使普通OLTP事务产生的延迟接近理论上的最小值:所有读取延迟之和加上一轮延迟。这降低了涉及多区域和单区域部署中的辅助索引的事务的延迟时间。

 

2、改进了分布式集群的可靠性和易用性

 

在19.2中,你可以控制某些记录备份到的确切位置。这可以通过将数据保存在特定的云区域来降低云存储数据传输成本,并且可以帮助用户遵从GDPR这样的数据注册要求。

 

该产品的企业版本和开放源码软件版本中也有许多新特性,这些特性简化了配置地理分布式数据库的复杂性。例如,区域配置现在对用户来说更容易设置。还对分区表做了改进,这样就可以轻松地查看在表、索引甚至整个数据库上创建的分区。

 

更多内容请见发布说明:https://www.cockroachlabs.com/docs/releases/v19.2.0.html

 

 
SequoiaDB发布3.4版本及年度总结与展望

 

1、SequoiaDB发布3.4版本

 

2019年11月,SequoiaDB巨杉数据库发布3.4版本。

 

1)针对金融级交易场景进一步优化和技术创新

 

全面提升金融级交易场景功能与性能,在分布式事务、数据一致性,并发CURD性能以及SQL兼容能力方面都做了深度优化。

 

技术创新点主要包括:

  • 分布式事务智能仲裁算法,为分布式事务2PC提交增加智能仲裁算法,确保分布式事务的强一致性;

  • 实现多层级内存池和无锁内存模型;引入冲突仲裁机制,突破Raft算法极限,实现全并发同步;

  • 全文索引性能大幅提升。优化全文索引连接模型。

 

另外,为了满足金融级交易场景对稳定性严苛的技术要求,SequoiaDB还升级了混沌测试框架,集群稳定性得到极大提升。

 

分布式交易场景下的性能提升,对比上一大版本,SequoiaDB v3.4在分布式交易场景,读写性能提升达30%,更新性能提升1倍-1.5倍,查询性能较v3.2提升1.5倍以上。

 

2)巨杉数据库工具矩阵发布,易用性提升

  • 同时推出了新一代的巨杉数据库工具包,提升用户易用性;

  • 近期即将发布SequoiaPerf性能监控诊断工具,提升性能监控。

 

2、SequoiaDB 2019年度总结与发展趋势展望

 

2019年,SequoiaDB先后发布v3.2和v3.4两个较大版本更新,新版本全面夯实分布式OLTP能力,在分布式事务、数据一致性、并发CURD性能以及SQL兼容能力方面都做了深度优化。在过去这一年,SequoiaDB全面提升金融级交易场景功能与性能,并已成功在银行新一代分布式核心交易型业务中规模上线应用,应用场景持续拓展,涵盖核心交易、数据中台、内容管理以及实时数据服务等多种场景。

 

展望2020,企业级用户处在架构转型关键节点,面临微服务和分布式架构转型的新需求期,因此分布式数据库将在更多场景发挥作用。针对微服务架构,以SequoiaDB为代表的新一代分布式数据库将提供数据库的实例化部署,帮助数据库与上层微服务实现更好的对接,数据库也将提供云化管理方式,保证庞大复杂的微服务能够实现更细粒度管理。

 

发布文档详见:https://doc.sequoiadb.com/cn/sequoiadb-cat_id-1432190607-edition_id-0

发布Blog详见:https://news.sequoiadb.com/cn/detail-id-111

 

 
TiDB发布3.0.6版本及年度总结与展望

 

1、TiDB发布3.0.6版本

 

2019年11月28日,TiDB发布3.0.6版本,对应的TiDB Ansible版本为3.0.6。

 

2019年9月6日,TiDB Data Migration(DM)1.0 GA正式发布。DM是由PingCAP开发的一体化数据同步平台,支持从MySQL或MariaDB到TiDB的全量数据迁移和增量数据同步。无论是从MySQL向TiDB进行平滑数据迁移还是用TiDB作为多个MySQL实例的数据汇总库,都可以通过DM来实现。DM在TiDB DevCon 2019上正式开源,经过半年多时间在大量用户、开发者的支持和反馈下,其功能和稳定性越来越完善。

 

2、TiDB 2019年度总结与发展趋势展望

 

过去的这一年,整个数据库行业的主旋律有两个大的方向:一方面是在云上存储和计算分离的架构变的越来越流行(以Aurora为代表);另一个方面是NewSQL的蓬勃发展,开始慢慢的去侵蚀传统的MySQL Sharding技术(以TiDB架构为代表)。

 

对TiDB来说,过去一年最大的突破主要是TiFlash这个架构,TiFlash让TiDB变成了一个真正意义上的HTAP的数据库。

 

明年一个大的趋势是,比如说以TiDB为代表的是NewSQL数据库会越来越多的和云的技术整合在一起,如Kubernetes等,在云上提供一些更加智能的数据库方案。另外,我们认为明年的关键词是智能,希望能看到AI的技术去改造传统的数据库领域。

 

发布文档详见:https://pingcap.com/docs-cn/stable/releases/3.0.6/

TiDB源码:https://github.com/pingcap/tidb

TiKV源码:https://github.com/tikv/tikv

更进一步文档请阅读:https://github.com/pingcap/docs-cn

 

大数据生态圈

 
Hadoop发布2.10.0 release版本

 

2019年10月29日,Apache Hadoop团队发布了2.10.0 release版本。该版本较2.9.0版本,主要包含了362项bug修复,功能增强等内容。主要变更如下:

 

1、HDFS

 

  • 改进了Hadoop HA的功能,在原有的standby namenode基础上,新增了observer节点。它是主备节点之外的一种新型NameNode节点。观察者节点维护与备用节点相同的命名空间副本。它还允许执行客户端的一致性读的请求;

  • 改进了HDFS滚动升级相关的功能;

  • 支持新的基于成本的公平调度队列。它使得调度器在决定任务优先级的时候,不在食基于用户操作的数量,而是用户操作的实际成本。这能够有效的保护namenode受一些高成本的操作(例如大型listStatus操作或递归getContentSummary操作)的影响。

 

2、Yarn

 

新版本的yarn支持用户定义除CPU和内存以外的可计数资源类型(比如磁盘资源,网络带宽资源等),甚至于可以把原生GPU作为yarn中的可调度资源,相关内容可见Jira YARN-3926,YARN-8200,YARN-6223,YARN-8200。

 

 
Flink发布1.9.0版本

 

2019年8月22日,Flink发布1.9.0版本。此版本包括批处理作业的批处理式恢复,以及新的基于闪烁的表API和SQL查询引擎的预览,还有状态处理器API的可用性,它是最常见的请求特性之一,允许用户使用Flink DataSet作业读写保存点。最后,包括一个重新设计的WebUI和Flink新的Python Table API的预览以及它与Apache Hive生态系统的集成。
 
 
Elasticsearch发布7.5.0版本

 

2019年12月5日,Elasticsearch 7.5.0发布,具有以下新特性:

 

1、Features/ILM+SLM

  • 添加 API,以按需执行 SLM 保留

  • 将保留添加到快照生命周期管理

 

2、Features/Ingest
  • 添加丰富处理器 

 
 
3、Machine Learning
  • 为多类分类问题实施评估 API 

  • 实施新的分析类型:分类(classification)

  • 为数据框架分析添加审核消息

  • 实现 DataFrameAnalyticsAuditMessage 和 DataFrameAnalyticsAuditor

 
4、SQL
  • SQL:实现 DATEDIFF 函数

  • SQL:实现 DATEADD 函数

  • SQL:实现 DATE_PART 函数

  • SQL:将别名 DATETRUNC 添加到 DATE_TRUNC 函数

  • SQL:添加 PIVOT 支持

  • SQL:实现 DATE_TRUNC 函数

 
新版本还带来大量改进内容,参见:https://www.elastic.co/guide/en/elasticsearch/reference/7.5/release-notes-7.5.0.html
 
 
Greenplum年度总结与展望:从OLAP到HTAP

 

随着业务需求和数据库技术的发展,HTAP(Hybrid Transactional and Analytical Processing)数据库以其简洁的架构和混合负载处理能力,受到业界越来越多的关注。2019年9月份发布的Greenplum 6.0中,Greenplum优化了对OLTP型负载的支持,成为第一款企业级HTAP开源分布式数据库。

 

1、HTAP或者Translytical

 

HTAP架构可以很好的解决OLAP的一些痛点,如下图所示。当然作为一个较新的技术,HTAP也有其风险,譬如产品成熟度、资源隔离等。

 

 

 

2、Greenplum HTAP之路

 

作为一款主打OLAP和数据分析的数据库,过去十几年来Greenplum团队一直以分析型查询作为主要优化对象。近年来随着PostgreSQL内核的升级(Greenplum 6.0搭载PostgreSQL 9.4内核,Master分支目前是PostgreSQL 9.6内核)和客户对OLTP型查询需求的提升, 6.0开发周期中投入部分精力,对OLTP型查询进行了优化并取得了不错的效果。

 

3、Greenplum HTAP应用场景

 

Greenplum过去每次从大版本发布到新客户(注意是客户不是用户)采用通常需要一年以上的时间。然而Greenplum 6.0刚刚发布,就已经有多个客户开始使用,主要原因是Greenplum 6.0对HTAP的支持。

 

4、总结

 

相对于传统OLTP和OLAP分离的架构,HTAP 优势非常明显,Greenplum 6.0刚刚发布三个月,已经有多个大型客户采用,这对企业级产品而言非常难得。

 

现阶段Greenplum支持OLTP的目标是达到单节点TP数据库同一能力量级,譬如 PostgreSQL、Oracle等。从目前测试来看基本上达到了这一目标。未来还有很大改进空间。

 

国产数据库

 

 
本期新秀:GaussDB年度总结与展望

 

华为于2019年5月15日正式发布了自主研发的分布式数据库GaussDB。GaussDB包括GaussDB T和GaussDB A两款数据库产品。

 

GaussDB T数据库是一款全自研的分布式数据库,主要面向OLTP场景,产品特点包括:

  • 高可用:故障倒换时间<10s,支持闪回;

  • 高性能:基于鲲鹏920处理器,性能超越业界其他TOP商业数据库30%;

  • 高扩展:分布式强一致,TPC-C扩展比>0.8;

  • 兼容性:支持SQL-92、SQL:1999、SQL:2003等一系列标准的常用语法,兼容业界其他TOP商业数据库常用的SQL语法,支持离线/在线迁移。

 

GaussDB A数据库主要面向OLAP场景,支持MPP(大规模并行处理)分布式部署方式。产品特点包括:

  • 高可用:故障时查询自动重试,同城/异地双集群容灾;

  • 高性能:核心企业数据仓库场景下,分析性能持平其他业界主流分析型数据库,基于Kunpeng 920处理器芯片,相对通用同期芯片,TPC-H/TPC-DS性能提升30%,支持GPU异构多维硬件加速(10万路摄像头千亿图像比对秒级响应);

  • 高扩展:单集群最大支持2048节点,在线扩容,重分布对业务透明;

  • 数据融合:SQL on Anywhere,支持与异构/同构数据源、FusionInsight大数据库互联互通;

  • 计算融合:支持x86/华为Kunpeng CPU、GPU等异构计算芯片的智能调度,实现算力最优;

  • 数据安全:数据透明加密,支持国密算法SM4,行级细粒度权限控制。

 

GaussDB T预计2020年1月正式发布,更多详细特性揭秘即将陆续推出。

 

更多信息请访问:https://e.huawei.com/cn/solutions/cloud-computing/big-data/gaussdb-distributed-database
 
 
本期新秀:OushuDB年度总结与展望

 

在即将过去的2019年里,OushuDB在性能和分布式存储方面取得了重大突破,尤其是OushuDB 4.0的推出具有划时代意义,其中新执行器是利用SIMD技术全新实现的OushuDB执行引擎,新一代分布式存储Magma是OushuDB中可以高性能地支持update/delete/index和分布式事务的原生存储:

 

  • OushuDB新执行器完整支持了TPCH 22个query,相比老执行器性能提升5-10倍;

  • Magma存储支持结构化数据存储,提供高性能存储内数据读写支持;

  • Magma存储支持表数据Update和Delete功能;

  • Magma存储支持ACID分布式事务;

  • Magma存储支持主键索引、唯一键索引和普通索引提高数据检索性能;

  • Magma存储支持表数据的自动冗余持久化和高可用访问;

  • Magma存储支持Oushu Database弹性扩容;

  • OushuDB执行器和优化器针对Magma进行特别优化,实现最优的数据访问性能表现;

  • OushuDB执行器和优化器支持对Magma表的Index Scan和Index-Only Scan;

  • Magma 为P2P无中心架构,提高集群部署灵活性便捷性同时降低使用维护复杂度;

  • Magma支持JSON数据格式(JavaScript Object Notation),它是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成;

  • Magma支持JSON的操作符和相关函数。

 
2020年OushuDB将进一步优化新执行器。Magma正式GA。 OushuDB架构上存储与计算完全分离,可以弹性伸缩,动态扩展。OushuDB新执行引擎和新一代分布式存储Magma的整合,让OushuDB既保证了性能,又可以完美原生匹配云平台的弹性需求
 
更多信息请访问:http://oushu.io/docs/ch/release-notes.html
 

 

 
ArkDB发布1.0.2版本

 

2019年11月28日,ArkDB发布1.0.2版本。其中值得关注的新特性/新功能/新改进/新修复有:

 

  • 在ArkDB内部实现SQL语句的并行计算,提升计算能力及CPU利用率;

  • 进一步提升主库大批量建表时,从库复制的性能;

  • 优化从库多线程redo复制时,自适应btree、undo线程;

  • 新增共享ibd的支持;

  • 完善周边工具及产品支持,实现并支持Arkbak热备工具,支持从原生MySQL直接物理备份迁移到ArkDB;

  • 修复主库DDL过程中Crash后,可能导致recover忽略日志过多从而启动失败的问题;

  • 保持与原生MySQL8.0版本功能及特性的同步。

 

 
QianBase发布1.5正式版

 

2019年12月1日,QianBase R1.5版本正式发布。继QianBase 1.1后,QianBase 1.5新增了以下功能:

 

1)企业级的数据备份恢复功能

  • 基于时间点数据恢复

 

2)与Oracle兼容性功能包含

  • 支持正则表达式相关函数

  • 支持Numeric数据类型四舍五入

  • Trunc函数截取时间戳

  • 区分字符末尾带空格和不带空格

 

3)唯一单调递增序列数

 

4)支持For Update锁冲突等待机制

 

5)SQL实用工具DUMP命令

 

 
达梦数据库年度总结与展望

 

回顾2019年,达梦重磅发布了新一代自研数据库DM8,推出了达梦数据共享集群、透明分布式数据库、数据库弹性计算、混合事务分析处理技术等面向未来的数据技术架构,共通共存解决用户不同场景需求,并且改进细节达359项,涵盖了技术生态改进、查询优化改进、数据备份、运维管理、SQL支持特性、高级对象、日志监控、安全防护、柔性迁移等多个方面。

 

这其中达梦透明分布式数据库(DMTDD)值得期待,透明分布式数据库是一个既具有分布式数据库的高可扩展、高可用、高并发处理能力,同时又具备传统数据库的所有高级特性,支持传统数据库所有开发接口和业务开发框架且对用户透明的创新架构。该产品具有灵活横向扩展、完整的SQL特性支持、多副本数据异地容灾等特点。

 

展望2020年,达梦将在分布式数据库、数据库自治等领域持续发力。

 

云数据库

 

 
本期新秀:POLARDB年度总结与展望

 

2019年,阿里云自研云原生数据库POLARDB实现了技术的全面升级。POLARDB MySQL 8.0兼容版于9月12日正式发布,这是全球第一个兼容MySQL 8.0版本的云原生数据库。其次,POLARDB分布式数据库服务也正式发布,其存储容量支持最多超100TB。再次,POLARDB的高性能存储引擎X-Engine即将发布,X-Engine存储引擎具有高性能和高压缩率,并且经历了2018年双11的实战考验。

 

5月份,POLARDB发布重大更新,为传统数据库提供了一键迁移上云能力,最快数小时内迁移完成,最多节省95%的迁移成本。

 

此外,在9月云栖大会上,阿里云正式发布了POLARDB Box一体机,能够更好地帮助用户在私有云上使用POLARDB数据库,用户部署在自有数据中心即可享受云数据库的便捷体验。

 

 
本期新秀:AnalyticDB年度总结

 

2019年7月,阿里云分析型数据库AnalyticDB 3.0发布

 

AnalyticDB是阿里云全新一代云原生OLAP数据库产品,成为云端托管的PB级SQL数据仓库。其架构较之前版本更轻量,数据更安全,且满足写入强一致、实时可见;同时具备的弹性扩展能力可扩容至数千节点的超大规模,支持PB级以上数据容量

 

技术上其采用行列混存技术、自动索引、智能优化器,可对千亿级别的数据进行即时的多维度分析透视;其查询速度相比传统的关系型数据库快10倍以上;其全面兼容MySQL协议和SQL:2003,通过标准的SQL和常用的BI工具以及ETL工具平台即可使用。

 

2019年,分析型数据库AnalyticDB通过了基础能力和性能双料认证,通过了全球最大规模的TPC-DS 100TB测试标准,完成640节点的分布式分析型数据库测试,成为迄今为止信通院评测认证的最大规模分析型数据库集群。

 

 
TBase开源及腾讯云多款产品更新版本

 

1、腾讯自研HTAP数据库TBase开源

 

TBase是腾讯数据平台团队在开源的PostgreSQL基础上研发的企业级分布式HTAP数据库管理系统,已在11月8日开源。

 

开源地址:https://github.com/Tencent/TBase

国内镜像地址:https://git.code.tencent.com/Tencent_Open_Source/TBase

 

TBase当前分为商用版和开源版两种版本,说明如下:

  • 开源版和商用版共用内核,协议和使用方法一致;

  • 商用版较开源版有更多的商业化功能;

  • 商用版较开源版的版本迭代更超前。

 

TBase开源版实现的技术突破详述如下:

  • 具备高性能可扩展的分布式事务能力,支持RC和RR两种隔离级别;

  • 支持高性能分区表,可使得数据检索效率成倍提升;

  • SQL方面兼容2003标准、PostgreSQL语法和常用Oracle函数&数据类型、窗口函数等。

 

2、8月28日,腾讯云正式宣布自研云原生数据库CynosDB的商业化

 

作为腾讯重磅发布的新一代云数据库CynosDB,本次发布有以下主要特性:

  • 完全兼容:100%兼容开源数据库引擎MySQL5.7和PostgreSQL10, 原有业务可以零改造平滑上云;

  • 海量存储:  128T无服务器(Serverless)架构的海量智能存储,在业务层无感知的情况下自动扩缩容,自动维护数据多个副本,副本自动故障检测修复,保障数据安全可靠;

  • 秒级弹性:  无状态(Stateless)的计算节点卸载了除日志外的所有IO,实现了秒级的故障切换和恢复,并可根据业务峰值需要完成秒级的升降配,实现计算资源的成本最优;

  • 效用计费:分布式共享存储按实际使用量计费,不用不计费,轻松应对业务数据量动态变化和持续增长。

 

3、9月19日,腾讯云图私有化部署版本发布正式版

 

其中值得关注的新特性/新功能/新改进/新修复有:

  • 支持私有化部署,支持云上大屏一键同步到云下;

  • 60+可视化组件任客户随意搭建炫酷大屏。

 

4、9月,腾讯云数据库正式按地域发布TXSQL 5.7-201908版本

 

该版本主要实现写性能提升,新增功能特性和内核参数,为MySQL提供更稳定、高效的性能和服务能力。其中,新增特性包括DROP大表操作异步化、GTID复制功能扩展、隐藏主键功能、非Super权限用户Kill链接的功能等。另外,在最新的TXSQL内核版本中,可以通过内核参数来指定事务调度算法。

 

TXSQL5.7_ 201908版以MySQL 5.7.18为基准版本进行5.7版本的内核开发与支持,新增功能特性如下:

  • DROP大表操作异步化

  • GTID复制功能扩展

  • 隐藏主键功能

  • 非Super权限用户Kill链接的功能

  • 其他优化特性

  1. 内核级别允许MySQL 5.7版本的gtid与MySQL 5.7版本的非gtid 建立主从关系,非gtid5.7事务同步到gtid 5.7实例上生成匿名事务,这个特性目前限于DTS迁移过程中使用,大大方便自建环境迁移上云;

  2. 添加以资源为优先级的锁调度方式。添加CATS(Contention-Aware Transaction Scheduling)锁调度方式,提升并发更新性能。

 

 
京东云数据库年度总结与展望

 

京东云数据库在2019年中发布了4个全新的数据库产品,并提供了数十项功能更新及优化。其中,云数据库RDS更高分通过了中国信息通信研究院“关系型云数据库”的评测,成为首批获得该权威认证的云数据库产品。
 
1、发布云数据库PostgreSQL
 
云数据库PostgreSQL是一款功能强大的关系型数据库,支持丰富的数据类型及地理信息扩展,具有强大的并行计算能力,并提供了高可用,弹性扩展、备份、监控等全套解决方案。
 
2、发布云数据库InfluxDB 
 
伴随物联网、车联网和人工智能的快速发展,由物理设备产生的数据呈指数级增长。京东云正式对外提供云数据库InfluxDB服务,可满足日益增多的时间戳数据存储需求,提升了数据库的易用性、安全性,可用性及扩展性,可降低管理维护成本,使客户专注于应用开发和业务发展。
 
3、发布云数据库Greenplum
 
云数据库 Greenplum 可提供在线MPP大规模并行处理数据仓库服务,用户在几分钟内即可设置和部署完成新的数据仓库,无需进行复杂的大规模MPP集群运维管理。
 
4、正式上线数据传输DTS产品
 
为简化数据库上云工作,京东云近期推出了数据传输DTS,支持MySQL、MariaDB、Percona、SQL Server、MongoDB等多种数据库迁移,可简单快速地将本地自建数据库迁移至京东云,源数据库在迁移过程中可继续正常运行,从而最大程度地减少应用程序的停机时间。
 
5、2019年产品重大功能更新汇总
 
1)云数据库MySQL、MariaDB、Percona
 
  • 国内云服务商里率先支持MySQL 8.0;

  • 支持NVME的本地盘,并新增了内存优化型规格(CPU内存比为1:8);

  • 全线支持实例在线的升降配,升级过程业务几乎无感知;

  • 支持自定义数据库端口,满足用户个性化需求;

  • 支持下载慢日志,错误日志。

 

 

2)云数据库SQL Server
 
  • 支持NVME的本地盘,并新增了内存优化型规格(CPU内存比为1:8);

  • 新增2017企业版,2016 标准版,Web版,2014 标准版,2012标准版,满足用户多样化的需求;

  • 支持实例在线的升降配,升级过程业务几乎无感知;

  • 支持调整并迁移数据库实例的可用区,适应用户不断变化的业务架构;

  • 支持自定义数据库端口,满足用户个性化需求。

 

 

3)云数据库DRDS
 
  • 支持水平扩容,可通过添加节点提升整个系统的存容量和处理能力;

  • 可通过DDL SQL创建拆分表,提升用户使用体验;

  • 支持全局自增ID,满足用户对自增ID的需求,同时也提供了更好的MySQL兼容性;

  • 可按多种时间维度进行数据拆分,提供了更加灵活的数据拆分方式;

  • 性能优化监控,提供多种重点SQL的监控,并可直观的查看各个表的数据分布情况;

  • 支持自定义数据库端口,满足用户个性化需求。

 

 

 
RadonDB发布1.0.8版本

 

12月中旬,MyNewSQL领域的RadonDB云数据库发布了1.0.8版本。其中值得关注的新功能有:
 
1、Attach/ Reshard功能上线
 
Attach/Reshard功能的背景:在用户业务运行一段时间,打算往RadonDB中迁移,可能需要一些迁移工具的辅助,需要付出一些时间和人力的代价,而且周期比较长。
 
为解决把单机/高可用MySQL中业务迁到RadonDB中痛点问题,零门槛,一键迁移,提升效率。并且发挥RadonDB底层存储MySQL先天优势,无缝接入RadonDB,且低耦合。Attach到RadonDB,不影响老业务的同时,可以通过RadonDB查看验证数据。Reshard可把MySQL中的单机数据打散到分布式数据库中,实现数据的智能分布,满足用户数据和流量横向扩展的需求,从单机数据库无缝过渡到分布式数据库。
 
2、支持partition list功能,满足一些金融业务法人隔离性的需求
 
3、支持'set autocommit=0' 自动开启事务功能
 
4、把迁移工具移到RadonDB中,成为功能子集
 
5、执行计划进行了大量重构和优化
 
6、进一步完善和细化权限管理
 
以上功能已全部包含在我们的master分支:
https://github.com/radondb/radon
https://github.com/radondb/radon/releases/tag/v1.0.8
 

推出dbaplus Newsletter的想法

 

dbaplus Newsletter旨在向广大技术爱好者提供数据库行业的最新技术发展趋势,为社区的技术发展提供一个统一的发声平台。为此,我们策划了RDBMS、NoSQL、NewSQL、时序数据库、大数据生态圈、国产数据库、云数据库等几个版块。

 

我们不以商业宣传为目的,不接受任何商业广告宣传,严格审查信息源的可信度和准确性,力争为大家提供一个纯净的技术学习环境,欢迎大家监督指正。

 

至于Newsletter发布的周期,目前计划是每三个月左右会做一次跟进,下期计划时间是2020年4月6日~4月17日,如果有相关的信息提供请发送至邮箱:newsletter@dbaplus.cn

 

感谢名单

 

 

最后要感谢那些提供宝贵信息和建议的专家朋友,排名不分先后。

 

  • 欢迎提供Newsletter信息,

    发送至邮箱:newsletter@dbaplus.cn

  • Github地址:

    https://github.com/dbaplus/DBAplus_Newsletter 

  • 欢迎技术文章投稿,

    发送至邮箱:editor@dbaplus.cn

 

>>>>

活动推荐

 

2020年4月17日,北京,Gdevops全球敏捷运维峰会将开启年度首站!重点围绕数据库、智慧运维、Fintech金融科技领域,携手阿里、浙江移动、中国银行、平安银行、中邮消费金融、中国联通大数据、新炬网络等技术代表,展望云时代下数据库发展趋势、破解运维转型困局。

最新评论
访客 2024年04月08日

如果字段的最大可能长度超过255字节,那么长度值可能…

访客 2024年03月04日

只能说作者太用心了,优秀

访客 2024年02月23日

感谢详解

访客 2024年02月20日

一般干个7-8年(即30岁左右),能做到年入40w-50w;有…

访客 2023年08月20日

230721

活动预告