HBase在腾讯大数据的应用实践

简介: 最近正好看到CSDN上一直在宣传腾讯云:就在不久前,支付宝、携程、蓝翔就因不同原因出现了网络故障,紧随其后艺龙网,途牛网、去哪儿网纷纷遭到大流量DDoS攻击,并造成短暂的业务中断。

最近正好看到CSDN上一直在宣传腾讯云:


就在不久前,支付宝、携程、蓝翔就因不同原因出现了网络故障,紧随其后艺龙网,途牛网、去哪儿网纷纷遭到大流量DDoS攻击,并造成短暂的业务中断。其中携程中断近12个小时,根据携程一季度财报公布的数据,折算每小时损失106.48万美元,那么本次中断相当于损失了1277.76万美元。
艺龙网因为紧急接入腾讯云的大禹系统,过滤了攻击流量,只引入正常流量,所以很快就恢复了,接入全过程仅耗时14分钟。这些事件让大家对于网络安全、网络服务有了更多的体会。


以上只是个查询,那么大的流量,那么大的数据,腾讯究竟在大数据方面又是如何实现的,在此与大家分享一篇文章:

《HBase在腾讯大数据的应用实践》


前言
随着腾讯产品与技术的发展,几乎任何一个与用户相关的在线业务的数据量都在亿级别,每日系统调用次数从亿到百亿,对海量数据的高效插入和快速读取变得越来越重要。而传统关系型数据库模式固定、强调参照完整性、数据的逻辑与物理形式相对独立等,比较适用于中小规模的数据,但对于数据的规模和并发读写方面进行大规模扩展时,RDBMS性能会大大降低,分布式更为困难。
为什么会选择HBase?
高可靠性。HBase是运行在Hadoop上的NoSQL数据库,它的数据由HDFS做了数据冗余,具有高可靠性。同时TDW(腾讯分布式数据仓库)五年的稳定运行,8800台的集群规模,证明了其服务于海量数据的能力。
高并发读写。使用日志文件(HLOG)和内存存储来将随机写转换成顺序写,保证稳定的数据插入速率;读写独立,这两种操作没有冲突。
优雅的伸缩性。HBase服务能力可以随服务器的增长而线性增长;HBase中表的数据表按Key 值范围自动分片,散布于不同的机器上,实现自动负载均衡;支持百亿行×百万列×上万个版本。
低延迟。数据按列存储,数据即索引。
低成本。历史数据不能轻易删除,数据量变得越来越多,尤其是对于日志类存储,写多读少。而HBase可构建在廉价的PC上,此外,HBase支持较多的压缩算法。
本篇文章将对HBase在腾讯大数据的应用情况做一个介绍。

HBase易用性建设
数据接入-方便、灵活
接入前台化、可配置化。只需在前台配置入库任务,按配置约定规范上报数据,即可实现将数据入库HBase,方便、简洁、快速。
与腾讯大数据的各平台(TDBank、TDW、TRC)打通,数据流转方便。
接入方式多样灵活。业务也可根据HBase提供的API自己编写代码,实现数据写入HBase。在写入量较大的情况下,业务侧还需要维护一批写入客户端,维护成本较高。一般不推荐使用这种方式。
数据查询-接口简单、易用
避免用户重复编码、方便业务查询HBase中的数据,我们封装并提供了两种查询接口:HTTP查询接口和TCP查询接口。同时支持点查询和范围查询两种查询方式。
HTTP查询接口:
通过发送HTTP POST请求方式查询数据。适用于轻量查询需求,例如客服业务受理查询,客户只要开发一个自己的界面就可以使用。返回的数据格式支持json、xml、text、idip(游戏业务定制的数据格式)四种。
TCP查询接口:
通过发送TCP请求建立长连接来查询数据。适用于大并发查询需求,例如营销活动、用户画像类数据查询需求等。返回的数据格式只提供protobuf格式。

安全建设
权限控制。每个接入业务均分配一个用户ID、IP白名单机制,只有在开通了白名单的服务器上,使用用户ID才可以访问归属业务的HBase表,当多个业务共用一个HBase的情况下,权限控制尤其必要。针对敏感数据(如用户画像数据),权限进一步控制到列级别。即只有在开通了白名单的服务器上,使用用户ID才可以访问开通了权限的HBase表中的某些列。
流量控制。控制单笔查询的数据量大小以及查询返回行数限制,同时监控大查询。在多个小业务公用一个HBase情况,可有效控制非必要场景下大量get数据业务间查询相互影响的问题。

业务应用情况
1. 游戏营销活动新渠道
数据的实时性对于营销活动的效果有着十分明显的影响,由于数据延迟而带来的不良用户体验会导致玩家丧失继续参与活动的耐心从而使活动效果大打折扣。HBase在近几次营销活动(如炫舞拉新活动、天天酷跑新版预热活动、英雄联盟3周年活动、天天酷跑周年活动、英雄联盟拉新活动)中,从几十亿甚至百亿条数据中实时拉取数据的毫秒级响应,成为营销活动的一个新渠道。
2. 广告日志处理
广告成为互联网公司的一个主要收入来源。我们现在每天通过HBase处理百亿级广告的请求和曝光日志,访问HBase的延迟,80%在20ms之内,保证了数据的秒级实时回流,实现检索、曝光、点击和效果日志百亿数据的实时关联,提供完整丰富的用户特征数据。精细的特征数据会带来更好的模型,产生更好的广告效果,进而提升广告收入。
3. 业务受理查询
业务受理系统受限于MySQL数据库容量与性能,仅能查询最近一段时间的日志,使游戏在核实客户投诉上较为被动。游戏业务受理系统由MySQL迁移到HBase后,用业务的评价来总结下MySQL迁移HBase的效果:“业务受理对客服的查询需求服务提升了一个档次”。
4. 此外,HBase在其他点击交互日志或监控日志系统上也有较多应用,如网络会话数据、秒级监控平台日志、微信支付日志等。

