如何通过组合方式来适应实际需求并应用到具体场景中?

大数据平台建设中,Hadoop体系所包含的生态系统,如:Hbase,Hive,snoop,pig,spark等子系统,如何根据各自的特性,通过组合方式来适应实际需求并应用到具体场景中?可以举例说明 显示全部
大数据平台建设中,Hadoop体系所包含的生态系统,如:Hbase,Hive,snoop,pig,spark等子系统,如何根据各自的特性,通过组合方式来适应实际需求并应用到具体场景中?可以举例说明 收起
参与20

查看其它 6 个回答百分点的回答

百分点百分点技术总监百分点
我们的最佳实践是利用互联网+大数据的技术架构,构建Lamda架构,如图所示:

lambda.jpg


一、数据采集
1. 传统业务系统数据库和数据集市、数据仓库的数据,均可以通过Sqoop等数据桥接的方式接入大数据平台,同时可以将数据库日志、系统日志等非结构化文本数据通过Flume等组件接入大数据平台
2. 银行线上渠道(网站、APP应用、微信公众号等)中的用户行为可以通过数据探头技术,Web端及H5通过JS、移动端通过SDK部码,采集用户行为数据;银行线下渠道(柜面、ATM等)的用户行为数据,需从线下接入的系统数据中解构分析
3. 互联网公开数据,如论坛、微博、媒体资讯等,通过数据爬取技术进行数据采集
4. 也可以利用各种API接口接入其他合作方、第三方等的在线或离线数据
二、数据分发
通过FTP或Kafka消息队列将数据实时分发,分发后分开实时数据处理和离线数据存储和处理两条线,形成“人”字型的Lamda架构
三、离线数据存储及处理
基于Hadoop平台和MpReduce技术的离线数据处理,常用的是HBase列式数据库。
四、实时数据处理
利用Storm或Spark技术的实时数据处理,例如Storm是事实流式处理,Spark(Spark Streaming)是基于内存的实时批处理。
五、数据存储
不同的数据类型、不同的业务场景,需要的不同的数据存储服务,在我们的产品中应用了Redis、MongoDB、MySQL、ElasticSearch等多种存储服务。

百分点基于此架构为银行提供服务的典型应用场景包括:
1. 用户行为采集分析:利用数据探头(JS、SDK,Nginx、ICE)、数据分发(Kafka)、离线数据存储及处理(HBase)、运营分析结果展现(MySQL)
2. 跨部门数据整合:利用数据桥接(Sqoop)、日志接入(Flume)、数据分发(FTP)、离线数据存储存储及处理(HBase、ES)
3. 离线用户画像和用户洞察(支持营销):利用离线数据存储存储及处理(HBase、ES)
4. 实时用户画像及推荐:利用实时数据处理(Storm、Spark)、数据存储(Redis、MongoDB)
5. 实时反欺诈:利用数据接口(API)、数据分发(MQ)、实时数据处理(Storm)
互联网服务 · 2015-07-03
浏览3912

回答者

百分点
技术总监百分点
擅长领域: 大数据大数据平台数据库

百分点 最近回答过的问题

回答状态

  • 发布时间:2015-07-03
  • 关注会员:2 人
  • 回答浏览:3912
  • X社区推广