利用 Databend + COS助力 CDH 分析 | 某医药集团
作者: 黄志武
某医药集团信息中心数据库组组长,13 年数据库行业从业经历,Oracle OCM,关注 Oracle、MySQL、Redis、MongoDB、Oceanbase、Tidb、Polardb-X、TDSQL、CDH、Clickhouse、Doris、Databend 等多方面的关键领域技术,服务过传统通信、电力,互联网、移动互联网等行业。
某医药集团是中国具有影响力的药品零售连锁集团化企业。在数字化转型升级的趋势背景下,支撑持续稳定的零售业务生态,离不开高效的信息化、数据化、智能化的技术支持。
需求概述
某医药集团零售供应链数据庞大,涉及大表较多,最大单表数据量达到 93 亿,历史数据存储在大数据服务 CDH 。现在大数据平台数据增长迅速, 数据量超过 30T,机器集群硬件配置不足以承担目前的业务压力,成本投入也越来越大。
由于技术架构升级改造原因,该 CDH 需要下线,但是业务部门提出需要保留数据用于审计追溯。若考虑通过关系型分布式数据库进行迁移,如 OceanBase、TiDB,对于历史数据的关联并行查询也是一种挑战;由于时间紧迫,急需一种投入成本低、见效快的替代方案。
Databend 是一款开源、易用的云数仓,面向对象存储设计,支持使用 COS 对象存储作为存储后端,并且能够提供对复杂查询的支持,完美匹配某医药集团的业务需求。
认识 COS 对象存储
COS 对象存储(Cloud Object Storage)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。具备稳定持久、安全可靠、简单易用、接入便捷的特点。
产品优势
稳定持久
提供数据跨多架构、多设备冗余存储,为用户数据提供异地容灾和资源隔离功能,实现12个9的数据可靠性和和99.995% 的可用性。
安全可靠
提供防盗链、数据加密、监控告警等功能综合保护数据安全。
成本最优
按需按量使用提供生命周期管理,支持数据定期沉降、删除等功能,进一步降低成本。
简单易用
提供图形化程序、命令行工具、协议工具等对存储对象进行批量操作,让使用更为简单。
接入便捷
提供丰富的 SDK 接入工具,简单且可靠,同时提供了线上、线下多种迁移服务,让用户的业务快速上云。
服务集成
提供全球加速、CDN加速、三级加速能力及提供「存储 + 处理」一体化解决方案,满足各种业务需求。
认识 Datebend 云数仓
Databend是一款使用 Rust 研发、开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓,具有即时扩缩容能力,能在数分钟内增加数百倍的算力,为企业提供了一个用于存储、管理和分析大量数据的集中式平台,从而助力企业更准确地洞察业务、制定战略。
Datebend 产品特点
基于共享存储的设计
Databend 支持腾讯云对象存储COS 。这种设计模式允许存储按使用量付费,具有高度的弹性。当计算节点需要扩展时,数据无需进行任何移动。
存储和计算分离的架构
在此架构下,计算节点可以根据需求进行动态启动。当业务处于空闲状态时,计算节点会自动进入休眠,从而有效节省资源。
面向对象存储的调度器设计
由于对象存储存在多种限制并且易于抖动,其并非专为数据仓库设计。因此,Databend 的调度器和优化器针对对象存储进行了大量优化。例如,调度器上的存储和计算在运行时具有双向感压特性。
高度的弹性伸缩性
Databend 采用 Serverless 设计,能够快速进行弹性伸缩,以适应各种业务需求和负载变化。
技术选型
Databend 是一个数据仓库平台,同样具备类似通用的大数据平台 CDH 的的支持能力。在选择数据归档方案时,分 3 个方面做了对比:
存储成本
主要对比了引入对象存储和使用 HDD、SSD 的成本,其中对象存储的容量成本是 HDD 的 1/10, 是 SSD 的 1/30 。而且,使用 COS 作为存储后端,无需进行硬件采购、部署和运维,可以节省运维工作和托管成本。
数据迁移成本
数据备份文件导出后直接迁到对象存储中,可以无脑在 Databend 进行挂载,通过读取备份文件的表对象信息完成创建表和加载数据。
关联查询能力
查询方式简单,兼容 MySQL 协议,可不用改变 Mysql 的使用习惯,直接无需过多改动即可通过原来的业务 SQL 进行关联查询。
Datebend 方案
Databend 目前主要服务于某医药集团的数据归档场景,具体的方案如下图所示:

