DuckDB分析只读实例概述

更新时间:
复制为 MD 格式

RDS DuckDB分析只读实例以列式存储与向量化计算为核心,实现复杂分析查询性能百倍跃升,为企业在海量数据规模场景下提供实时分析能力,加速企业数据驱动型决策效能。

产品简介

DuckDB分析只读实例内置DuckDB引擎,具备如下特性:

  • 高性能分析能力:支持列式存储、即时编译、向量化执行、高效的内存管理和并行处理等能力。

  • 高度兼容MySQL:高度兼容MySQL语法和数据格式,无需修改原始查询语句,即可方便且高效地获取结果。

  • 数据同步机制:

    • 存量数据同步:创建DuckDB分析只读实例时,系统会从主实例同步存量数据,并自动转换成DuckDB引擎格式。

    • 增量数据同步:DuckDB分析只读实例创建完成后,主实例的增量数据会通过MySQL Binlog原生复制机制实时同步至DuckDB分析只读实例。数据始终在RDS内流转,无需依赖外部数据同步工具。技术详情,请参见DuckDB分析实例的技术原理

适用场景

  • 聚合分析:对于聚合分析(如日志类数据),DuckDB分析只读实例可提供高效的聚合查询。

  • 多表连接查询:对于多表JOIN的查询业务,可显著提升MySQL在分析性能上的表现。

DuckDB分析只读实例、只读实例和OLAP型数据库对比

相比于使用主实例、只读实例或OLAP型数据库进行复杂查询,DuckDB分析只读实例具备如下优势

  • 性能强:相比InnoDB引擎,复杂查询性能提升两个数量级。

  • 兼容度高:100%兼容MySQL协议和数据类型,高度兼容SQL语法和DDL。

  • 数据同步高效稳定:自建Binlog原生复制通道,同步链路更加稳定高效,无需额外的数据同步费用

  • 资源隔离:DuckDB分析只读实例处理复杂分析查询,主实例和常规只读实例进行事务处理,资源隔离,互不影响。

对比项

DuckDB分析只读实例

只读实例

OLAP型数据库

适配业务

复杂分析查询

事务处理

复杂分析查询

分析查询性能

数据同步方式

Binlog原生复制

Binlog原生复制

DTS数据同步链路

MySQL兼容性

数据类型

完全兼容

完全兼容

不兼容(需字段映射)

SQL语法

高度兼容(大于99.9%)

完全兼容

不兼容(需重写SQL)

DDL

高度兼容

完全兼容

少量兼容

运维成本

低(一体化实例)

低(一体化实例)

高(需额外维护数据库及同步链路)

免费试用与体验

免费试用DuckDB分析实例

企业用户试用

企业用户可免费试用规格为8核 16GBDuckDB分析主实例和分析只读实例1个月。符合条件的企业用户,在售卖页下单时费用会显示为0元,直接下单即可享受免费试用权益。

  • 试用次数限制:每位企业用户可试用分析主实例、分析只读实例,且每种实例中可选择包年包月试用、按量付费试用各一次。

  • 试用分析主实例:包年包月试用按量付费试用DuckDB分析主实例(规格码为myduck.x2.xlarge.xc,独享型,816GB)。

  • 试用分析只读实例:需要有适用范围。您可以参考创建DuckDB分析只读实例,在购买页配置以下参数。配置完成后,页面右下角配置费用自动变为0元(即免费试用)。

    • 计费方式选择包年包月或按量付费。

    • 规格码选择myduckro.n2.xlarge.1c或者rds.myduckro.n2.xlarge.2通用型,8核 16GB)。

    • 购买时长调整为1个月(仅包年包月实例需要设置)。

    • 每个付费模式下的只读实例规格,同一个阿里云实名认证用户仅有一次免费试用机会。您可在云盘类型(myduckro.n2.xlarge.1c)或本地盘类型(rds.myduckro.n2.xlarge)的DuckDB分析只读实例中任选其一进行试用,二者权益不叠加。

  • 若试用实例为包年包月方式,试用期(1个月)结束后会自动释放。试用到期后续费或新购DuckDB实例,均可享受优惠,具体折扣以购买页为准。

  • 若试用实例为按量计费方式,试用期(1个月)结束后实例不会自动释放,将开始正常计费。如后续无需使用,请及时释放实例。

个人用户试用

