java解析ip数据包-java解析ip包时间
本期要点
DB-Engines数据库排行榜
新闻资讯
一、RDBMS
二、NoSQL
三、NewSQL
四、大数据生态圈
五、国产数据库
六、云数据库
推出dbaplus Newsletter的想法
感谢名单
为方便阅读、重点呈现,本文对各板块内容进行了精简,需阅读完整版可登录云盘下载:
https://pan.baidu.com/s/1tHtTIoHx08YxhEYNeRTV3A(提取码:cag1)
DB-Engines数据库排行榜
以下取自2020年8月的数据java解析ip数据包,具体信息可以参考,数据仅供参考。
DB-Engines排名的数据依据5个不同的因素:
新闻资讯
1、2020年5月,开源数据库CockroachDB收获D轮8700万美元融资,目前已积累了超过1.951亿美金的融资。
2、2020年6月8日,蚂蚁集团正式宣布将自研数据库产品OceanBase独立进行公司化运作,成立由蚂蚁100%控股的数据库公司北京奥星贝斯科技,并由蚂蚁集团CEO胡晓明亲自担任董事长。
3、2020年6月30日,Redis作者antirez辞去Redis项目的领导者和维护者职务,选择将Redis交给Redis社区打理,并邀请了两位同事Yossi Gottlieb和Oran Agra继续维护Redis项目。而他将成为Redis Labs顾问委员会的一员,会为Redis的更多发展可能性输出自己的想法。至于是否还会写代码,antirez表示自己也不知道,目前还没制定好未来的计划。
4、2020年6月30日,华为正式宣布开源数据库能力,开放openGauss数据库源代码,并成立openGauss开源社区。
5、2020年7月1日,MySQL数据库的开发人员宣布,该团队将停止使用并替换掉数据库源代码和文档中的master、slave、blacklist(黑名单)和whitelist(白名单)等术语。在官方发布的博客文章中,MySQL团队表示,将用新的术语分别替换当前的术语,分别对应为source、replica、blocklist和allowlist。
RDBMS
MySQL发布8.0.21(GA)版本
2020年7月13日,MySQL发布8.0.21版本,主要更新有:
一、InnoDB
这一功能的主要应用场景是初次进行数据导入。大家知道,为了保证数据能够完整的写入,防止意外发生时的数据丢失,MySQL会在数据写入磁盘之前,先将更改的内容写入redo日志。写入redo日志会保证数据的完整,但是写入性能上会有一定的消耗。因此可以在首次进行数据加载的时候关闭redo日志,以提升写入速度,加载完毕后,开启redo日志。通过ALTER INSTANCE ENABLE|DISABLE INNODB REDO_LOG;可以动态的开启/关闭redo日志。
当用户能够明确知道表空间文件未做过任何改动时java解析ip数据包,可以选择OFF,这时MySQL服务器启动时将不会去检查表空间文件,可以加快启动速度。这一选项主要是针对使用较旧的服务器提供的,可以避免磁盘速度过慢,服务器启动时间过长。
将之前使用的单一lock mutex用global latch,table shard latches,page shard latches进行替换,拆分成更细的粒度,避免以往使用单一lock mutex产生的瓶颈。
这样做的目的是允许DBA限制创建文件的位置,避免在恢复过程中出现意外。
之前创建UNDO表空间时,没有使用redo日志,在这个版本里为其加上了redo日志,使其过程符合ACID,并且避免在截断UNDO时使用检查点。
二、SQL DDL
现在支持CREATE TABLE…SELECT 的原子性,之前该语句会当做两个不同的语句CREATE TABLE 和 SELECT INTO来执行,现在可以作为一个事物进行提交和回滚,因此也适用于MGR。
三、优化器
新的优化器开关,当存在限制语句,使用group by或者order by时,可以通过它将非排序索引切换到排序索引。
通过这项改进,即使是单表也可以使用优化器的半连接优化策略,避免了以往使用硬代码的简单方法。
四、群组复制
使得MGR可以适用于内存容量小的服务器。
可以指定IP和端口号,用于MGR的数据恢复阶段的数据来源。这一改进主要用于安全性和稳定性的改进。
这一改进可以避免某些环境下产生的安全性问题。
增大了group_replication_autorejoin_tries和group_replication_member_expel_timeout的默认值,用以改善网络瞬时故障导致的群组不可用,增加了群组的稳定性。
MariaDB发布10.5.5(GA)版本
MariaDB 10.5是当前的GA稳定版本,发布于2020年6月。
一、Replication复制权限发生变化
例如,在之前的版本,搭建主从复制,赋予账号权限通常是:
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'repl'@'%' IDENTIFIED BY 'repl';
MariaDB 10.5版本里,改为:
GRANT REPLICATION SLAVE, REPLICATION SLAVE ADMIN, REPLICATION MASTER ADMIN, REPLICATION SLAVE ADMIN, BINLOG MONITOR, SUPER
ON *.* TO 'repl'@'%' IDENTIFIED BY 'repl';
二、支持基于binlog为ROW行的复制,触发器在slave从库上工作
在传统认知下,基于binlog为statement语句的复制,触发器会在slave从库上工作;而如果基于binlog为ROW行的复制,触发器不会在slave从库上工作。
With statement-based replication, triggers executed on the master also execute on the slave. With row-based replication, triggers executed on the master do not execute on the slave.
参考文献:
在MariaDB 10.5版本里,可以通过参数:
set global slave_run_triggers_for_rbr = 'ENFORCE';
强制设置基于binlog为ROW行的复制,触发器在slave从库上工作。
这样的好处是:当你在从库上运行pt-online-schema-change修改表结构时,从库的数据和主库是一致的。
注:MySQL 8.0不支持。
三、DELETE语句支持RETURNING数据回滚功能
可以使用语法DELETE ... RETURNING select_expr [,select_expr2 ...]将单个表的已删除行的结果集返回给客户端。
这样的好处是,DBA手滑也没有关系,可以快速找回误删除的数据。执行的时候,可以在SecureCRT或Xshell里开启日志记录功能,方便找回数据。
注:
四、支持更改字段名采用ALGORITHM=INSTANT算法
MariaDB 10.5新的ALTER TABLE语法:
ALTER TABLE t1 RENAME COLUMN c_old TO c_new ,ALGORITHM=INSTANT;
1000万行数据秒级更改字段名字,不锁表。
注:MySQL 8.0已支持该语法。
五、支持EXCEPT ALL、INTERSECT ALL语法
举例说明:
mysql> CREATE TABLE t1 (id INT);
Query OK, 0 rows affected (0.00 sec)
mysql> CREATE TABLE t2 (id INT);
Query OK, 0 rows affected (0.01 sec)
mysql> INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6);
Query OK, 6 rows affected (0.00 sec)
Records: 6 Duplicates: 0 Warnings: 0
mysql> INSERT INTO t2 VALUES (1),(2),(3);
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> select * from t1 EXCEPT select * from t2;
+------+
| i |
+------+
| 4 |
| 5 |
| 6 |
+------+
3 rows in set (0.00 sec)
mysql> select * from t1 INTERSECT select * from t2 ;
+------+
| i |
+------+
| 1 |
| 2 |
| 3 |
+------+
3 rows in set (0.00 sec)
注:MySQL 8.0不支持该语法。
PostgreSQL发布13 Beta 3版本,年底即将Release
一、2020年8月,PostgreSQL 13 Beta 3发布,年底即将Release
主要增强:
二、PostgreSQL常用插件动态
1、分布式插件citus发布9.4
citus是PostgreSQL的一款比较流行的sharding插件,agpl开源协议,目前为微软所拥有,国内苏宁有较大量使用案例。
2、地理信息插件PostGIS 3.1 alpha2版本发布
PostGIS是专业的时空数据库插件,在测绘、航天、气象、地震、国土资源、地图等时空专业领域应用广泛。同时在互联网行业也得到了对GIS有性能、功能深度要求的客户青睐,比如共享出行、外卖等客户。
3、时序插件TimescaleDB发布1.7.2
TimescaleDB是PostgreSQL的一款时序数据库插件,在IoT行业中有非常好的应用。github star数目前有9100,是一个非常火爆的插件。
1.7.2的主要功能增强包括:
三、PostgreSQL衍生产品动态
1、gpdb发布6.10.1版
gpdb是兼容PostgreSQL的开源mpp数据库,适合OLAP场景。
OceanBase发布2.2.6版本
2020年8月20日,OceanBase正式发布2.2.6版本,其中值得关注的新特性有:
一、新增功能
1、物理备份恢复
从2.2.5版本开始,OceanBase提供了基于数据块copy的物理备份恢复特性。在2.2.6版本中,物理备份恢复提供了更加丰富的功能,并对之前版本的很多功能进行了优化来满足客户对于备份恢复的需求:
2、主备库
在传统数据库领域中,主备模式是数据库系统实现两地三中心容灾的主要特性,OceanBase在2.2.6版本中提供了类似的解决方案:主备库。
2.2.6版本在其他方面也提供很多新的功能:
二、性能优化
三、兼容性提升
NoSQL
Redis 6.0.0为迄今改变最大版本,最新已发布6.0.6
2020年5月1日,Redis 6.0.0稳定版正式GA。如Redis作者antirez所说,这是迄今最“企业”化的版本(SSL与ACL等特性与企业极相关),也是最大的版本,同时也是参与人数最多的版本。GA版本除了比RC1更稳定,还对部分功能进行了重新设计或是进一步的改进:
截止至2020年8月底,Redis 6.0.6已发布,此版本修复了一些bug,其中主要内容包括:
新特性:
MongoDB发布4.4 Beta版本,被誉为一项“用户驱动的工程”
2020年6月9日,MongoDB 4.4发布beta版本,官方表示,MongoDB 4.4是一项“用户驱动的工程”,它提供了许多MongoDB社区最需要的功能和改进。
此版本主要更新内容有:
新版本还包括一项其他功能,例如复合哈希分片密钥、可恢复的初始同步、流复制、全局读写问题等等。
更多详情:
RocksDB发布6.11.4版本
2020年7月15日,RocksDB发布正式版6.11.4。最近RocksDB主要围绕着6.11.x和6.10.x这几个版本在进行迭代,主要特性如下:
NewSQL
TiDB发布4.0 GA版本
一、TiDB 4.0 GA Release Notes
2020年5月28日,TiDB 4.0 GA发版,此版本不光在稳定性、易用性、性能、云原生等各方面都有了巨大进步,新增的特性也让TiDB产品能够支持更多元的业务类型。
1、兼容性变化
TiDB
TiCDC
2、重点修复的Bug
TiKV
TiFlash
3、新功能
TiDB
TiFlash
TiKV
PD
Tools
TiCDC
二、云原生的混沌工程Chaos Mesh正式进入CNCF沙箱托管项目
2020年7月21日,云原生计算基金会(CNCF)宣布云原生的混沌工程Chaos Mesh正式进入CNCF沙箱托管项目,这是CNCF接纳的第二个由PingCAP团队设计并研发的项目。
Chaos Mesh是一个云原生的混沌工程(Chaos Engineering)平台,可在Kubernetes环境中进行混沌测试,在各种复杂的环境下可使用混沌工程来保证系统能正常稳定运行。现阶段,组成部分包括:
SequoiaDB即将发布5.0正式版
SequoiaDB 5.0版本即将在9月正式发布,主要技术特点包括:
大数据生态圈
Hadoop发布3.3.0,官方首个支持ARM架构的版本
2020年7月14日,Apache Hadoop团队发布了3.3.0版本,该版本也是官方首个支持ARM架构的版本,主要变更如下:
Flink发布1.11.1和1.10.2版本
一、Flink 1.11.1发布
2020年7月21日,Apache Flink社区发布了Apache Flink 1.11系列的第一个错误修正版本。此版本包含44个修复程序以及Flink 1.11.0的较小改进。部分更新内容如下:
1、Bugfix
2、Improvement
二、Flink 1.10.2发布
2020年8月26日,Apache Flink 1.10.2发布,这是Apache Flink 1.10系列的第二个Bugfix版本,总共包含73个修复程序以及针对Flink 1.10.1的小改进。官方强烈建议所有用户升级到Flink 1.10.2。
1、Maven
org.apache.flink
flink-java
1.10.2
org.apache.flink
flink-streaming-java_2.11
1.10.2
org.apache.flink
flink-clients_2.11
1.10.2
注意事项:在FLINK-18242之后,过时的类OptionsFactory和ConfigurableOptionsFactory会被移除(不适用于 release-1.10 系列),请使用RocksDBOptionsFactory和ConfigurableRocksDBOptionsFactory代替。如果任何类扩展了DefaultConfigurableOptionsFactory,也请重新编译应用程序代码。
默认情况下,在FLINK-17800之后,会为RocksDB的ReadOptions将setTotalOrderSeek设置为true,以防止用户误用optimizeForPointLookup。同时支持ReadOptions通过RocksDBOptionsFactory进行自定义。如果观察到出现任何性能下降的情况,请重新设置setTotalOrderSeek为 false(根据测试通常不会发生)。
2、部分更新内容
Sub-task
New Feature
Improvement
Elasticsearch发布7.9.0版本
2020年8月,Elasticsearch发布了7.9.0版本,汇集了之前发布的新功能特性,如下:
更多详情:
Greenplum发布6.10.1版本
Greenplum 6.0升级了对应Postgres版本的内核(9.4),从而获得了更多Postgres的兼容特性;大幅增强了OLTP型负载的处理能力,从而胜任流计算和HTAP的场景。Greenplum 6.0的其它重要更新还包括:支持复制表、在线扩容、磁盘配额、支持Zstandard压缩算法、基于流复制的全新高可用机制等。
Greenplum 6.0自正式版发布以来,保持每月一个小版本的迭代速率,持续为用户提供新功能和修复补丁,目前的最新版是6.10.1。
Greneplum 6.10.1于2020年8月14日发布,累积更新的功能如下:
一、Greenplum 6.10
新增功能:
二、Greenplum 6.9
新增功能:
三、Greenplum 6.8
新增功能:
国产数据库
ArkDB兼容MySQL 8.0.20
2020年8月18日,ArkDB兼容MySQL 8.0.20,其中值得关注的新改进有:
此外,新版本也涵盖了一些新功能:
OushuDB发布v4.0 GA版本
2020年7月17日,偶数科技正式发布高性能数据库OushuDB v4.0 GA版本,在4.0 Beta版本的基础上增加了很多广受欢迎的新特性,同时在性能和稳定性方面均得到大幅提升。
在之前发布的Beta版本中,主要增加了分布式原生表存储Magma,并将其作为OushuDB的新一代数据存储底层实现,和HDFS并驾齐驱。相较于Beta版,本次正式版增加了以下新特性:
云数据库
云原生数据仓库AnalyticDB发布新功能
一、云原生数据仓库AnalyticDB PostgreSQL版
二、云原生数据仓库AnalyticDB MySQL版
更多详情:
腾讯云两款数据库产品更新
一、云原生数据库CynosDB一主多从上线
2020年6月15日,CynosDB全面升级集群扩展能力,支持一主多从,秒级添加只读节点,基于Redo日志的主从同步延迟达到毫秒级。
功能速递:
更多详情:
二、Redis混合存储版正式发布
2020年8月20日,Redis发布混合存储版。云厂商中唯一支持原生Redis混合存储方案的产品,产品特性包括:
京东智联云新产品公测及产品功能更新
一、分析型云数据库JCHDB公测
JCHDB是京东智联云基于开源ClickHouse打造的分析型云数据库,具有分布式架构,可实现多核、多节点的并行化查询,其查询性能比传统开源数据库的高1-2个数量级。
主要特性:
二、产品功能更新
1、云数据库MySQL、MariaDB、Percona
2、云数据库PostgreSQL
3、数据库仓库JDW
4、分布式关系型数据库DRDS
5、云搜索Elasticsearch
6、数据传输DTS