1 / 34

Oracle In-Database MapReduce:当 Hadoop 遇上 Exadata

Oracle In-Database MapReduce:当 Hadoop 遇上 Exadata. Kuassi Mensah 产品管理总监. 以下内容旨在概述产品的总体发展方向 。 该内容仅供参考,不可纳入任何合同 。 其内容不构成提供任何材料、代码或功能的承诺,并且不应该作为制定购买决策的依据 。 此处所述有关 Oracle 产品的任何特性或功能的开发、发布以及相应的日程安排均由 Oracle 自行决定 。. 议题. 大数据与 In-Database MapReduce SQL Map Reduce

Download Presentation

Oracle In-Database MapReduce:当 Hadoop 遇上 Exadata

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Oracle In-Database MapReduce:当Hadoop遇上Exadata KuassiMensah产品管理总监

  2. 以下内容旨在概述产品的总体发展方向。该内容仅供参考,不可纳入任何合同。其内容不构成提供任何材料、代码或功能的承诺,并且不应该作为制定购买决策的依据。此处所述有关 Oracle 产品的任何特性或功能的开发、发布以及相应的日程安排均由 Oracle 自行决定。

  3. 议题 • 大数据与 In-Database MapReduce • SQL Map Reduce • In-Database Container for Hadoop • Oracle 大数据解决方案

  4. 大数据概念 MapReduce 基础架构 RDBMS MapReduce (阶段 I) 数据挖掘 (阶段 II) 任何数据 MapReduce规则: 在本地处理数据

  5. 当今现实生活中的大数据 MapReduce 基础架构 RDBMS 非结构化数据 (HDFS、NoSQL 等) MapReduce (阶段 I) 数据挖掘 (阶段 II) RDBMS 结构化 数据

  6. 当今大数据存在的问题 • 将数据从 RDBMS 传送到MapReduce基础架构 • 过于庞大,难以移动 • 运营问题 • 数据正确性/丢失 • MapReduce基础架构缺乏企业级安全性 • 打破MapReduce规则 • MapReduce基础架构或存储的成本 • 缺乏MapReduce开发技能 • 缺乏MapReduce部署技能

  7. 大数据与 In-Database MapReduce Hadoop 集群 RDBMS MapReduce 数据挖掘 非结构化数据 (HDFS、NoSQL 等) In-Database MapReduce MapReduce 结构化数据 (RDBMS) 数据挖掘

  8. In-Database MapReduce 趋势 • 混合平台:DBMS + MapReduce • 项目/产品/计划 • DataStax:Cassandra + Hadoop • HadaptHadoopDB:Postgress + Hadoop • Greenplum HD • MongoDBMapReduce:JavaScript • Aster Data / TeraData • 局限 • 除了依赖DBMS,还依赖Hadoop基础架构 • 源代码兼容性:需要以不同语言重写Hadoop作业。

  9. Oracle 大数据战略 跨数据基础架构的 MapReduce API Hadoop、R、SQL RDBMS (In-Database MapReduce) 大数据机 网页日志 销售记录

  10. Oracle In-Database MapReduce 与 Oracle 大数据解决方案集成

  11. Oracle In-Database MapReduce Oracle database 12c 版本的特性 In-Database Container for Hadoop (目前处于测试阶段) SQL MapReduce (12.1.0.1)

  12. 议题 • 大数据与 In-Database MapReduce • SQL Map Reduce • In-Database Container for Hadoop • Oracle 大数据解决方案

  13. SQL MapReduce声明式 MR 分析 现有特性和新特性的集合 • SQL 分析函数 • 用户定义的聚合函数 • 并行管道化表函数 • SQL 模式匹配 MATCH_RECOGNIZE — 新!

  14. SQL 模式匹配 股价 查找股价出现“双底”的 10 天周期 查找事件 A(“撤销权限”),要求在发生此事件后的 1 分钟内紧跟着发生了 3 次或更多次事件 B(“尝试登录”) SQL 模式匹配提供表达性强的语法并能快速执行模式匹配 新的 SQL 构造:MATCH_RECOGNIZE 使用正则表达式语法定义模式 9 12 1 天数 19

  15. SQL 模式匹配 会话化 SELECT user_id, session_id start_time, no_of_events, duration FROM Events MATCH_RECOGNIZE ( PARTITION BY User_ID ORDER BY Time_Stamp MEASURES match_number() session_id, count(*) as no_of_events, first(time_stamp) start_time, last(time_stamp) - first(time_stamp) duration PATTERN (b s*) DEFINE s as (s.Time_Stamp - prev(Time_Stamp) <= 10) ) ORDER BY user_id, session_id;

  16. 演示

  17. 议题 • 大数据与 In-Database MapReduce • SQL Map Reduce • In-Database Container for Hadoop • Oracle 大数据解决方案

  18. Vanilla Hadoop Hadoop 集群 物理分区 (数据节点) Mappers 具体化 中间数据 Reducers

  19. In-Database Container for Hadoop 组件 • Apache Hadoop • 任务执行:In-Database JVM • 数据分区及任务调度:PQ引擎 • 数据存储:表、外部表、对象视图。 • 数据类型映射:TableReader、TableWriter

  20. In-Database Container For Hadoop RDBMS 服务器 表分区 Mappers 进程 管道化 中间数据 Reducers 进程 并行 DML

  21. In-Database Container For Hadoop 和 Vanilla Hadoop RDBMS 服务器 Hadoop 集群 物理与逻辑数据分区 映射器 具体化 与管道化 中间数据 化简器 并行 DML

  22. In-Database Container for Hadoop总结 • RDBMS 引擎中的“Hadoop容器”:无需Hadoop集群。 • 在原位处理数据:不需要将数据传送到单独的基础架构。 • API 和源代码兼容性:接受当前Hadoop映射器和化简器 • Java 接口:按照 vanilla Hadoop调用Hadoop作业 • SQL 接口:SQL语句中的Map和Reduce步骤

  23. In-Database Container for Hadoop SQL 和 Java 接口 public class WordCount { public static void main() throws Exception { /* Setup the parameters and run the job */ …… job.init(); job.run(); } SELECT * FROM TABLE (HREDUCE_JP_WORDCOUNT(:ConfKey, CURSOR(SELECT * FROM TABLE (HMAP_JP_WORDCOUNT(:ConfKey, CURSOR(SELECT * from InTable))))))

  24. 演示

  25. 管道化 Hadoop 作业 通过 SQL 接口 管道化Hadoop步骤,不包括针对中间数据的具体化操作 select * from table (HREDUCE_JP_JOB2 (:Confkey2, .... (HMAP_JP_JOB2 (:ConfKey2, .... (HREDUCE_JP_JOB1 (:ConfKey1, .... (HMAP_JP_JOB1 (:ConfKey1, ...), ))));

  26. In-Database Container for Hadoop 预计的特性 • 重用映射器及化简器(包括 R 生成的) • 动态数据分区 • Apache Hadoop API 2.00 • 自定义可写的Hadoop类型 • 序列化数据格式 • 输入格式:HDFS、HBase及其他 • Java 接口(类似于 Vanilla Hadoop驱动程序)。 • SQL 接口:SQL查询中的Hadoop作业步骤 • Mahout

  27. 开发/部署 In-Database Container for Hadoop 重用现有Mappers及Reducers 从头开发HadoopMappers及Reducers 创建或更新 Hadoop 作业配置文件 在 RDBMS 中加载所有 Java 代码并创建调用规范 通过 Java 或 SQL 接口调用 Hadoop 作业。 用并行 INSERT 填充输出表

  28. 议题 • 大数据与 In-Database MapReduce • SQL Map Reduce • In-Database Container for Hadoop • Oracle 大数据解决方案

  29. Oracle 大数据解决方案 Oracle Endeca Information Discovery Oracle 大数据机 Oracle Exadata Oracle Exalytics InfiniBand InfiniBand Oracle Real-TimeDecisions 获取 组织 分析 决策

  30. Oracle In-Database MapReduce 总结 • 声明式分析 (SQL MapReduce) • 程序化分析(复杂算法、Hadoop) • SQL 查询中的MapReduce作业步骤。 • 定制扩展(输入格式) • RDBMS QoS(如企业级安全性) • 对开发人员和 DBA 友好 • 与 Oracle 大数据解决方案无缝集成

More Related