本次活动提供以下免费试用规格的DuckDB主实例和分析只读实例。符合条件的个人用户,可以登录阿里云免费试用中心,直接开通创建一个免费试用的DuckDB分析主实例,或者在RDS MySQL主实例详情页添加一个免费试用的DuckDB分析只读实例。

  • 关于DuckDB主实例免费试用:
    主实例提供48GB的免费试用规格,可选择体验3个月的基础系列(myduck.n2.large.1)或体验1个月的集群系列(myduck.x2.large.xc),任选其一进行试用,二者权益不叠加。

  • 关于DuckDB分析只读实例免费试用:
    分析只读实例提供48GB的免费试用规格,可免费试用3个月,并支持选配高性能云盘(myduckro.n2.large.c)或高性能本地盘(rds.myduckro.n2.large.2),任选其一进行试用,二者权益不叠加。

说明
  • 同一阿里云实名认证的用户各有一次免费试用DuckDB主实例和分析只读实例的机会。

  • 购买方式为包年包月,试用期结束后会自动释放。

  • 试用到期后续费或新购DuckDB实例,均可享受优惠,具体折扣以购买页为准。

免费体验复杂分析查询能力

您可以前往瑶池数据库解决方案体验馆,免费体验DuckDB分析实例加速复杂SQL查询的能力。

说明

欢迎您加入RDS产品技术用户交流钉钉群(106730000316),获取更多RDS性能相关信息,您可以在群内进行咨询、交流和反馈。

附录:DuckDB分析只读实例性能测试

下文以标准TPC-H测试(用于评估数据库复杂查询性能的基准测试)为例,展示DuckDB分析只读实例在分析查询性能上的表现。

测试环境

  • 数据集:使用TPC-H sf-100数据集,数据规模为100 GB,数据来源于DuckDB 官网

  • 运行环境:各数据库运行在相同规格的ECS主机上,配置为32CPU、128 GB内存,存储类型均为 ESSD云盘,确保测试环境的一致性。

  • 对比对象:RDS MySQL常规实例(版本号8.0.36、InnoDB引擎)、ClickHouse社区版(版本号25.3)。

  • 测试方法:在保证查询结果一致的前提下,各数据库先进行3轮预热运行(结果不计入统计),随后运行3轮正式测试,并取其平均值作为最终性能结果。

测试结果

以下表格展示了在TPC-H sf-100场景下,DuckDB分析只读实例、RDS MySQL实例(InnoDB引擎)以及ClickHouse在每条查询(Query)上的执行时间对比。

Query ID

执行时间(单位:秒)

DuckDB分析只读实例

RDS MySQL常规实例(InnoDB引擎)

ClickHouse

q1

0.92

1134.25

3.47

q2

0.15

1800

1.52

q3

0.53

802.94

3.65

q4

0.46

1000.45

2.77

q5

0.5

1800

5.38

q6

0.22

566.73

0.73

q7

0.59

1800

6.06

q8

0.68

1800

6.99

q9

1.44

1800

13.29

q10

0.91

894.35

3.22

q11

0.11

79.63

1.1

q12

0.44

734.35

1.69

q13

1.59

454.15

5.85

q14

0.38

574.07

0.83

q15

0.31

568.43

1.53

q16

0.32

63.56

0.52

q17

0.89

1800

7.96

q18

1.59

1800

3.11

q19

0.8

1800

2.96

q20

0.51

1800

3.38

q21

1.64

1800

内存不足

q22

0.33

361.4

4

总计

15.31

25234.31

80.01

测试结论

  • DuckDB分析只读实例对比RDS MySQL实例(InnoDB引擎)

    image

    image

    TPC-H测试中,RDS MySQL实例(InnoDB引擎)的总执行时间为25234.31秒,而DuckDB分析只读实例的总执行时间仅为15.31秒,性能差距超过3个数量级。RDS MySQL实例(InnoDB引擎)在处理复杂查询时表现出明显不足,其中q5、q7、q8、q9、q17、q18、q19、q20、q21等查询因超时未能完成,超时时间统一计为1,800秒。表明RDS MySQL DuckDB分析只读实例针对大规模数据分析查询任务上表现优秀,显著提升了复杂查询的效率。

  • DuckDB分析只读实例对比ClickHouse

    image

    image

    ClickHouse的总执行时间为80.01秒,相比之下DuckDB分析只读实例的总执行时间仅为15.31秒,在整体性能上显著领先。ClickHouse在执行q21查询时因内存不足导致报错(Memory limit exceeded),无法完成查询;其余查询中DuckDB分析只读实例均大幅优于ClickHouse,展现了其复杂分析场景下更强的查询性能和稳定性。