大数据平台 CDH 的历史数据导出为 Parquet 格式文件。
通过腾讯云的文件迁移同步工具cos_migrate_tool将备份文件传输至腾讯云COS。
Databend 采用单节点部署方案,直接加载对应 COS ,自动识别 COS 下文件。
数据加载流程
要使用 Databend 进行历史数据关联查询,数据加载链路是关键。
使用 Stage 挂载备份的历史数据
Databend 支持创建外部 Stage 来关联和管理位于不同存储服务中的数据。COS 提供兼容 S3 的 API 接口,可以方便通过 S3 协议访问数据。
Databend 也支持 COS 的原生 API ,可以提供高性能和稳定的数据访问支持。
创建 Stage
create stage if not exists mystage url ='s3://cos-bucket/backup/' connection=(endpoint_url='https://cos.ap-guangzhou.myqcloud.com' access_key_id='ACCESS_KEY_ID' secret_access_key='SECRET_ACCESS_KEY');
查看 Stage 中的文件
list @mystage;
加载 Stage 中数据到 Databend
Databend 支持模式推断,可以根据数据文件获取相应的表结构,从而简化建表过程。同时,Databend 也支持直接查询 Stage 中的数据文件,方便进行临时分析和数据诊断。
从文件中获取表结构来创建表
create table t1 as select * from @mystage/bi/t1/ (pattern=>'.*parq') limit 0;
加载文件往表中写入数据
copy /*+ set_var(max_threads=5) */ into t1 from @mystage/bi/t1/ pattern='.*[.]parq' file_format=(type=parquet);
查询
Databend 支持复杂的查询语法,可以满足平时业务需求。
简单查询 10 条数据
select * from t1 limit 10;
现状与总结
目前使用 Databend 和腾讯云 COS 技术组合后,大表数据的查询加载速度提升了2倍,满足日常的数据审计查询需求。采用 COS 作为 Databend 的存储后端相比于 CDH 本地盘和副本模式,成本降低了约15倍。
采用 Databend + COS 有非常不错的体验,简单易用、查询迅速,登录腾讯云即可使用【https://console.cloud.tencent.com/cos/dataEcology】,对业务常用的历史数据查询无缝切换,极大地缩短了项目周期,提升了效率,减少了业务方的焦虑。
利用 Databend + COS助力 CDH 分析 | 某医药集团的更多相关文章
- 利用backtrace和objdump进行分析挂掉的程序
转自:http://blog.csdn.net/hanchaoman/article/details/5583457 汇编不懂,先把方法记下来. glibc为我们提供了此类能够dump栈内容的函数簇, ...
- linux下利用elk+redis 搭建日志分析平台教程
linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...
- 利用R语言打造量化分析平台
利用R语言打造量化分析平台 具体利用quantmod包实现对股票的量化分析 1.#1.API读取在线行情2.#加载quantmod包3.if(!require(quantmod)){4. instal ...
- PB 级数据处理挑战,Kubernetes如何助力基因分析?
摘要: 一家大型基因测序功能公司每日会产生 10TB 到 100TB 的下机数据,大数据生信分析平台需要达到 PB 级别的数据处理能力.这背后是生物科技和计算机科技的双向支撑:测序应用从科研逐步走向临 ...
- 利用元数据提高 SQLFlow 血缘分析结果准确率
利用元数据提高 SQLFlow 血缘分析结果准确率 一.SQLFlow--数据治理专家的一把利器 数据血缘属于数据治理中的一个概念,是在数据溯源的过程中找到相关数据之间的联系,它是一个逻辑概念.数据治 ...
- 案例分享|某医药集团的BI建设案例
相比于传统型BI,越来越多的企业开始接受并青睐新型的自助式BI,因其项目上线快,失败风险小,简单易用,颇受赞誉.以下是某医药集团上线帆软BI系统FineBI的案例,从用途架构.指标分析.和信息交互几方 ...
- SQL中利用DMV进行数据库性能分析
相信朋友对SQL Server性能调优相关的知识或多或少都有一些了解.虽然说现在NOSQL相关的技术非常的火热,但是RMDB(关系型数据库)与NOSQL是并存的,并且适用在各种的项目中.在一般的企业级 ...
- 利用powershell进行windows日志分析
0x00 前言 Windows 中提供了 2 个分析事件日志的 PowerShell cmdlet:一个是Get-WinEvent,超级强大,但使用起来比较麻烦:另一个是Get-EventLog,使得 ...
- 利用grep命令查找字符串分析log文件的一次实践
需求场景: 我需要分析一个服务器访问日志,分析百度蜘蛛这个月对求索网页面的抓取情况. 分析问题: 我的一个access.log文件大小有35M,不可能直接通过打开查看.我需要过滤掉一些没有的信息,只保 ...
- 利用tca时间聚簇分析方法分析fmri数据
一.利用ica进行fmri数据分解时,在得到相互独立的成分后,这些成分的后续处理,其实是有很多文章可以做的.比如,对这些成分进行排序和选择.如果能够提出某种方法,能够自动地制造特征,并将这些特征与分解 ...
随机推荐
- Kubernetes Pod生命周期(十七)
前面我们已经了解了 Pod 的设计原理,接下来我们来了解下 Pod 的生命周期.下图展示了一个 Pod 的完整生命周期过程,其中包含 Init Container.Pod Hook.健康检查 三个主要 ...
- PHP提薪模块
在使用es搜索的时候需要注意以下这几点 文档(Document)与索引(Index):在ES中,文档是最小的数据单元,类似于数据库中的一行记录.文档组织在索引中,索引类似于数据库中的表.了解如何创建索 ...
- USB2.0 的LPM和USB3.0的LPM区别
USB 2.0 和 USB 3.0 都支持低功耗管理机制(LPM,Link Power Management),但两者的实现方式和目标不同.以下是 USB 2.0 的 LPM 和 USB 3.0 的 ...
- OOOPS:零样本实现360度开放全景分割,已开源 | ECCV'24
全景图像捕捉360°的视场(FoV),包含了对场景理解至关重要的全向空间信息.然而,获取足够的训练用密集标注全景图不仅成本高昂,而且在封闭词汇设置下训练模型时也受到应用限制.为了解决这个问题,论文定义 ...
- 2022年 GOPS 全球运维大会(上海站)资料分享
2022年 GOPS 全球运维大会(上海站)主题为"XOps 风向标",共分为16个专场,主要侧重方向是运维.DevOps.AIOps.DevSecOps.云原生.研发效能.可观测 ...
- Tarjan缩点题单 刷题题解
Tarjan缩点可以将一个图的每个强连通分量缩成一个点,然后构建新图,该图就会变成一个有向无环图.变成有向无环图之后就能结合最短路,拓扑......解决相应题目 洛谷题单分享: https://www ...
- 基于 JuiceFS 的 KubeSphere DevOps 项目数据迁移方案
方案背景和目的 KubeSphere 自发布以来已有 2 年之久,从 2.1.0 版本至目前最新版本 3.3.开发人员的编译构建都基于环境平台的 DevOps 功能(底层是 jenkins)实现,如果 ...
- nvm安装使用教程
一.简介 既然你来了,那就不用解释太多,只需要知道 nvm是一款nodejs版本管理工具,通过它可以让我们切换不同版本的 nodejs. 二.下载nvm 1.在安装nvm之前,你要先确定是否安装了no ...
- CodeQL学习笔记(1)-QL语法(逻辑连接词、量词、聚合词、谓词和类)
最近在学习CodeQL,对于CodeQL就不介绍了,目前网上一搜一大把.本系列是学习CodeQL的个人学习笔记,根据个人知识库笔记修改整理而来的,分享出来共同学习.个人觉得QL的语法比较反人类,至少与 ...
- 01_GoLand debug时出现Connected并且程序卡住的问题
01_GoLand debug时出现Connected并且程序卡住的问题 环境:win10.go version go1.19.4 windows/amd64.GoLand 2020.3.5 x64 ...