欢迎光临散文网 会员登陆 & 注册

Databend 在数据归档分析中的优秀表现

2022-06-13 18:25 作者:Databend  | 我要投稿

本篇文章基于 Databend 的用户测试体验整理,详情可戳原文链接查看,正文总体分为四部分:

  • Databend 产品简介

  • Databend 对 Ceph 的支持

  • Databend 在数据归档中的优秀表现

  • 产品使用总结

Databend 产品简介

atabend 是一个使用 Rust 研发、开源、完全面向云架构的新式数仓,提供极速的弹性扩展能力,致力于打造按需、按量的 Data Cloud 产品体验。具备以下特点:

  • 开源 Cloud Data Warehouse 明星项目

  • Vectorized Execution 和 Pull & Push-Based Processor Model

  • 真正的存储、计算分离架构,高性能、低成本,按需按量使用

  • 完整的数据库支持,兼容 MySQL,Clickhouse 协议,SQL Over HTTP 等

  • 具备完善的事务性,支持 Time Travel,Database Clone,Data Share 等功能

  • 支持基于同一份数据进行的多租户读写、共享操作

Databend 官方教程:databend.rs/zh-CN/doc/d

Databend 对 Ceph 的支持

Databend 部署


产品架构图
  • 架构简述:

Query 计算节点:用于协议的解析、SQL的计算下推。

Meta 元数据节点:用于存储元数据信息,存储在本地磁盘。

  • 存储节点支持:

公有云:AWS、阿里、腾讯等的 OSS 产品。

私有化支持:Minlo、Ceph 等等的 S3 协议。

  • 简述部署步骤:

  1. 下载最新的二进制包。

  2. 解压压缩包,并且创建文件夹。

  3. 修改配置文件。

  4. 启动。

  • 部署环境:

操作系统:Centos7Cpeh 版本:12.2.13Databend 版本:v0.7.65
总的来说,Databend 部署相当简单。

第一步:下载 Databend

第二步:解压缩并创建目录

第三步:修改启动配置文件


第四步:启动 Databend

第五步:验证 Databend 并支持 Ceph


Databend 在数据归档中的优秀表现

  • 数据归档选型

线上的大量的历史数据,比如日志数据,交易流水,如果持续存在 MySQL 中,会占用大量的存储空间,对线上业务性能造成抖动。但是业务还有读取的需求,不能彻底删除,甚至还有一定的分析需求。

例如:业务想计算一下 2000 年某个月某个条件的总数等等,就要考虑对数据进行定期归档,现在归档数据库类型的选择也有很多,可以使用 pt-archiver 工具进行归档,或者利用 DBA 自己写的小程序进行归档。 我们对于归档数据的选择,首先要满足以下条件:

  • 兼容 MySQL 协议,这样业务的改动最小。如果选择其他的协议,业务改动较大。

  • 高性能的压缩比,可以节省存储成本。

  • 有一定的计算分析能力。

那么在归档库的选型中就有几种可以参考:MySQL(单独归档集群)、Databend 等。

  • 数据压缩对比

产生2 亿的数据分别导入到 MySQL、Databend 看一下数据的压缩情况。

物理大小:

SQL:88 G

CSV:84 G

Databend:8 G

MySQL:47 G

  • 数据分析类型查询测试

主要测一下 MySQL、Databend 对于一些计算类型的 SQL 查询响应时间。

环境描述:

服务器硬件配置:40 C,256 G,SSD硬盘。
MySQL:Innodb buffer pool 设置 100 G,SSD 硬盘。
Databend:默认配置,但 S3 是机械硬盘。

selectcount(*)fromontime;

执行时间:

Databend-hdd:0.02 sec

Databend-ssd:0.04 sec

MySQL:4 min 9.05 sec


selectcount(*),YearfromontimegroupbyYear;(没索引)

执行时间:

Databend:1.89sec

MySQL: 5min19.20sec


selectcount(*),YearfromontimegroupbyYear;(year索引)

执行时间:

Databend-ssd:0.56 sec

Databend-hdd:1.89 sec

MySQL:2 min 46.72 sec


测试结论:Databend 对比 MySQL 在进行分析类型的 SQL 响应时间上还是略有优势的。

  • MySQL 协议兼容性

Databend 支持 MySQL 协议、Clickhouse 协议、HTTP 协议。使用 MySQL 程序基本上可以无缝兼容 Databend。

产品使用总结

  • 归档方面:

在数据库归档上 Databend 相对 MySQL 还是很有优势的,比如数据压缩方面以及数据分析类型 SQL 查询方面。

且 Databend 可以使用机械硬盘,不需要太好的硬件就能跑出很好的效果。 如果大家有归档分析场景的场景,也推荐大家尝试一下 Databend。单纯归档的话,成本可以降很多。如果后面需要计算了  还可以利用 Databend 优秀的特性:比如可以轻松的扩展。

  • 部署相关:

Databend 的部署和支持 Ceph 方面相对简单,主要针对云原生,云数仓等场景,对比传统数据库更有优势。

  • Databend 高可用性:

Query 节点,属于无状态节点。只需要保证 Mate 也就是元数据不丢失即可。可以通过多设置副本的方式。(个人想法,Meta 可以实时保存到存储层一份,做实时备份,只用于紧急恢复使用。)

  • 存储层:

云场景会保证 OSS 层的高可用。私有云环境就需要保证 Ceph、MinIo 的高可用行。私有化的场景在完善对 k8s 的支持,完全可以做到开箱即用, 真正实现按需计费,按计算能力计费。

作者信息:田帅萌,高级 DBA


关于 Databend

Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。

  • Databend 文档:databend.rs/

  • Twitter:Twitter.com/Datafuse_La

  • Slack:datafusecloud.slack.com

  • Wechat:Databend

  • GitHub :github.com/datafuselabs


文章首发于公众号:Databend


Databend 在数据归档分析中的优秀表现的评论 (共 条)

分享到微博请遵守国家法律