结束语
随着业务的发展以及HBase在腾讯的较多的成功应用案例与推广,HBase的应用还将继续增多以及向核心应用靠近的趋势。总的来说,我们的目标,降低接入使用门槛以及使用成本,使HBase能稳定地部署到更多的应用中去, 以助力业务更快发展。

目录
相关文章
|
11月前
|
存储 数据采集 搜索推荐
Java 大视界 -- Java 大数据在智慧文旅旅游景区游客情感分析与服务改进中的应用实践(226)
本篇文章探讨了 Java 大数据在智慧文旅景区中的创新应用,重点分析了如何通过数据采集、情感分析与可视化等技术,挖掘游客情感需求,进而优化景区服务。文章结合实际案例,展示了 Java 在数据处理与智能推荐等方面的强大能力,为文旅行业的智慧化升级提供了可行路径。
Java 大视界 -- Java 大数据在智慧文旅旅游景区游客情感分析与服务改进中的应用实践(226)
|
11月前
|
机器学习/深度学习 数据采集 数据可视化
Java 大视界 -- 基于 Java 的大数据可视化在城市空气质量监测与污染溯源中的应用(216)
本文探讨Java大数据可视化在城市空气质量监测与污染溯源中的创新应用,结合多源数据采集、实时分析与GIS技术,助力环保决策,提升城市空气质量管理水平。
Java 大视界 -- 基于 Java 的大数据可视化在城市空气质量监测与污染溯源中的应用(216)
|
11月前
|
存储 监控 数据可视化
Java 大视界 -- 基于 Java 的大数据可视化在企业生产运营监控与决策支持中的应用(228)
本文探讨了基于 Java 的大数据可视化技术在企业生产运营监控与决策支持中的关键应用。面对数据爆炸、信息孤岛和实时性不足等挑战,Java 通过高效数据采集、清洗与可视化引擎,助力企业构建实时监控与智能决策系统,显著提升运营效率与竞争力。
|
11月前
|
Java 大数据 数据处理
Java 大视界 -- 基于 Java 的大数据实时数据处理在工业互联网设备协同制造中的应用与挑战(222)
本文探讨了基于 Java 的大数据实时数据处理在工业互联网设备协同制造中的应用与挑战。文章分析了传统制造模式的局限性,介绍了工业互联网带来的机遇,并结合实际案例展示了 Java 在多源数据采集、实时处理及设备协同优化中的关键技术应用。同时,也深入讨论了数据安全、技术架构等挑战及应对策略。
|
11月前
|
数据采集 搜索推荐 Java
Java 大视界 -- Java 大数据在智能教育虚拟学习环境构建与用户体验优化中的应用(221)
本文探讨 Java 大数据在智能教育虚拟学习环境中的应用,涵盖多源数据采集、个性化推荐、实时互动优化等核心技术,结合实际案例分析其在提升学习体验与教学质量中的成效,并展望未来发展方向与技术挑战。
|
9月前
|
人工智能 Cloud Native 算法
拔俗云原生 AI 临床大数据平台:赋能医学科研的开发者实践
AI临床大数据科研平台依托阿里云、腾讯云,打通医疗数据孤岛,提供从数据治理到模型落地的全链路支持。通过联邦学习、弹性算力与安全合规技术,实现跨机构协作与高效训练,助力开发者提升科研效率,推动医学AI创新落地。(238字)
572 7
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
Java 大视界 -- Java 大数据机器学习模型在自然语言生成中的可控性研究与应用(229)
本文深入探讨Java大数据与机器学习在自然语言生成(NLG)中的可控性研究,分析当前生成模型面临的“失控”挑战,如数据噪声、标注偏差及黑盒模型信任问题,提出Java技术在数据清洗、异构框架融合与生态工具链中的关键作用。通过条件注入、强化学习与模型融合等策略,实现文本生成的精准控制,并结合网易新闻与蚂蚁集团的实战案例,展示Java在提升生成效率与合规性方面的卓越能力,为金融、法律等强监管领域提供技术参考。
|
11月前
|
存储 人工智能 算法
Java 大视界 -- Java 大数据在智能医疗影像数据压缩与传输优化中的技术应用(227)
本文探讨 Java 大数据在智能医疗影像压缩与传输中的关键技术应用,分析其如何解决医疗影像数据存储、传输与压缩三大难题,并结合实际案例展示技术落地效果。
|
11月前
|
机器学习/深度学习 安全 Java
Java 大视界 -- Java 大数据在智能金融反洗钱监测与交易异常分析中的应用(224)
本文探讨 Java 大数据在智能金融反洗钱监测与交易异常分析中的应用,介绍其在数据处理、机器学习建模、实战案例及安全隐私等方面的技术方案与挑战,展现 Java 在金融风控中的强大能力。
|
11月前
|
机器学习/深度学习 算法 Java
Java 大视界 -- Java 大数据机器学习模型在生物信息学基因功能预测中的优化与应用(223)
本文探讨了Java大数据与机器学习模型在生物信息学中基因功能预测的优化与应用。通过高效的数据处理能力和智能算法,提升基因功能预测的准确性与效率,助力医学与农业发展。