阿里云PB级实时数仓AnalyticDB通用解决方案解析

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 大数据上云特惠活动系列直播,阿里巴巴技术部悦畅对PB级实时数仓AnalyticDB通用解决方案进行解析。分析型数据库(AnalyticDB)是由阿里巴巴自主研发的海量数据实时高并发在线分析(Realtime OLAP)云计算服务,可以在毫秒级针对千亿级数据进行及时的多维分析透视和业务探索。

阿里云PB级实时数仓AnalyticDB通用解决方案解析

摘要:大数据上云特惠活动系列直播,阿里巴巴技术部悦畅对PB级实时数仓AnalyticDB通用解决方案进行解析。分析型数据库(AnalyticDB)是由阿里巴巴自主研发的海量数据实时高并发在线分析(Realtime OLAP)云计算服务,可以在毫秒级针对千亿级数据进行及时的多维分析透视和业务探索。悦畅主要通过产品简介、客户需求与挑战、解决方案、性能比对、价值总结五个部分进行分享。
数十款阿里云产品限时折扣中,赶快点击这里,领券开始云上实践吧
[直播视频请点击]
下载PPT请点击
以下是精彩视频内容整理:

AnalyticDB简介

分析型数据库(AnalyticDB), 是阿里巴巴自主研发的海量数据实时高并发在线分析(Realtime OLAP)云计算服务,可以在毫秒级针对千亿级数据进行及时的多维分析透视和业务探索。具备海量数据的自由计算和响应计算能力,能让用户在瞬息之间进行灵活的数据探索,快速的发现数据价值,并可直接嵌入业务系统为终端客户提供分析服务。
分析型数据库的特点:

  • 全面的值索引和块索引技术
  • 全面的MySQL协议兼容和SQL2003兼容能力

  • 超大规模的MPP+DAG融合引擎

  • 智能的CBO/HBO优化器技术

  • 多版本的行列混存技术

互联网级别分布式高可用与低延迟机制

AnalyticDB架构主要包括应用层、分析型数据库、数据互通、辅助系统和联邦计算。

需求和挑战

客户的计算层主要包括应用层、计算层、数据采集和数据源。计算层采用了Impala+Druid。Impala是架构的查询引擎,底层使用的是HDSS作为存储引擎,但是底层的存储引擎只对文件进行均衡,不对单张表的数据进行均衡,导致单张表数据存储倾斜。当前的实时写入使用的Druid,Druid适合过滤条件比较多的查询分析,Druid可以进行海量数据的实时写入。当前计算层存在实时性差、查询局限、扩展性差和运维难问题。
客户的业务特点:

  • 广告运营分析平台,主要提供容量、曝光、收入和点击等指标,在广告位、终端类型等各个维度下的统计分析。
  • 要针对历史数据的交互式查询和实时数据的统计分析。
  • 数据量增长非常的快,需要提供毫秒级响应能力。

解决方案

image001


新的架构如上图所示,上图中的Impala+Druid完全可以由AnalyticDB来代替,开发者只需要学习一个AnalyticDB就可以实现以上Impala+Druid的全部功能,而且节省了链路,用户的查询速度非常的快。由上图知用户的历史数据直接从ODPS中抽取然后导入到AnalyticDB中,用户数据和日志数据通过实时的数据采集导入到AnalyticDB中。同时用户可以将更多的细粒度的数据存入ADS中实时计算粗粒度的报表数据,减少数据表和数据源的数量,使得业务可以将原有外置的统一数据查询层简介后内置在Web业务系统中。

db类型和表设计

db类型和表的设计非常的重要,如果按照一定的规范把表设计好后续的很多问题变得非常的简单。一般建议客户购买两种类型db。一种是大存储的,成本低,存储数据量大,其缺点是查询速度慢。另一种是高性能的,成本相对较高,换来的是速度快。大存储是高性能的一种备份,当高性能出问题时,可以路由到大存储,主要的存储还是在高性能里。表的设计,表按属性划分,可以分成实时表和维度表。根据表的实时性划分可以分为事实表和批量表,历史数据是从ODPS上批量导入到AnalyticDB,实时数据支持秒级延迟,数据是实时的导入到AnalyticDB。AnalyticDB支持字段的二级分区,一般选择时间字段作为二级分区。有时候业务存在多个维度,每次选择查询的时候只选择一个值,可以选择此字段进行分表,减小表的行数加快查询的速度。上面讲述了横向分表,如果建立Rollup则是必须纵向分表。我们从分区剪裁、多值列支持的关键词关联功能和高性能维度聚合函数进行性能的优化。

分区裁剪

image003


SQL语句1如上图所示是模糊查询,查询的性能非常的慢,性能需要优化,耗时在15-20s之间。

image006


SQL语句2,耗时约为20-50ms。
我们主要是从建表语句、分区列、聚集列选择和模糊查询下的分区裁剪进行优化。前三个分别对表结构进行调整,一级分区进行更换,从上面的语句我们知道一级分区数是256个,256个一级分区列太多,然后改成64个进行优化,增加了聚集列。当前三点改完后,不进行模糊查询,发现跑完只需要0.67秒。所以模糊查询耗费了大量的时间,我们对模糊查询进行分区裁剪。当第四个优化完成后只需0.27-0.5秒就可以跑完。

多值列支持的关键词关联功能

