Hadoop平台简介 - 肖韬 南京大学计算机系
- 格式:pptx
- 大小:1.07 MB
- 文档页数:44


Hadoop(⼀)Hadoop的简介与源码编译
⼀ Hadoop简介
1.1Hadoop产⽣的背景
1. HADOOP最早起源于Nutch。Nutch的设计⽬标是构建⼀个⼤型的全⽹搜索引擎,包括⽹页抓取、索引、查询等功能,但随着抓取⽹页数
量的增加,遇到了严重的可扩展性问,如何解决数⼗亿⽹页的存储和索引问题。
2. 2003年开始⾕歌陆续发表的三篇论⽂为该问题提供了可⾏的解决⽅案。
分布式⽂件系统(GFS),可⽤于处理海量⽹页的存储
分布式计算框架MAPREDUCE,可⽤于处理海量⽹页的索引计算问题。
BigTable 数据库:OLTP 联机事务处理 Online Transaction Processing 增删改,OLAP 联机分析处理 Online Analysis Processing 查
询,真正的作⽤:提供了⼀种可以在超⼤数据集中进⾏实时CRUD操作的功能
3.Nutch的开发⼈员完成了相应的开源实现HDFS和MAPREDUCE,并从Nutch中剥离成为独⽴项⽬HADOOP,到2008年1⽉,HADOOP成
为Apache顶级项⽬,迎来了它的快速发展期。
1.2 Hadoop的优势
1)⾼可靠性:因为Hadoop假设计算元素和存储会出现故障,因为它维护多个⼯作数据副本,在出现故障时可以对失败的节点重新分布处理
2)⾼扩展性:在集群间分配任务数据,可⽅便的扩展数以千计的节点。
3)⾼效性:在MapReduce的思想下,Hadoop是并⾏⼯作的,以加快任务处理速度。
4)⾼容错性:⾃动保存多份副本数据,并且能够⾃动将失败的任务重新分配。
1.3 Hadoop组成
1)Hadoop HDFS:⼀个⾼可靠、⾼吞吐量的分布式⽂件系统。
2)Hadoop MapReduce:⼀个分布式的离线并⾏计算框架。
3)Hadoop YARN:作业调度与集群资源管理的框架。
4)Hadoop Common:⽀持其他模块的⼯具模块。
1.4.1 YARN架构概述
hadoop的生态体系及各组件的用途
Hadoop是一个生态体系,包括许多组件,以下是其核心组件和用途:
1. Hadoop Distributed File System (HDFS):这是Hadoop的分布式文件系统,用于存储大规模数据集。它设计为高可靠性和高吞吐量,并能在低成本的通用硬件上运行。通过流式数据访问,它提供高吞吐量应用程序数据访问功能,适合带有大型数据集的应用程序。
2. MapReduce:这是Hadoop的分布式计算框架,用于并行处理和分析大规模数据集。MapReduce模型将数据处理任务分解为Map和Reduce两个阶段,从而在大量计算机组成的分布式并行环境中有效地处理数据。
3. YARN:这是Hadoop的资源管理和作业调度系统。它负责管理集群资源、调度任务和监控应用程序。
4. Hive:这是一个基于Hadoop的数据仓库工具,提供SQL-like查询语言和数据仓库功能。
5. Kafka:这是一个高吞吐量的分布式消息队列系统,用于实时数据流的收集和传输。
6. Pig:这是一个用于大规模数据集的数据分析平台,提供类似SQL的查询语言和数据转换功能。
7. Ambari:这是一个Hadoop集群管理和监控工具,提供可视化界面和集群配置管理。
此外,HBase是一个分布式列存数据库,可以与Hadoop配合使用。HBase中保存的数据可以使用MapReduce来处理,它将数据存储和并行计算完美地结合在一起。
总第290期
2013年第12期 计算机与数字工程 Computer&Digital Engineering Vo1.41 No.12 1939
基于Hadoop的大数据查询系统简述
陈梦杰陈勇旭贾益斌张--11l宋杰 (东北大学软件学院沈阳110819)
摘要近年来,随着计算机技术的迅猛发展,其领域迎来了大数据时代。随着大数据的出现,传统的关系型数据库已经不能满足高储 存量的要求,此时成本低廉、有着良好并行性和伸缩性的云数据库应运而生,它采用键值对数据模型和分布式的计算环境。但是海量数据在
Key-value数据库中的查询效率低下、实时性差等问题又普遍存在。为了解决查询效率低下这一问题,将多维数据模型和索引技术应用于 Key-value数据库,将事实数据以多维的形式进行存储并在多维模型上建立索引以加快查询速度。论文将系统地描述多维数据模型的建立 和索引技术的实现,最后简单地和主流Key-value数据库进行优缺点对比。 关键词 大数据;Key-value数据库;多维模型;Z-ordering;K—d tree
中图分类号TP391 DOI:10.3969/j.issn1672—9722.2013.12.021
A Brief Introduction Hadoop—based Big Data Query System
CHEN Mengjie CHEN Yongxu ZHANG Yichuan SONG Jie (Software College,Northeastern University,Shenyang 110004)
Abstract In recent years,with the rapid development of computer technology,its area ushers in the era of big data.With the emer— gence of big data,the traditional relational database connot meet the needs of high storage capacity when the 1OW cost cloud database with good parallelism and scalability comes into being at the historic moment.It uses a Key-value data model and the distributed computing envi— ronment.But the problem that query of huge amounts of data in the Key-value database lacks efficiency and has bad real—time performance is universa1.To solve 1OW efficiency in query,this system applies multidimensional data mode1 and the indexing technology to the Key-value da— tabase.storing fact data in forms of multidimensional data and indexing on the multidimensional model in order to speed up the query.The establishment of multidimensional data mode1 and the implementation of indemng technology is systematically described.Finally the thesis briefly compares it tO the mainstream Key-value database in terms of advantages and disadvantages. Koy Words big data,Key-value database,multidimensional data model,Z-ordering,K—d tree
海量数据处理技术——Hadoop介绍
如今,在数字化时代,数据已经成为企业和组织中最重要的资产之一,因为巨大量的数据给企业和组织带来了更多的挑战,比如如何存储、管理和分析数据。随着数据越来越庞大,传统方法已经无法胜任。这正是Hadoop出现的原因——Hadoop是一个开源的、可扩展的海量数据处理工具。本文将介绍什么是Hadoop、它的架构和基本概念、以及使用的应用场景。
一、 什么是Hadoop
Hadoop是一种基于Java的开源框架,它可以将大量数据分布式分割存储在许多不同的服务器中,并能够对这些数据进行处理。Hadoop最初是由Apache软件基金会开发的,旨在解决海量数据存储和处理的难题。Hadoop采用了一种分布式存储和处理模式,能够高效地处理PB级别甚至EB级别的数据,使得企业和组织能够在这些大量数据中更快地发现价值,并利用它带来的价值。
二、 Hadoop架构和基本概念
Hadoop架构由两个核心组成部分构成:分布式文件系统Hadoop Distributed File System(HDFS)和MapReduce的执行框架。
1. HDFS
HDFS以可扩展性为前提,其存储处理是在上面构建的,它在集群内将数据分成块(Block),每个块的大小通常为64MB或128MB,然后将这些块存储在相应的数据节点上。HDFS架构包含两类节点:一个是namenode,另一个是datanode。namenode是文件系统的管理节点,负责存储所有文件和块的元数据,这些元数据不包括实际数据本身。datanode是存储节点,负责存储实际的数据块,并向namenode报告其状态。
2. MapReduce
MapReduce是一个处理数据的编程模型,它基于两个核心操作:map和reduce。Map负责将输入数据划分为一些独立的小片段,再把每个小片段映射为一个元组作为输出。Reduce将Map输出的元组进行合并和过滤,生成最终输出。MapReduce是基于Hadoop的分布式处理系统之上的,它通过分布式并行的方式来处理大量数据。MapReduce系统包括三个主组件:JobTracker、TaskTracker和MapReduce程序。JobTracker是一个中央管理节点,可以在所有可用的数据节点上启动MapReduce任务,并将Jobs分解为多个任务。TaskTracker是数据节点上的本地任务管理器,负责接收从JobTracker过来的任务,并运行这些任务。MapReduce程序是由开发者按照MapReduce模型编写的专用计算程序。