三:基于Storm的实时处理大数据的平台架构设计
一:元数据管理器
==>元数据管理器是系统平台的“大脑”,在任务调度中有着重要的作用
【1】什么是元数据?
--->中介数据,用于描述数据属性的数据。
--->具体类型:描述数据结构,数据的具体位置,数据间的依赖关系,数据的处理过程,数据的快照信息等。
【2】为何要引入元数据
--->实际案例:HDFS中的NameNode节点,Hive的MySql元数据表,MooseFs的Master节点,GFS(Google分布式文件系统)中的Master节点等。
--->在大数据处理架构中引入元数据结构,描述数据流名称,类型,字段结构,数据流转过程等,便于各个数据处理系统间协调,使数据业务调度更加的精准,便捷。
【3】实时处理平台任务调度
---->类SQL查询插入语句:INSERT MySQL INTO domain_table SELECT * FROEM domain_streaming AS d WHERE LENGTH(d.domain) <= 10 AND d.value > 2000 AND d.seller LIKE %tony%;
---->任务调度:实时处理内部拓扑数据流调度(节点模块化),不同组件之间的数据流调度,不同子系统之间的任务调度。
---->推荐方案:MySQL 或者 Zookeeper作为元数据的存储组件。
二:多节点统一配置管理
==>配置管理是一个系统的重要辅助功能,多节点的配置管理将比单节点的配置管理更为复杂,但其重要性也更加明显。
【1】多节点配置的相关问题
--->节点太多,需要配置的配置文件太多,太繁琐。
--->配置需要修改时,很难保证每个节点的配置统一,维护成本高
--->无法针对性的对功能节点进行配置,导致配置文件过于臃肿
--->配置文件太分散,动态更新成本过高。
【2】几种可行的分布式配置解决方案
--->依赖于Storm主类本身的Config对象进行传递
--->使用MySQL进行配置文件的同意存储。
--->以Puppet为核心的统一配置管理系统。
--->基于ZooKeeper的统一配置管理系统。
【3】基于ZooKeeper的统一配置管理解决方案
三:数据处理系统监控
==>一个完善的系统监控平台将大大降低数据处理平台的后期维护成本,也将是后期集群扩展的重要支撑条件。
【1】系统监控的重要性
--->数据平台作为底层数据加工处理的基础平台,任何事故(包括服务以及系统的故障)对于上层应用的影响很大,而数据平台的监控系统是故障快速定位,快速恢复的基本保障。
--->对于规模较小的数据处理平台,规划监控系统对于整个平台的扩展是有预见性的。
【2】系统监控的几大指标
--->系统层面:CPU,内存,磁盘的利用率,I/O负载,网络流量
--->服务层:Storm的两个基本服务(Nimbus和Supervisor),MQ,ZooKeeper,MySQL以及其他相关组件服务
--->应用层:具体的拓扑,拓扑对应的状态,具体工作Worker的状态
【3】系统监控的初步解决方案
---->系统层解决方案:分布式监控组件Ganglia或者Puppet+Zabbix结构
---->服务层解决方案:Puppet+服务探测脚本,ZooKeeper+服务探测脚本
---->应用层解决方案:使用ThriftAPI编写Thrift Client,请求Nimbus内置的Thrift Server,获取相关数据(Storm集群以及Topology数据)
四:数据总线
==>让数据流转于数据总线中,方便各个数据处理模块对数据的接入以及吐出,数据总线的设计将使数据流转更加的便捷快速
【1】数据总线的概念
--->总线:计算机各个功能部件之间传递信息的公共通信干线
--->数据平台中的数据总线概念:区别于计算机学科中数据总线的定义,在于强调各个数据处理组件,子系统能够进数据的传递。
【2】为何要引入数据总线
--->数据执行跨平台,跨语言,跨空间的处理(解藕,数据格式约定好就ok)
--->数据安全隔离,有效隔离不同组件,系统之间的直接操作
--->冗余数据保护,避免数据在某个组件,系统中造成积压
【3】基于MQ的数据总线设计
五:基于Storm的基础平台架构
==>我们将把前面所有的相关平台组件进行集成,组成围绕Storm的一个实时数据处理的基础平台
【1】基础架构图详解【2】Storm平台的发展方向
--->提供更加灵活的分组策略,应用更加多变复杂的业务需求
--->大数据平台统一融合趋势,兼容更多的分布式相关组件的数据接口(Kafka,Hbse,Hive,Redis等)
--->集群资源的统一调度管理,剥离自身资源调度功能,交由诸如Yarn,Mesos专门的组件统一调度(协调各个子系统的资源)
【3】大数据平台思维的延伸
--->数据源收集:互联网数据金矿的挖掘
--->大数据平台一体化融合思维:随着数据的急剧上升,大数据处理需求的多样化,数据在不同平台流通的需求迫切,整合不同大数据相关组件架构,进行一体化融合是一个大趋势。
--->平台即服务思维:Docker技术的出现,让大数据平台的构建变得更简单,平台节点大规模快速安装,资源得到更好得隔离,数据平台服务化
三:基于Storm的实时处理大数据的平台架构设计的更多相关文章
- 基于MaxCompute的媒体大数据开放平台建设
摘要:随着自媒体的发展,传统媒体面临着巨大的压力和挑战,新华智云运用大数据和人工智能技术,致力于为媒体行业赋能.通过媒体大数据开放平台,将媒体行业全网数据汇总起来,借助平台数据处理能力和算法能力,将有 ...
- 从 Airflow 到 Apache DolphinScheduler,有赞大数据开发平台的调度系统演进
点击上方 蓝字关注我们 作者 | 宋哲琦 ✎ 编 者 按 在不久前的 Apache DolphinScheduler Meetup 2021 上,有赞大数据开发平台负责人 宋哲琦 带来了平台调度系统 ...
- Spark 介绍(基于内存计算的大数据并行计算框架)
Spark 介绍(基于内存计算的大数据并行计算框架) Hadoop与Spark 行业广泛使用Hadoop来分析他们的数据集.原因是Hadoop框架基于一个简单的编程模型(MapReduce),它支持 ...
- 如何基于Go搭建一个大数据平台
如何基于Go搭建一个大数据平台 - Go中国 - CSDN博客 https://blog.csdn.net/ra681t58cjxsgckj31/article/details/78333775 01 ...
- 联童科技基于incubator-dolphinscheduler从0到1构建大数据调度平台之路
联童科技是一家智能化母婴童产业平台,从事母婴童行业以及互联网技术多年,拥有丰富的母婴门店运营和系统开发经验,在会员经营和商品经营方面,能够围绕会员需求,深入场景,更贴近合作伙伴和消费者,提供最优服务产 ...
- 大数据计算平台Spark内核全面解读
1.Spark介绍 Spark是起源于美国加州大学伯克利分校AMPLab的大数据计算平台,在2010年开源,目前是Apache软件基金会的顶级项目.随着Spark在大数据计算领域的暂露头角,越来越多的 ...
- 大数据计算平台Spark内核解读
1.Spark介绍 Spark是起源于美国加州大学伯克利分校AMPLab的大数据计算平台,在2010年开源,目前是Apache软件基金会的顶级项目.随着 Spark在大数据计算领域的暂露头角,越来越多 ...
- 大数据竞赛平台——Kaggle 入门
Reference: http://blog.csdn.net/witnessai1/article/details/52612012 Kaggle是一个数据分析的竞赛平台,网址:https://ww ...
- 大数据竞赛平台——Kaggle 入门篇
这篇文章适合那些刚接触Kaggle.想尽快熟悉Kaggle并且独立完成一个竞赛项目的网友,对于已经在Kaggle上参赛过的网友来说,大可不必耗费时间阅读本文.本文分为两部分介绍Kaggle,第一部分简 ...
随机推荐
- idea导入web项目tomcat
概述 主要分为项目配置和tomcat配置两大步骤. 一.项目配置 打开idea,选择导入项 选择将要打开的项目路径后,继续选择项目的原本类型(后续引导设置会根据原本的项目类型更新成idea的项目),此 ...
- [iptables]iptables 添加log到syslog
比如iptables本来有这么一条: -A PREROUTING -d 125.65.27.xxx/32 -p tcp -m tcp --dport 11060 -j DNAT --to-destin ...
- bzoj 2457 [BeiJing2011]双端队列 模拟+贪心
[BeiJing2011]双端队列 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 457 Solved: 203[Submit][Status][D ...
- JQuery学习一
第一个JQuery程序 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <he ...
- web开发环境和要求配置
对于eclipse,有很多版本,但要开发WEB程序,需要用到j2ee版本,如果是winform或android 用不带ee的版本就行,两者的明显区别是在看帮助->关于->Eclipse J ...
- [Luogu 2073] 送花
很容易想到的平衡树,加个维护区间和. 只需要插入和删除操作即可. kth其实都不用的,最小和最大可以从根节点log n一直向左/一直向右跑到叶子节点而求得. 记得每插入完一个点一定要更新区间和!!更新 ...
- Spring Security 过滤器链
Alias Filter Class Namespace Element or Attribute CHANNEL_FILTER ChannelProcessingFilter http/interc ...
- 洛谷P3764 签到题 III
题目背景 pj组选手zzq近日学会了求最大公约数的辗转相除法. 题目描述 类比辗转相除法,zzq定义了一个奇怪的函数: typedef long long ll; ll f(ll a,ll b) { ...
- 2016-2017 2 20155335《java程序设计》第四周总结
# 20155335 <Java程序设计>第四周学习总结 ## 教材学习内容总结 继承,在本职上是特殊到一般的关系,即is—a关系,子类继承父类,表明子类是一种特殊的父类,并且具 ...
- iOS开发者两分钟学会用GitHub在Mac上托管代码的两种方法
原文发布者:http://blog.csdn.net/duxinfeng2010 在Mac上使用Xcode进行iOS-Apple苹果iPhone手机开发过程中少不了使用GitHub在Mac上托 ...