数极客首页

腾讯Hermes实时检索大数据平台介绍

一、序文

随着TDW的展开

,公司在大数据离线剖析

方面曾经
具备了行业抢先
的才干

。但是,很多应用场景常常
央求

在数秒内完成对几亿、几十亿致使

几百上千亿的数据剖析

,从而抵达

不影响用户体验的目的。怎样
能够

及时有效的获取剖析

结果进步
工作效率,这是许多剖析

人员在面对大数据所不得不面临的问题。要满足这样的需求,能够

采用精心设计的传统关系型数据库组成并行处置
集群,或者采用一些内存计算平台,或者采用HDD的架构,但是这些都无疑需求
比较

高的软硬件本钱
。海量数据的今天,堆机器不是每个业务都愿意去做的。

实时检索剖析

平台(Hermes),旨在为公司大数据剖析

业务提供一套实时的、多维的、交互式的查询、统计、剖析

系统,为公司各个产品在大数据的统计剖析

方面提供完好
的处置

计划

,让万级维度、千亿级数据下的秒级统计剖析

变为理想

本文将粗略引见
系统的应用场景、设计架构以及相关业务接入状况

二、Hermes实时检索剖析

场景

营销剖析

作为营销人员,第一
你需求
确认营销目的
群体,并且在什么时间以什么方式
,展开
什么营销活动效果最好?你第一
需求
找到目的
群体号码包,经过
指定条件(如性别、年龄、兴味
喜好

,曾经有过相似

行为)提取号码包;经过
数据剖析

,得知在某个时间段参与人数较多,哪种类

型的活动效果更受欢送

,目的
用户群体有哪些共同特征。控制
这些,你的营销活动效果愈加
好;

系统运营剖析

一个产品的后台有着成千上万个接口,各个接口的性能指标是开发人员、运维人员特别关注的,每个接口可能都有不同的版本号,要判别
系统能否
稳定不是某个时间点的数据能表现
出来的,需求
对比

剖析

历史数据才干
发现潜在的问题。或许
问题只出往常

某个接口的某个版本中,并且只需

特定版本的接口发送到特定接口才会重现这种问题,开发人员除了大量的日志外,没有很直观的途径能指导开发人员有针对性的定位问题。

假定

对这些性能数据中止

实时的多维度的数据剖析

,只需求
依据

问题的表象剖析

对应的版本号、对应的接口就能查看到对应的性能数据指标,从而快速减少
问题发作
范围,为问题定位提供高效的处置

途径。

此外不同版本性能的周期性对比

、新版本上线性能跟踪等都是系统运营剖析

所不可或缺的。

趋向
剖析

当面对每天几百几千万的数据,mysql等传统的数据库能帮你搞定,但是当你要剖析

周期性数据, 比如

最近三十天,这个数据量,或许
你没疯mysql就曾经
”疯”了。

当要剖析

的数据按月按年计算呢?肯定很多人思索
hadoop,没错,它是能帮你处置

这么大的数据量的剖析

工作,但是hadoop不能让你即查即所见?一个剖析

人员效率上下
,很多时分
取决于工具的时效性,这直接影响着剖析

人员、运营人员的剖析

思想
衔接

性。

探求

性剖析

很多剖析

人员剖析

的目的是考证
性的、是探求

性的,在不时
的调整考证
自己

的猜测

最终发掘

有效信息从而为产品展开

找到决策性数据依据

假定
你有10亿的数据量,字段数抵达

上百个,剖析

人员任何一个YY剖析

需求都有可能是这上百个字段其中的组合,假定
我们从中取5个字段做组合剖析

,100个字段中取五个字段的组合数能抵达

75287520,每次查询就算耗时500毫秒,预处置
也要430多天。可见,恣意
组合的查询剖析

、即查即所见的多维组合剖析

是探求

性剖析

必需具备的”硬件”条件。

全文检索

很多场景需求
依据

关键字对数据中止

实时检索效劳
, 目前我们支持数据的实时接入,也支持数据的批量导入。除此高效的毫秒级检索剖析

效劳
外,我们还支持用户对结果集的导出。

三、Hermes设计概要

架构描画

系统中心
进程均采用分散化设计,依据

业务展开

需求,可随意扩缩容机器;

周期性数据直接经过
tdw处置
落地到散布

式文件系统; 实时数据加载采用先落地本地磁盘,最终落地到散布

式文件系统,最终都由调度进程分发到计算层;

剖析

引擎设计

基于单个实例数据的剖析

处置
,datasource主要包含两类数据:用户导入的数据(位图文件)以及源数据(索引文件),内核主要依据

用户央求

逻辑处置
索引文件以及位图文件。

内核设计

整个数据对应多份,依照

不同规则平均

散布

在各个剖析

实例中,数据的merge效劳
在其中的一个分片中中止

,每次央求

将依据

机器负载状况

选择负载轻的作为merge效劳
器。

存储设计

经过
对数据结构

的重新组织,分别

剖析

系统的特性
,完成
嵌套列存储,充沛

避开随机读,采用块读取+位图计算大幅度降低耗弊端
病,使大数据的统计剖析

计算耗时缩短至秒级;

在词条文件中采用字典排序,并在此基础

上完成
前缀紧缩

在序列文件中采用递增排序,并对序列号采用可变长类型,有效紧缩
存储空间,便于计算位图的构建;

存储格式

存储格式主要包含四类文件

meta文件: 描画

表结构

,内存文件;

词条文件: 描画

各个字段的词条集信息,磁盘文件;

词条索引文件: 词条文件的跳表映射文件,用于加速定位目的
词条,内存文件;

序列号文件: 词条呈现
的序列集,采用可变长类型存储序列号, 每个词条对应的序列号集又包含跳表映射数据块,用于加速细致

序列的定位,磁盘文件;

存储剖析

过程示例

数据容灾:依据

业务特性
,采用散布

式文件系统或冗余存储处置

进程容灾:依据

进程的特殊性,采用Master-Slave或者冗余处置

进程容灾问题。

数据加载支持实时和周期性两种方式。

数据接入

实时数据效劳
:提供数据实时接入,保证数据即入即所查。

历史数据效劳
:提供T+1数据以及数据补录等场景,保证数据有效周期。

四、Hermes应用案例

微信数据门户多维剖析

(约370亿)

提供系统各个性能指标数据的实时剖析

信息安全

部回溯项目(目前接入约2300亿)

基于全文检索查询、剖析

、统计并导出相关记载

结果秒级返回。

五、Hermes性能数据

六、终了

数据的不时
收缩
数据剖析

带来了很多应战
,多维剖析

则是为了解

决在数据不时
收缩
的状况

数据剖析

时效性的问题,为数据剖析

平台提供即席的数据剖析

支持。

在业务理论
的同时,我们仍在不时
完善,使Hermes平台支持更多的应用场景,为进步
开发人员、营销人员和数据剖析

人员数据剖析

效率,从海量的业务数据中挖掘

有价值的金矿而努力。

来自:腾讯大数据

衔接
:http://BIgdata.qq.com/article?id=817

发表评论

评论已关闭。

相关文章