0 脑子里要有货:
a)这个框架是什么东西
b) 这个架构的特点
c) 这个框架适用于哪些业务场景,是基于何种具体问题被提出来的
d) 框架之间的搭配
e) 脑子中有一套设计架构,不合适业务的时候知道根据b) c)去选择哪个框架来替代
1 如下是离线处理架构设计:
1.0) 图:
1.1) 解说
a) 每一个框架都要分布式部署,解决 1)单点 2)负载均衡问题
b) zookeeper使用说明:
因为zookeeper分布式下,挂掉哪个节点都不会对整个集群造成任何影响,而hdfs集群 hive集群 hbase集群则或多或少都会对别的节点造成影响,因此zookeeper最适合做配置管理,和个框架之间相互连接这种工作。
如果集群在5-7台以上的话,zookeeper至少分配3或者5或者7个节点(奇数个)。
zookeeper和hadoop是没有关系的因此放在哪台机器上都行,但是考虑到Hadoop集群会跑任务,
因此建议zookeeper节点放在负载低的节点上
c) flume使用说明:
节点部署在业务服务器上,好处在于:作为代理可以直接和业务数据库打交道,flume节点要看业务节点多少而定,但是没必要做到一对一, 一个flume节点可以对应多个业务节点,直接部署在业务数据库服务器上就行
d) hbase使用说明:
hbase的数据存在hdfs上,所以和hdfs主从式配置保持一致就行了,好处在于hbase可以就近读取hdfs的数据
e) hbase使用说明:
hive作为客户端,可以随便放在一台机器上, hive经常被作为客户端来使用,当然hive可以作为服务端使用,但是使用频率不高。
c) flume使用部署图: