数据仓库之门向Hadoop开启

数据仓库之门向Hadoop开启,第1张

数据仓库之门向Hadoop开启

在大数据时代,Hadoop分布式处理架构为IT、数据管理以及数据分析团队带来了新生机的同时,也带来了新的挑战。随着Hadoop生态系统的不断发展壮大,企业需要对快速更新换代的技术做好充足的准备。

上周,Apache软件基金会刚刚宣布了Hadoop 20的正式GA,新版本的Hadoop将带来大量变化。以HDFS和基于Java的MapReduce为核心组件,Hadoop的早期采用者都在使用它应对海量数据处理,包括结构化与非结构化数据,从日志文件到文本数据,再从传感器数据再到社交媒体数据不一而足。

Hadoop 10向20的转变

Hadoop通常以集群的方式运行在廉价服务器上,因此可以有效控制海量数据处理和存储的成本。Ventana研究机构的副总裁Tony Cosentino表示,Hadoop采取了轻架构的数据处理方式, 因此它能够对新型数据源进行充分利用,这是传统关系型数据库架构所不能比拟的。

但Cosentino认为,目前的Hadoop架构也受到了批处理模式的限制,可以把它比作是一辆重型卡车,在性能方面存在较大瓶颈。Hadoop不适合有低延迟需求的应用,它更适合干重活,即海量数据处理。

Hadoop适合分析海量非结构化数据集,它通常是上TB甚至PB的数量级。ScaleOut Software的CEO William Bain表示,由于Hadoop批处理的天性以及大开销所限,它并不适合进行数据集的实时分析。但将Hadoop 20与其他厂商所添加的新查询引擎结合,这个问题也将得到有效的解决。

数据仓库之门向Hadoop开启

Impetus Technologies的首席架构师Sanjay Sharma表示,数据仓库应用同样涉及到海量数据处理,因此它是天生的Hadoop目标应用。那么多大的数据比较合适Sharma认为10 TB左右是Hadoop的理想数据量,如果数据集组成非常复杂,那么这个数量还会有所下降。

像汽车导购类信息提供商Edmundscom这样的用户,都部署了Hadoop以及相关技术来代替传统的数据仓库。大多数企业的Hadoop集群往往被视为数据进入组织的一个缓冲区域,数据由MapReduce来进行“过滤”,转换成为传统的关系型数据,然后再导入到数据仓库或者数据集市来进行分析。这种方式还提供了一定的灵活性,原始数据可以放在Hadoop系统中,需要进行分析的时候在用ETL进行处理。

Sharma把这种部署方式称为“数据下游处理”,而另外一家研究机构的总裁Colin White则用更准确的方式进行了总结,即“业务炼油厂”。在今年发布的一项调查报告中,Gartner分析师Mark Beyer和Ted Friedman指出,使用Hadoop收集数据并为数据仓库中分析数据做准备,这是目前最主流的大数据分析应用实践。而在272个参与调查的用户当中,有超过一半的用户表示他们计划在未来12个月进行这一工作。

从诞生伊始,Hadoop就吸引了无数软件开发者在其基础之上创建新的工具,来弥补自身所存在的诸多不足。比如HBase(分布式数据库),Hive(基于SQL的数据仓库),Pig(MapReduce中开发数据分析程序的高级语言)等。其他的一些支持项目现在也成为了Apache项目的一部分,比如Hadoop集群调配管理和监控工具Ambari,NoSQL数据库Cassandra以及针对大型分布式系统的可靠协调系统ZooKeeper等。

YARN为Hadoop 20带来新活力

Hadoop 20目前已经统一称为Hadoop 2,它已经进入越来越多人的视野当中。其中最重要的一部分就是YARN(Yet Another Resource Negotiator),这个更新的资源管理器能够让非MapReduce开发的应用运行在HDFS上。通过这种方式,YARN旨在解除Hadoop的批处理限制,同时提供与现有应用结构的向下兼容。

Cosentino表示,YARN是Hadoop 20的最重要发展,它能够让多种工作负载并发运行。Yahoo就是一个很好的例子,他们在YARN上部署了Storm复杂事件处理软件,用来辅助把网站用户行为数据过滤到Hadoop集群当中。

Hadoop 2还提供了在高可用方面的改进,新的特性能够帮助用户在HDFS上创建一个联邦命名节点架构,而无需依靠一个单一的节点来控制整个集群。此外,它还添加了对Windows平台的支持,配合大型厂商定制开发的各种实用工具,Hadoop在企业级层面上的应用将被看好。

分布式数据库系统(DDBS)包含分布式数据库管理系统(DDBMS)和分布式数据库(DDB)。在分布式数据库系统中,一个应用程序可以对数据库进行透明 *** 作,数据库中的数据分别在不同的局部数据库中存储、由不同的 DBMS进行管理、在不同的机器上运行、由不同的 *** 作系统支持、被不同的通信网络连接在一起。

一个分布式数据库在逻辑上是一个统一的整体,在物理上则是分别存储在不同的物理节点上。一个应用程序通过网络的连接可以访问分布在不同地理位置的数据库。它的分布性表现在数据库中的数据不是存储在同一场地。更确切地讲,不存储在同一计算机的存储设备上。这就是与集中式数据库的区别。从用户的角度看,一个分布式数据库系统在逻辑上和集中式数据库系统一样,用户可以在任何一个场地执行全局应用。就好像那些数据是存储在同一台计算机上,有单个数据库管理系统(DBMS)管理一样,用户并没有什么感觉不一样。

