基于Presto海量日志分析系统的设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
・
1 6 2 ・
科 技论 坛
基于 P r e Байду номын сангаас t o 海
析系统的设计
( 沈 阳 师 范 大 学, 辽 宁 沈阳 1 1 0 0 3 4 )
摘 要: 随 着互联 网的普及 , 互联 网公 司每 天都会产 生大量的数据信 息 , 对 于大数 据的查询分析 , 企业 主要借 助 H i v e提供 业务人 员 的查询, 降低 了大数据查询的门槛 , 使得 业务人 员可以进行数据的查询分析。但是 H i v e 底层使 用的是 M a p R e d u c e离线计算框 架, 适应于 大数据的 离线和批量计 算, 强调 的是吞吐量而 不是计算效率 , 不能满足 业务人 员对大数据 快速 近实时的查询 需求。为 了解决实时查询效 率的 问题 , 设计并 实现 了基于 P r e s t o的海量 日志分析 系统 , 业务人 员可以实现 实时的 A d — H o e 查询分析。 关键 词 : 大数 据 ; Hi v e ; 实时 查询 ; P r e s t o
存 的是数据 文件和库表之 间的映射关系 、 表的结构信息 、 表 与库 的 H a d o o p提供 了对大数据存储 和计 算 的一个解决方 案 l ¨ ,使用 关 联关 系 等信 息 ,元 数据 可 以保存 在 D e r b y嵌入 式 数据 库 或者 y S Q L数据库 中 ; 查询语句处理 , H i v e提供 了 Hi v e Q L查询语 言 , 查 H D F S 进行文件 的存储 , M a p R e d u c e 进行数据 的分析和计算 。 为 了简 M , 最终 生成 Ma p R e d u c e 计算任务 。 化 Ma p R e d u c e的编写 , Hi v e使用类 S Q L可 以实现离线 数据 的分析 询引擎分析查询语句嗍 I 2 1 2- 3 P r e s t o 但是 Hi v e 底层使用 的是 Ma p R e d u c e 离线计算框架 , 适应于大数 P r e s t o是专 门为大数据实 时查询计算 而设 计和开发 的产 品 , 弥 据的离线 和批量计算 , 对大数据的查询和分析要通过一次或多次 的 v e 实时查询 的空 白。无论是对 多数据 源的支持 ,还是易用 M a p R e d u c e过程 , 查询 的等待 时间过长 , 不能满 足业务人员 实时查 补 了 Hi 询口 】 分析( 单次执行时 间在 2 0 0 ms 到2 0 m i n之 间的查询 ) , 计 算效率 性 、 高性能 、 可扩展性 等方面 , P r e s t o 都是大数据 实时查询的计算产 它具有多数据源 、 支持 S Q L 、 混合性计算 、 高性能 、 流 相对来说 比较低 。因此 , 本文设计并实现 了基于 P r e s t o 的海量 日志 品中的佼佼者 , 分析系统 , 业务人员可以实现实时的 A d — Ho c 查询 。 水线等特点 , 并 且具有很好 的扩展性。 2 平 台组 件 P r e s t o集 群 中 一共 有 两 种 服 务 进 程 : C o o r d i n a t o r服 务 进 程 和 2. 1 Ha d o o p Wo r k e r 服务进程 , 其中 C o o r d i n a t o r 服务进 程的主要作用是 : 接 收查 H a d o o p是一个分 布式 的主从架构系统 ,其中包括用 于存储 的 询 请求 、 解析查 询语句 、 生成 相应 的查询计 划 、 任务调 度和 Wo r k e r H D F S和用于计算的 M a p R e d u c e 。 Ha d o o p D i s t r i b u t e d F i l e S y s t e m, 被 进 程的管理 。C o o r d i n a t o r 服务进程 部署 在集群 中一个单 独的节 点 设计 为可 运行在通用硬件 上 、 提供 流式数据操作 、 能够 处理超 大文 上 , 是整个 P r e s t o 集群 的管理节点 , 该进程 既与 Wo r k e r 进行通 信从 件 的分布式文件系统 , 具有高度 的容错性 、 高可用性 、 容易扩展等特 而获得最新 的 Wo r k e r 信息 , 又与 C l i e n t 进行 通信 , 接 收查询请 求 。 r k e r 服务 进程则执行分解后 的查询执行任 务 T a s k , Wo r k e r 是 征 。Ma p R e d u c e 是一个数据 离线计算 框架 。主要有两个 阶段组成 : 而 Wo m a p和 r e d u c e 。 通 常 用 户 只需 要 编 写 m p, a r e d u c e以及 d r i v e r 函 数 就 工作 节点 , 一个 P r e s t o 集群 中会有多个 Wo r k e r 节点。P r e s t o可以通 过多种 不同类型 的 C o n n e c t o r 访问多钟数据源 , 可以连接的 C o n n e c — 可 以实现简单 的分布式程序设计 。 2. 2 Hi v e t o r 的有 J M X, My S Q L , P o s t g r e S Q L , Hi v e以及 K a f k a 。数据 源与 C o n — Hi v e 是最容 易使用 的高级别 Ma p R e d u c e 框架之一 。通过基于 h e c t o r 是一一对应 的, 而C o n n e c t o r 与C a t a l o g 是一对多的关系。如图 为数据 源, C o n n e c t o r 和C a t a l o g 关系图嘲 。 S Q L的数据操 纵语言来简化对 M a p R e d u c e的访 问。它有三部 分组 1 成: 数据读 取和存储 , 可 以将不 同格式的文件存储 在 A m a z o n s 3和 3基 于 P r e s t o的 数 据 分 析 系统 设计 H D F S中 , 也可 以从 中读取 数据进行查询 ; 元数 据的管理 , 元数据保 3 . 1系统组成 ( 转下页 )
1 6 2 ・
科 技论 坛
基于 P r e Байду номын сангаас t o 海
析系统的设计
( 沈 阳 师 范 大 学, 辽 宁 沈阳 1 1 0 0 3 4 )
摘 要: 随 着互联 网的普及 , 互联 网公 司每 天都会产 生大量的数据信 息 , 对 于大数 据的查询分析 , 企业 主要借 助 H i v e提供 业务人 员 的查询, 降低 了大数据查询的门槛 , 使得 业务人 员可以进行数据的查询分析。但是 H i v e 底层使 用的是 M a p R e d u c e离线计算框 架, 适应于 大数据的 离线和批量计 算, 强调 的是吞吐量而 不是计算效率 , 不能满足 业务人 员对大数据 快速 近实时的查询 需求。为 了解决实时查询效 率的 问题 , 设计并 实现 了基于 P r e s t o的海量 日志分析 系统 , 业务人 员可以实现 实时的 A d — H o e 查询分析。 关键 词 : 大数 据 ; Hi v e ; 实时 查询 ; P r e s t o
存 的是数据 文件和库表之 间的映射关系 、 表的结构信息 、 表 与库 的 H a d o o p提供 了对大数据存储 和计 算 的一个解决方 案 l ¨ ,使用 关 联关 系 等信 息 ,元 数据 可 以保存 在 D e r b y嵌入 式 数据 库 或者 y S Q L数据库 中 ; 查询语句处理 , H i v e提供 了 Hi v e Q L查询语 言 , 查 H D F S 进行文件 的存储 , M a p R e d u c e 进行数据 的分析和计算 。 为 了简 M , 最终 生成 Ma p R e d u c e 计算任务 。 化 Ma p R e d u c e的编写 , Hi v e使用类 S Q L可 以实现离线 数据 的分析 询引擎分析查询语句嗍 I 2 1 2- 3 P r e s t o 但是 Hi v e 底层使用 的是 Ma p R e d u c e 离线计算框架 , 适应于大数 P r e s t o是专 门为大数据实 时查询计算 而设 计和开发 的产 品 , 弥 据的离线 和批量计算 , 对大数据的查询和分析要通过一次或多次 的 v e 实时查询 的空 白。无论是对 多数据 源的支持 ,还是易用 M a p R e d u c e过程 , 查询 的等待 时间过长 , 不能满 足业务人员 实时查 补 了 Hi 询口 】 分析( 单次执行时 间在 2 0 0 ms 到2 0 m i n之 间的查询 ) , 计 算效率 性 、 高性能 、 可扩展性 等方面 , P r e s t o 都是大数据 实时查询的计算产 它具有多数据源 、 支持 S Q L 、 混合性计算 、 高性能 、 流 相对来说 比较低 。因此 , 本文设计并实现 了基于 P r e s t o 的海量 日志 品中的佼佼者 , 分析系统 , 业务人员可以实现实时的 A d — Ho c 查询 。 水线等特点 , 并 且具有很好 的扩展性。 2 平 台组 件 P r e s t o集 群 中 一共 有 两 种 服 务 进 程 : C o o r d i n a t o r服 务 进 程 和 2. 1 Ha d o o p Wo r k e r 服务进程 , 其中 C o o r d i n a t o r 服务进 程的主要作用是 : 接 收查 H a d o o p是一个分 布式 的主从架构系统 ,其中包括用 于存储 的 询 请求 、 解析查 询语句 、 生成 相应 的查询计 划 、 任务调 度和 Wo r k e r H D F S和用于计算的 M a p R e d u c e 。 Ha d o o p D i s t r i b u t e d F i l e S y s t e m, 被 进 程的管理 。C o o r d i n a t o r 服务进程 部署 在集群 中一个单 独的节 点 设计 为可 运行在通用硬件 上 、 提供 流式数据操作 、 能够 处理超 大文 上 , 是整个 P r e s t o 集群 的管理节点 , 该进程 既与 Wo r k e r 进行通 信从 件 的分布式文件系统 , 具有高度 的容错性 、 高可用性 、 容易扩展等特 而获得最新 的 Wo r k e r 信息 , 又与 C l i e n t 进行 通信 , 接 收查询请 求 。 r k e r 服务 进程则执行分解后 的查询执行任 务 T a s k , Wo r k e r 是 征 。Ma p R e d u c e 是一个数据 离线计算 框架 。主要有两个 阶段组成 : 而 Wo m a p和 r e d u c e 。 通 常 用 户 只需 要 编 写 m p, a r e d u c e以及 d r i v e r 函 数 就 工作 节点 , 一个 P r e s t o 集群 中会有多个 Wo r k e r 节点。P r e s t o可以通 过多种 不同类型 的 C o n n e c t o r 访问多钟数据源 , 可以连接的 C o n n e c — 可 以实现简单 的分布式程序设计 。 2. 2 Hi v e t o r 的有 J M X, My S Q L , P o s t g r e S Q L , Hi v e以及 K a f k a 。数据 源与 C o n — Hi v e 是最容 易使用 的高级别 Ma p R e d u c e 框架之一 。通过基于 h e c t o r 是一一对应 的, 而C o n n e c t o r 与C a t a l o g 是一对多的关系。如图 为数据 源, C o n n e c t o r 和C a t a l o g 关系图嘲 。 S Q L的数据操 纵语言来简化对 M a p R e d u c e的访 问。它有三部 分组 1 成: 数据读 取和存储 , 可 以将不 同格式的文件存储 在 A m a z o n s 3和 3基 于 P r e s t o的 数 据 分 析 系统 设计 H D F S中 , 也可 以从 中读取 数据进行查询 ; 元数 据的管理 , 元数据保 3 . 1系统组成 ( 转下页 )