1、多维分析平台在37手游的技术演进闫 铁|0137手游业务背景手游业务背景0237手游多维分析手游多维分析实践实践0304多维分析平台服务保障多维分析平台服务保障目录目录CONTENT|多维分析技术产品化与多维分析技术产品化与业务化业务化37手游业务背景01|37手游简介|37手游数据分析场景特点|37手游多维分析实践02|OLAP在37手游的演进|20022ImpalaADBClickhouseStarRock+HbaseHologress2018MySQLDruidKylin 从计算能力,查询性能,架构简洁性,可扩展性,稳定性,可维护性等维度考虑选型OLAP平台与数仓|
2、StreamsHudiHive外部表HudiHive外部表HudiHive外部表CDCODSDWDDWS混合混合OlapOlap查询平台查询平台HiveMetaStore统计逻辑视图HiveSTETL(可选)统计逻辑视图层日志流 经过ods-dwd-dws-ads的数据建模,数据在数据仓库经过一些列ETL操作,最终ads层数据推送到olap查询层,供应用层查询。Impala读写流程|Impala主要是3个组件,Catalog,StateStore,ImpalaDaemon。Impalad服务由三个模块组成:Query Planner、Query Coordinator和Query Execut
3、or。Impala在自助取数平台的应用|以Impala为计算引擎的自助取数平台,能实现大数据量高性能、业务复杂度高的计算,满足业务团队对取数“快”的需求,同时也大大释放技术人员人力。Impala的优点|Impala的不足|Clickhouse为什么快|多样化的表引擎向量化引擎多核心并行处理索引列存与数据压缩多服务器分布式处理列式存储更适合于OLAP场景,处理速度可以有100倍级别的提升为上层应用程序的性能带来了极大的提升单条Query就能利用整机所有CPU主键索引、稀疏索引,提升查询性能数据保存在不同的shard上,查询可以并行地在所有shard上进行处理天下武功唯快不破包括MergeTree
4、等20多种表引擎,特定的场景使用特定的表引擎支撑以达到极致的性能Clickhouse在广告自动化投放平台的应用|广告投放平台:对媒体广告投放效果进行实时监控,根据投放效果(如新增注册用户等)自动创建和调整广告投放计划。使用ReplicatedMergeTree表引擎。对于多表join,根据相同的join key ,hash到同一个节点,以实现local join;对于数据频繁更新的问题,将上游业务库Mysql 的update/delete+insert的方式变成clickhouse insert(append),构建一个视图,取T-2历史数数据 union T-1的最新数据对应用层提供服务。C
5、lickhouse使用心得|Clickhouse使用痛点1查询角度查询角度 高并发能力不足;多表关联查询性能欠佳2运维角度运维角度 强依赖ZooKeeper增加运维复杂度;缺乏Resharding机制,集群扩容成本高3数据更新角度数据更新角度 Replacing使用merge-on-read模式,多个数据版本取最新数据性能问题;不支持删除数据,通过删除标识位或者TTL拖慢性能StarRocks重要特征|数据模型 明细模型 聚合模型 更新模型 主键模型多表关联性能更优Bucket Shuffle Join、Colocate Join等分布式Join提升Join性能数据导入方式多样RoutimeL
6、oad,BrokerLoad,FlinkCDC等数据导入方式,简化了数据处理链路排序键和前缀索引 底层的数据是按照指定的列排序存储的(排序健);排序键的基础上实现了一种前缀列索引,以排序列作为条件进行数据查找,或者命中前缀索引,查询性能比较高效。持多并发查询能支撑相对大一点的QPS架构简单、运维方便不依赖ZooKeeper等外部组件只有自身的FE,BEStarRocks在37手游画像场景的应用|业务诉求人群圈选+画像分析可根据任意规则圈选用户分群,圈定人群后做进一步画像分析(如指标聚合操作)大数据量查询数据量百亿级别时效性近实时多表join如:画像表与用户维度信息关联37手游画像StarRoc
7、k方案|计算引擎从过去的ES-StarRock使用宽表+纵表的设计方案。使用to_bitmap 将 user_id 转化为 Bitmap 类型,后续通过 Bitmap 运算支持人群圈选等需求。多维分析技术业务化与普惠化03|数据分析与决策存在痛点|痛点取数难,取数慢业务团队经常、反复找技术人员写SQL取数做分析决策,SQL Boy业务存在感低点击输入本栏的具体文字,简明扼要的说明分项内容。后台分析系统的数据报表变更,开发排期长报表产出效率低,维护难多维分析技术业务化与普惠化|基于多维分析技术底座的自助数据分析平台,提供数据即时分析的能力,满足了用户全程数据的即时分析与即时决策快节奏。多维分析平
8、台服多维分析平台服务保障务保障04|平台服务健康度监控|平台服务健康度监控看板|数据质量监控|数 据 质 量 稽 核 预 警 平 台数据质量保障有一套从需求调研,指标定义,开发规范,任务监控、数据监控的流程和规范。数据质量治理模型DMAIC:分别是指Define、Measure、Analyze、Improve和Control。多维分析平台数据质量监控从有效性等5个维度。有效性一致性准确性完整性及时性多维分析平台数据质量监控预警系统|数 据 质 量 稽 核 预 警 平 台#旗俈邇妙惁)*+,枴賺廯*+,枴潑1弄闰逮迟蜷7嗲盹賺廯邇妙:促銶啵銶啵硼:促賺廯建历CD彎硼熠療堯跚JK唱锛促揞賺廯負堯跚湾逑本系统主要解决DMAIC模型中的“A”:执行数据质量分析任务,发现质量异常的数据。多维分析平台数据质量监控预警信息|数 据 质 量 稽 核 预 警 平 台根据异常告警等级,支持电话,短信,邮件,微信等多种告警信息推送。未来规划|组件收敛SaaS产品引入ELT模式对现使用的组件做减法。尽量用少量的组件满足最多的业务场景。减轻组件运维的成本。使用一些适配业务场景的公共云SaaS服务:如阿里云holo。ETL-ELT的探索。原始或者粗加工数据入多维分析平台,在多维分析平台内部使用SQL对数据进行加工转换后提供查询。非常感谢您的观看|