Apache Doris 在 Hadoop 生态圈中的角色定位
自我介绍
分享嘉宾为肖培根(Bacon),大数据主管。
现状分析
公司以私有云为基础,建设数据中台+系统前台的数据应用模式,实现数据统一、复用,加速创新数据应用落地。主要目标包括:
- 数据拉通:打破数据孤岛,将所有数据汇聚到数据中台。
- 统一指标:拉通各业务环节,明确指标owner,统一数据口径,提供统一指标服务。
- 数据质量:连通全域数据,对数据进行常态化、周期性的质量管控与治理。
- 自助取数:面向业务人员建设自助分析、自助取数工具。
- 自助消费:建设低门槛数据自助消费工具集,实现简单数据使用场景自助服务。
- 数据服务:提供便捷、快速的数据服务能力,支持数据资产场景化能力的快速输出。
- 业务赋能:形成可快速使用的数据模型,挖掘数据价值,为业务赋能。
中台架构
中台架构包括:
- 数据采集:结构化、半结构化、实时、离线数据采集。
- 数据存储:Hive、Paimon、HBase等。
- 计算引擎:Spark、Flink。
- 数据服务:数据集成、数据挖掘、数据交互、可视化工具。
- 数据应用层:ADS层、服务数据层、明细数据层、原始数据层、ODS层。
- Doris引擎:列存、行存,三副本,WXHDFS框架、Doris框架。
Doris 平台建设
- 集群搭建:搭建2套Doris集群,采用3 FE + 3 BE组合,资源隔离和权限控制。
- CCR跨集群数据同步:主集群实时同步到副集群。
- 数据备份:定期备份主集群数据到Hadoop。
- 集群升级:配置Nginx负载均衡和高可用,增加FE/BE故障告警到企业微信。
- 平台资源:1.1TB内存,7.96 TB硬盘,288 Core(s) CPU,使用率50%。
Doris 平台应用
- Doris功能研究:Doris和Paimon结合、Catalog统一元数据、冷热数据分层、Flink Doris Connector、Spark Doris Connector、BE OOM分析和内存管理、OPEN API服务、资源管理、数据备份和迁移、湖仓一体研究、SQL优化。
- Apache Doris的定位:满足报表分析、即席查询、统一数仓构建、湖仓一体等使用场景。
- 湖仓一体实践:主要应用场景包括湖仓查询加速、数据导入和集成、统一查询网关、ETL/ELT加速;支持元数据和数据打通、大部分湖仓格式和meta store、对接各类主流数据库;利用Doris高效的分析引擎加速、热数据Cache到本地、支持弹性计算节点、外表处理结果可写入内表形成加速视图。
- 数据质量保障:Doris数据提取采用Catalog方式同步数据,T+1模式;库表最大表6亿多记录,总数据超12亿;业务场景包括用户流量分析、客户画像、物料统计分析等;实现自助取数和自助消费,面向业务人员建设自助分析工具。
- FlinkCDC实时同步DorisSQLserver数据库:包括Flink端操作和SQLserver数据库端操作。
- Java UDF使用:支持使用JAVA编写UDF、UDAF和UDTF,Hive UDF可直接迁移至Doris;通过使用UDF函数,实现复杂的数据处理、计算和转换,提高查询的灵活性和效率。
- Doris Manager:可视化运维管理,集成了监控告警、集群巡检和WebUI等模块,提供集群启停、扩缩容和升级等常规运维操作可视化的快捷入口。
- Doris平台资源监控:通过Zabbix进行监控,并通过Grafana将Zabbix监控到的数据进行可视化展示。
- 基于Apache Doris的新一代数仓平台:离线数仓采用Apache Spark + Apache Hive,实时数仓采用Apache Doris,支持海量数据查询秒级响应时间,支持高吞吐的复杂分析场景。