概述
文章目录
- Lambda架构
- 架构简介
- 架构之组成
- Lambda架构的Demo
- 我的Demo
Lambda架构
架构简介
-
Lambda架构是大数据架构的一种,其作用无非是存储-处理-展示数据。关于其介绍,网上多篇博客已珠玉在前,这里不再赘述。可参见:
-
最重要的官网,配合翻译插件食用更佳:http://lambda-architecture.net/
https://blog.csdn.net/lvsaixia/article/details/51778487;
https://blog.csdn.net/brucesea/article/details/45937875;
https://www.jianshu.com/p/b6bf05332c18;
https://www.jianshu.com/p/ef543d6dc15b
https://zhuanlan.zhihu.com/p/20510974;
架构之组成
1. batch layer
如图可知,优选是Hive和Pig,次选是Spark、Hadoop;
2. speed layer
如图可知,优选是Spark Streaming和Strom,次选是Spring XD;
3. serving layer
如图可知,优选是HBase和Druid,次选是SploutSQL;
由上可知,Lambda架构的组成可以有千百种方式,但其每一个layer的选择却是有限的;只需结合业务需求、然后在上述三幅图中选择即可。
Lambda架构的Demo
(官网给定的5个demo,但目前一个都没看懂-2018年9月4日)
Lambda架构具体的实现方式,网上开源的代码真的非常少,这也大大加重了实操的难度。
Demo1. 推特标签数量实时分析
batch layer = HDFS;
speed layer = Trident(a high level Storm);
serving layer = Splout SQL;
Demo2. 实时分析数据堆栈
data resource = Kafka;
batch layer = Hadoop;
speed layer = Storm;
serving layer = Druid;
Demo3. 洛杉矶公共交通数据实时分析
data resource = Kafka;
batch layer = Spark;
speed layer = Cassandra;
serving layer = Akka;
Demo4. 基于微软云分析公共会议流程
github项目地址:https://github.com/ANierbeck/BusFloatingData
data resource = ;
batch layer = ;
speed layer = ;
serving layer = ;
Demo5. 推特实时详尽分析
data resource = Kafka/Twitter4j;
batch layer = Spark;
speed layer = Spark-streaming/Cassandra;
serving layer = Akka/Akka-http;
我的Demo
暂时假定,
batch layer = Hive;
speed layer = Storm;
serving layer = HBase;搭建起一个local mode(本地集群)的demo
…
Storm集成HBase:
http://storm.apache.org/releases/2.0.0-SNAPSHOT/storm-hbase.html
完成日历:
2018年9月4日-开始学习Lambda架构思想,并阅读多个Hadoop组件的文档;
2018年9月11日-实现Kafka发出随机信息,并简单消费的Java工程;
2018年9月12日-实现Kafka数据导入hdfs,并用Hive QL查询。本来想用Java工程来实现,但是导入数据的方法大概有三种:kafka connect、Gobblin、利用Flume中间件。这三种方法都是直接在Linux上改写配置文件,就能实现数据从Kafka -> HDFS的过程,与我的本意不和;看来hadoop平台并不是所有的任务都可以用Java来实现;这个过程暂且不管了
2018年9月13日-在Hive中实现HQL对关键业务指标的查询,也可尝试用Java操作;
最后
以上就是悲凉蜻蜓为你收集整理的Lambda架构Lambda架构的全部内容,希望文章能够帮你解决Lambda架构Lambda架构所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复