image008


多值列支持的关键词关联功能的一个例子如上图所示,当我们查询2014连衣裙是PV、UV的数量基础上想继续查询女鞋,传统的方法是再增加一个表,然后把两张表进行Druid,这样做非常的麻烦。现在给出的方案是用户不用在进行建表,只需在原有表的基础上增加一列,也就叫做多值列。只需要在where里添加keyword contains(‘女鞋’),就可以实现这个功能。

性能比对

从入库数据可见性、查询平均时间和可承载的并发量进行比对。

image009


如上图所示,蓝色代表使用AnalyticDB之前,红色代表使用AnalyticDB之后。从数据上看,日增实时数据约1T,数据可见性由分钟级别上升到秒级可见,入库数据可见性提升了60倍;查询时间由1min降低到300ms以内,查询平均时间提升200倍;并发量由10并发提升到1000以上,并发量提升了100倍;数据总量达到5T,还在持续的增加中。

价值总结

助力用户上云,完全释放数据价值。在这之前用户用自建的数据库,运维非常复杂。如果是开源的,当社区发生变化时,客户需要自己进行运维,需要耗费大量的人力物力进行研究。用户上云后,无需用户运维,支持平滑的升级,不需要客户停服,用户是无感知的,可以在升级的过程中进行查询;客户无需忍受分析耗时时间长,用户上云后是毫秒级返回,且并发能力提升百倍;扩展性能强,支持弹性扩缩容,当客户的数据量变大时,可以后续进行购买扩容,无需为后续数据装载不下而担心,当用户数据量变少时还可以进行缩容;用户不仅要考虑时间成本,同时也需要考虑金钱成本。用户上云后降低了70%的成本,云上五种资源类型,都提供了最高性价比。

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
3月前
|
存储 数据可视化 数据挖掘
《基于 hologres 搭建轻量 OLAP 分析平台》解决方案的测评
《基于 hologres 搭建轻量 OLAP 分析平台》解决方案的测评
53 4
|
1月前
|
监控 数据挖掘 OLAP
深入解析:AnalyticDB中的高级查询优化与性能调优
【10月更文挑战第22天】 AnalyticDB(ADB)是阿里云推出的一款实时OLAP数据库服务,它能够处理大规模的数据分析任务,提供亚秒级的查询响应时间。对于已经熟悉AnalyticDB基本操作的用户来说,如何通过查询优化和性能调优来提高数据处理效率,是进一步提升系统性能的关键。本文将从个人的角度出发,结合实际经验,深入探讨AnalyticDB中的高级查询优化与性能调优技巧。
102 4
|
1月前
|
存储 SQL 缓存
AnalyticDB 实时数仓架构解析
AnalyticDB 是阿里云自研的 OLAP 数据库,广泛应用于行为分析、数据报表、金融风控等应用场景,可支持 100 trillion 行记录、10PB 量级的数据规模,亚秒级完成交互式分析查询。本文是对 《 AnalyticDB: Real-time OLAP Database System at Alibaba Cloud 》的学习总结。
63 1
|
2月前
|
存储 SQL 分布式计算
湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
【10月更文挑战第7天】湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
145 1
|
2月前
|
人工智能 自然语言处理 关系型数据库
阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成
近日,阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成。
|
2月前
|
OLAP
解决方案|基于hologres搭建轻量OLAP分析平台获奖名单公布!
解决方案|基于hologres搭建轻量OLAP分析平台获奖名单公布!
|
2月前
|
DataWorks 数据挖掘 关系型数据库
基于hologres搭建轻量OLAP分析平台解决方案评测
一文带你详细了解基于hologres搭建轻量OLAP分析平台解决方案的优与劣
438 9
|
2月前
|
人工智能 分布式计算 数据管理
阿里云位居 IDC MarketScape 中国实时湖仓评估领导者类别
国际数据公司( IDC )首次发布了《IDC MarketScape: 中国实时湖仓市场 2024 年厂商评估》,阿里云在首次报告发布即位居领导者类别。
|
2月前
|
存储 缓存 数据处理
深度解析:Hologres分布式存储引擎设计原理及其优化策略
【10月更文挑战第9天】在大数据时代,数据的规模和复杂性不断增加,这对数据库系统提出了更高的要求。传统的单机数据库难以应对海量数据处理的需求,而分布式数据库通过水平扩展提供了更好的解决方案。阿里云推出的Hologres是一个实时交互式分析服务,它结合了OLAP(在线分析处理)与OLTP(在线事务处理)的优势,能够在大规模数据集上提供低延迟的数据查询能力。本文将深入探讨Hologres分布式存储引擎的设计原理,并介绍一些关键的优化策略。
141 0
|
2月前
|
SQL 分布式计算 数据挖掘
加速数据分析:阿里云Hologres在实时数仓中的应用实践
【10月更文挑战第9天】随着大数据技术的发展,企业对于数据处理和分析的需求日益增长。特别是在面对海量数据时,如何快速、准确地进行数据查询和分析成为了关键问题。阿里云Hologres作为一个高性能的实时交互式分析服务,为解决这些问题提供了强大的支持。本文将深入探讨Hologres的特点及其在实时数仓中的应用,并通过具体的代码示例来展示其实际应用。
247 0

热门文章

最新文章

推荐镜像

更多
下一篇
DataWorks