分布式数据库系统是在集中式数据库系统的基础上发展起来的,是计算机技术和网络技术结合的产物。分布式数据库系统适合于单位分散的部门,允许各个部门将其常用的数据存储在本地,实施就地存放本地使用,从而提高响应速度,降低通信费用。分布式数据库系统与集中式数据库系统相比具有可扩展性,通过增加适当的数据冗余,提高系统的可靠性。在集中式数据库中,尽量减少冗余度是系统目标之一.其原因是,冗余数据浪费存储空间,而且容易造成各副本之间的不一致性.而为了保证数据的一致性,系统要付出一定的维护代价.减少冗余度的目标是用数据共享来达到的。而在分布式数据库中却希望增加冗余数据,在不同的场地存储同一数据的多个副本,其原因是:①.提高系统的可靠性、可用性当某一场地出现故障时,系统可以对另一场地上的相同副本进行 *** 作,不会因一处故障而造成整个系统的瘫痪。②.提高系统性能系统可以根据距离选择离用户最近的数据副本进行 *** 作,减少通信代价,改善整个系统的性能。

分布式软件系统(Distributed Software Systems)是支持分布式处理的软件系统,是在由通信网络互联的多处理机体系结构上执行任务的系统。它包括分布式 *** 作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等。

分布式 *** 作系统负责管理分布式处理系统资源和控制分布式程序运行。它和集中式 *** 作系统的区别在于资源管理、进程通信和系统结构等方面。

分布式程序设计语言用于编写运行于分布式计算机系统上的分布式程序。一个分布式程序由若干个可以独立执行的程序模块组成,它们分布于一个分布式处理系统的多台计算机上被同时执行。它与集中式的程序设计语言相比有三个特点:分布性、通信性和稳健性。

分布式文件系统具有执行远程文件存取的能力,并以透明方式对分布在网络上的文件进行管理和存取。

分布式数据库系统由分布于多个计算机结点上的若干个数据库系统组成,它提供有效的存取手段来 *** 纵这些结点上的子数据库。分布式数据库在使用上可视为一个完整的数据库,而实际上它是分布在地理分散的各个结点上。当然,分布在各个结点上的子数据库在逻辑上是相关的。

---------------

分布式数据库系统是由若干个站集合而成。这些站又称为节点,它们在通讯网络中联接在一起,每个节点都是一个独立的数据库系统,它们都拥有各自的数据库、中央处理机、终端,以及各自的局部数据库管理系统。因此分布式数据库系统可以看作是一系列集中式数据库系统的联合。它们在逻辑上属于同一系统,但在物理结构上是分布式的。

分布式数据库系统已经成为信息处理学科的重要领域,正在迅速发展之中,原因基于以下几点:

1、它可以解决组织机构分散而数据需要相互联系的问题。比如银行系统,总行与各分行处于不同的城市或城市中的各个地区,在业务上它们需要处理各自的数据,也需要彼此之间的交换和处理,这就需要分布式的系统。

2、如果一个组织机构需要增加新的相对自主的组织单位来扩充机构,则分布式数据库系统可以在对当前机构影响最小的情况下进行扩充。

3、均衡负载的需要。数据的分解采用使局部应用达到最大,这使得各处理机之间的相互干扰降到最低。负载在各处理机之间分担,可以避免临界瓶颈。

4、当现有机构中已存在几个数据库系统,而且实现全局应用的必要性增加时,就可以由这些数据库自下而上构成分布式数据库系统。

5、相等规模的分布式数据库系统在出现故障的几率上不会比集中式数据库系统低,但由于其故障的影响仅限于局部数据应用,因此就整个系统来讲它的可靠性是比较高的。

特点

1、在分布式数据库系统里不强调集中控制概念,它具有一个以全局数据库管理员为基础的分层控制结构,但是每个局部数据库管理员都具有高度的自主权。

2、在分布式数据库系统中数据独立性概念也同样重要,然而增加了一个新的概念,就是分布式透明性。所谓分布式透明性就是在编写程序时好象数据没有被分布一样,因此把数据进行转移不会影响程序的正确性。但程序的执行速度会有所降低。

3、集中式数据库系统不同,数据冗余在分布式系统中被看作是所需要的特性,其原因在于:首先,如果在需要的节点复制数据,则可以提高局部的应用性。其次,当某节点发生故障时,可以 *** 作其它节点上的复制数据,因此这可以增加系统的有效性。当然,在分布式系统中对最佳冗余度的评价是很复杂的。

分布式系统的类型,大致可以归为三类:

1、分布式数据,但只有一个总 据库,没有局部数据库。

2、分层式处理,每一层都有自己的数据库。

3、充分分散的分布式网络,没有中央控制部分,各节点之间的联接方式又可以有多种,如松散的联接,紧密的联接,动态的联接,广播通知式联接等。

以上就是关于数据仓库之门向Hadoop开启全部的内容,包括:数据仓库之门向Hadoop开启、分布式数据库系统的基本简介、分布式系统的例子和这个例子的工作模式等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9353083.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存