大数据分析关键技术39
目录
• 概述 • 即席查询 • 批量处理 • 流式计算
MapReduce v0.23.x (YARN)
从 0.23.0 版本开始,Hadoop 的 MapReduce 框架完全重构。
新的 Hadoop MapReduce 框架命名为 MapReduceV2——YARN
Client Client
Resource Manager
普元CEP平台架构
分析集群运行环境
结果执行层 Action
Action
Action
Action
接入层
Output Cluster 1…n
分析引擎 平台
分析引擎 OSGi Based
…
分析引擎 OSGi Based
规则库
接入层
Input Cluster 1…n
事件采集层 Agent
Agent
Agent
无状态 服务无状态,数据重跑
对硬币进行分类
决策判断
如动画中对硬币的分拣动作:可以根据硬币的物理属性 设计不同的判断规则(轨道宽度,转角等),完成分类。
窗口模式
按时间区间、按长度区间、按时间与长度混合区间、按 特有属性值等规则所建立起的对象集合,存放在内存中。
若动画中,再对已分类的硬币进行自动打包,有两种方 式:1. 判断槽中的硬币数量,触发打包动作;2. 判断槽中的 硬币重量,触发打包动作;
Input Adapter
NoSQL
Engine Cluster
Cluster Management
Rule Repository
目录
• 概述 • 即席查询 • 批量处理 • 流式计算
Impala架构
SQL
JDBC
Common HiveQL & Interface
Hive MetaStore
HDFS NN
规则部署与配置场景
运维人员
1. 上传规则部署包
业务人员
4. 规则参数配置
运维Console
业务Console
2. 保存规则到 仓库
2’. 保存规则信 息到DB
DB
5. 保存规则 参数配置
8. 下载规则
Repository
3. 下载规则 的表单页面
6. 保存规则参数配 置到ZooKeeper
engines engine1
Meta Data
Batch Processing
Ad-Hoc Query
SQL Syntax
Parallel Compute Framework
SQL Syntax+ Compute Framework
Resource Management
Storage
Distribute File System
Job Submission
MapReduce Status
Resource Request
Node Status
Node Manager Container App Master
Node Manager App Master Container
Node Manager
Container
Container
Impala借鉴了MPP并行数据库的思想,可以做更多的查询优化,从而省掉不必要的 shuffle、sort等开销。
使用了支持Data locality的I/O调度机制,尽可能地将数据和计算分配在同一台机器上进行, 减少了网络开销。
用C++实现,做了很多有针对性的硬件优化。对外提供多语言API、多种访问协议。
• ExecutionEngine会与Hadoop进行交 互,将 MapReduce任务交给Hadoop 来执行,并从Hadoop取得最终的执行 结果,并返回给用户。
解析HiveSQL之后生成所MapReduce 任务,在运行中访问元数据信息时,将直接 读取生成的物理计划时产生的plan.xml,此 文 件 会 被 放 入 Hadoop 的 分 布 式 缓 存 中 , , MapReduce任务可以从分布式缓存中获得相 应的元数据。
Thrift Server
Meta Store
Driver (Compiler, Optimizer, Executor)
Hive (Over Hadoop 0.20.X)
Job Tracker
Data
HDFS DN
Task Tracker
Name Node
Hadoop
• ThriftServer:JDBC通过ThriftServer 连接到Hive。ThriftServer连接 MetaStore来读取hive的元数据信息。
规则
规则
规则
规则
实例A1 实例A2 实例A3 实例An
分析引擎A
规则 实例B1
规则 实例B2
规则 实例B3
规则 实例Bn
分析引擎B
MQ
分析 引擎
事件去重1
1:n
事件
事件去重…
事件输出 分析规则
事件去重q
n:1
分析引擎
实例
接出层
普元CEP关键技术——实例状态复制
状态数据迁移与备份
事件输入
场景说明 • 实例A2异常 • 实例A4新增
大数据分析关键技术
TEST
目录
• 概述 • 即席查询 • 批量处理 • 流式计算
大数据计算分析模式分类
数据承载
响应时间
适用场景
即席查询 Ad-Hoc Query
批量处理 Batch Processing
Map/Reduce
流式计算 Stream Computing
磁盘
磁盘
内存 (事件窗口 非全量数据)
Agent
外部系统 系统A
系统B
系统C
系统D
管理控制环境
分析规则开发(离线开发)
规则开发IDE (Eclipse Based)
应用门户(功能松耦合) 管理门户
(规则模板生命周期管理)
运维门户
(引擎监控、全局配置、自动化部署)
业务门户
(规则实例业务参数配置)
普元CEP平台特色
分析规则 开发、管理与应用
Storage
Distribute File System
Column Database
流式计算
实时性:高
流式计算
流数据的实时计算注重对流数据的快速高效处理、计算和分析。其特点是计算过程数据不落地,所有 数据在内存中完成。其计算模型是根据规则生成容器,当数据流经过容器时,实时产生分析结果。
Output Adapter
Impala相对于Hive的优势
中间结 果
作业调 度
作业分 发
数据访 问
代码实 现
Impala不需要把中间结果写入磁盘,省掉了大量的I/O开销。
省掉了MapReduce作业启动的开销。MapReduce启动task的速度很慢(默认每个心跳间 隔是3秒钟),Impala直接通过相应的服务进程来进行作业调度,速度快了很多。
Process Daemon (NodeJS+ZKClient)
监控业务进程(过滤/聚合) (unSupport ZKClient)
OS (Support NodeJS)
OS Agent
(NodeJS+ZKClient+MQClient)
ZK Client 监控业务进程(过滤/聚合) (Support ZKClient) Any OS
ZooKeeper 集群
状态
规则实例
OS Agent
(Java+ZKClient+MQClient)
Process Daemon (Java+ZKClient)
监控业务进程(过滤/聚合) (unSupport ZKClient)
OS (unSupport NodeJS)
OS Agent
(NodeJS+ZKClient+MQClient)
事件分析平台
规则模板 开发IDE
事件元 数据
类SQL规 则语言
Action 元数据
Web规则 模板管理
Web规则 实例配置 与热部署
面向数据 流
基于内存
冷热数据 分离与恢
复
内存状态 数据迁移
集群规模 水平伸缩
事件动态 路由
自动化、图形化运维
基于云计算PaaS架构 分布式集群管控框架
与虚拟机镜像结合 分析服务快速部署
形成这种模型的原因是:数据的分布式存储、计算资源的分布式、并行计算减少计算时长。
Batch Processing
Ad-Hoc Query
Meta Data
SQL Syntax
Parallel Compute Framework
SQL Syntax+ Compute Framework
Resource Management
ZooKeeper
CEP Engine1
CEP Engine2
CEP Engine3
7. 通知Engine
engine2
Rule1 Rule2
Rule3 Rule4
普元CEP关键技术——事件路由与去重 多副本冗余增强可靠性
事件路由1
事件输入
负载均衡(可选)
事件路由…
事件路由p
规 则
接入层
MQ
集群管理 NoSQL
MetaData
State Store
Impalad
Query Planner Query Coordinator Query Exec Engine
Data