`
m635674608
  • 浏览: 5043879 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

hadoopDB 数据仓库 简介

 
阅读更多

读了两篇关于hadoopDB数据仓库的论文之后,写一点关于hadoopDB的简介:

 

hadoopDB是耶鲁大学的一个大学项目, 目的是为了构建一个数据仓库的工具。

HadoopDB 结合了hadoop 和paralled RDBMS,结合两个技术的优点。

HadoopDB is to connect multiple single_node database systemusing Hadoop as the task coordinator and network communication layer.

Hadoop的优点:fault  toleranceand ability to operate in a heterogeneous environment properties.

                缺点: performance,特别是对于join和aggregation操作。

Paralled RDBMS的优点: performance, 特别是对于join和aggregation的优化 处理。

                缺点:就是hadoop的优点。

 

原来hadoop + hive就是一套完整数据仓库工具,hive的作用是把用户输入的类SQL语句翻译成hadoop能够执行一些操作-mapreduce的任务tree(包含多个mapreduce的操作),只有由hadoop去执行。但是这些操作都是基于google自己的HDFS,所以在performance上并不是理想。同类的产品还有yahoo的pig, Microsoft的SCOPE。

 

HadoopDB的最终想法就是在map阶段把SQL语句尽量的让paralledRDBMS 去执行,尽量发挥并行数据库系统的优势,之后把每个node的输出序列化到temp文件中,在reduce阶段把结果从temp文件中读出即可。

 

如果实在不能让paralled RDBMS去执行,那么只能依靠mapReduce的功能。

上面是HadooopDB的一个结构图,在原来的hadoop+ hive的基础上,增加了一些组件:

1.      SMS Planner.

不清楚是SMS Planner是独立于hive,还是依赖于hive.现在暂且认为SMSPlanner的作用是在hive解析SQL语句生成mapreduce任务tree之后,对mapreduce任务tree进行优化,尽量指导hadoop去paralledDatabase中执行SQL。

2.      Catalog。

里面存储了paralled database的一些信息。

3.      Data loader。

负责把原始数据load到paralleddatabase中,需要完成的工作是对原始数据的partition.

4.      Database Connector

该类继承自hadoop的inputformat类,用于向各个node传递信息,Databaseconnector里面包含了node里面database的链接信息和需要执行的SQL语句。

5.      Paralled DataBase.

用于代替HDBS在各个node上存储数据。

 

 

以下面SQL语句为例:

SELECT YEAR(saleDate),SUM(revenue)

FROM sales GROUP BY YEAR(saleDate);

1.    对于hive来说,他会把他翻译成如下步骤:

2. 而通过SMS planner对上面plan的修改,如果在partition的时候,所有的表格是以year为attribute做的partition,那么每个database里面的数据是独立的,也就是可以把上述SQL语句直接给node中的database做查询。那么修改之后的plan如下:

只需要Map阶段把SQL语句传递给每个node,每个node只需要返回查询结果即可,不需要在reduce阶段做什么操作。

 

3. 但是如果在partition的时候,所有的表格没有以year为attribute做partition, 那么各个database里面的数据不是独立,是需要全部从各个数据库中读出相关表格,之后让mapreduce以year为attribute做map操作,之后对于各个map操作,做reduce操作。

 

 

两篇论文:

Abadi - HadoopDB An Architectural Hybrid of MapReduce and DBMS Technologies for Analytical Workloads

Abadi - Efficient Processing of Data Warehousing Queries in a Split Execution Environment

 

http://blog.csdn.net/suwei19870312/article/details/7242995

分享到:
评论

相关推荐

    hadoopdb.pdf

    HadoopDB 系统的设计理念是对现有数据仓库技术的创新,旨在结合传统数据仓库在查询性能和效率方面的优势,以及基于 MapReduce 技术在大数据处理方面的卓越能力。这种混合架构可以提供一个灵活、可扩展且高性能的系统...

    09VLDB-HadoopDB An Architectural Hybrid of MapReduce and DBMS Technologies

    - **分析工作负载**: HadoopDB被设计用于执行分析工作负载,即需要处理和分析大量数据的任务。 - **平行数据库**: 部分企业开始从高端专有机器转向更廉价、性能较低的商用硬件,通常采用无共享的MPP(大规模并行处理...

    HadoopDB-开源

    通过结合并行数据库和MapReduce的优势,HadoopDB在大数据处理领域展现了强大的潜力,为开发者和企业提供了新的选择,以应对日益增长的数据处理挑战。随着技术的不断发展和完善,HadoopDB有望在未来的数据密集型应用...

    hadoopdb.sql

    hadoopdb.sql

    hadoopdb.jar

    用户hadoopdb相关的jar包,应该还是很有用的啊!

    大数据分析的分布式MOLAP技术

    数据的规模效应给数据存储、管理以及数据分析带来了极大的挑战,学界和业界广泛采用分布式文件 系统和 MapReduce 编程模型来应对这一挑战.提出了大数据环境中一种基于 Hadoop 分布式文件系统(HDFS)和 MapReduce 编程...

    大数据处理平台分析.pdf

    c) 并行数据库与MapReduce共存,各取所长,进行任务划分,如Vertica、Teradata和HadoopDB。 六、数据分析技术 在大数据存储和处理的基础上,还需要强大的数据分析技术来提取有用知识。这通常需要在文件系统之上...

    大数据分析的分布式MOLAP技术 (2).pdf

    在科学数据分析领域,DOLAP技术的应用案例显示了其在数据处理和查询方面相比于基于HBase、Hive、HadoopDB、OLAP4Cloud等主流非关系型数据库系统实施的OLAP表现出更高的性能优势。 DOLAP技术的架构由三个关键层次...

    分布式海量数据处理平台设计与实现.pdf

    这一平台的成功设计与实现是基于对现有分布式计算架构如Google的Map/Reduce和HadoopDB的深入研究,以及对电力行业运维监控业务需求的深刻理解。这种设计思路和技术架构可以为其他行业的海量数据处理需求提供参考。

    数据库方面论文翻译

    例如,Hadoop在Facebook的数据仓库管理中发挥了重要作用。 然而,MapReduce的即时满足范式和缺乏对结构化数据处理的优化,导致其在处理结构化分析工作负载时性能下降,相比并行数据库可能低一个数量级。论文提出了...

    大数据常用数据库汇总.pdf

    1. **列族数据库**:如BigTable、HBase、Cassandra、Amazon SimpleDB和HadoopDB等。这类数据库适用于大规模数据存储,尤其在处理时间序列数据时表现优秀。例如: - **Cassandra** 提供列索引和高性能缓存,支持跨...

    (word完整版)NoSQL数据库笔谈.doc

    2. Hbase、HadoopDB、GreenPlum、Cassandra等都是列式存储数据库,适合大数据分析,具有高扩展性和高性能。 3. Dynamo、BeansDB、Voldemort等是Key-Value存储,提供高可用性和容错性。 4. CouchDB、MongoDB等是文档...

    NoSQL的技术研究

    Hbase、HadoopDB、GreenPlum、Cassandra等是列存储数据库,适用于大数据分析。BigTable、PNUTS等是云服务提供商提供的分布式存储解决方案,而MongoDB、CouchDB等则提供了丰富的数据模型,支持文档存储。Dynamo是...

    NoSQL数据库详细介绍入门经典

    - **Greenplum**:一款高度可扩展的企业级数据仓库系统。 - **Facebook之Cassandra**:一个分布式、去中心化的NoSQL数据库系统。 - **特点**:支持高并发、高可用性、数据分布均匀。 - **数据模型**:由keyspace...

    Hadoop平台优化文献综述.docx

    而论文[9]提出的Trojan Index和Trojan Join算法,为Hadoop提供了一种高效的索引和JOIN操作,实验结果显示优于原生Hadoop和HadoopDB。 在工业界,百度(Baidu)对Hadoop的关键组件如Map、Shuffler和Reducer进行了C++...

    NoSQL数据库笔谈

    Hadoop之Hbase 耶鲁大学之HadoopDB GreenPlum FaceBook之Cassandra Cassandra特点 Keyspace Column family(CF) s ebug . net / paper / dat abas es / nos q l / N os q l . ht ml 1/ 56 13-12-4 NoSQL数据库笔谈 ...

Global site tag (gtag.js) - Google Analytics