大数据平台Hadoop-考试复习

闭卷笔试100分钟
题型单选(30)、多选(20)、问答(30)、应用(20)

一 概论

    1、大数据5V特点

Volume(大量)、Velocity(高速)、Variety(多样)、Value(低密度价值)、Veracity(真实性)

   *2、Google三驾马车

GFS(分布式文件系统)、MapReduce(超大集群的简单数据处理)、BigTable(结构化数据的分布式存储系统)

   3、Hadoop的特点

扩容能力:可靠的存储和处理PB级数据

低成本:普通计算机组成集群来处理数据,可达上千个节点

高效率:节点上并行处理数据使得速度快

可靠性:自动维护数据的多份复制,任务失败后自动重新部署计算任务

   4、Hadoop生态系统

HDFS:分布式存储,数据存储功能

MapReduce:分布式计算框架

HBase:分布式数据库,基于HDFS的NOSQL数据库

Zookeeper:,分布式协调服务框架,hadoop组件管理端

Pig:数据流处理,对MapReduce的抽象

Hive:数据仓库,将结构化的数据文件映射为数据表,将SQL翻译为MapReduce语句进行查询

   5、Hadoop的主要版本

   p7 1.3.4   最新的3.*,出现了YARN的版本2.0

   6、NoSQL有哪些

 关系型数据库产品很多,如 MySQL、Oracle、Microsoft SQL Sever 等,但它们的基本模型都是关系型数据模型。

 非关系型数据库又称为:NoSQL ,没有统一的模型,而且是非关系型的。

NoSQL 数据库并没有一个统一的架构,两种不同的 NoSQL 数据库之间的差异程度,远远超过两种关系型数据库之间的不同。可以说,NoSQL 数据库各有所长,一个优秀的 NoSQL 数据库必然特别适用于某些场合或者某些应用,在这些场合中会远远胜过关系型数据库和其他的 NoSQL 数据库。

常见的 NoSQL 数据库包括键值数据库、列族数据库、文档数据库和图形数据库,其具体分类和特点如表所示:

分类 相关产品 应用场景 数据模型 优点 缺点
键值数据库 RedisMemcached、Riak 内容缓存,如会话、配置文件、参数等;
频繁读写、拥有简单数据模型的应用
<key,value> 键值对,通过散列表来实现 扩展性好,灵活性好,大量操作时性能高 数据无结构化,通常只被当做字符串或者二进制数据,只能通过键来查询值
列族数据库 Bigtable、HBase、Cassandra 分布式数据存储与管理 以列族式存储,将同一列数据存在一起 可扩展性强,查找速度快,复杂性低 功能局限,不支持事务的强一致性
文档数据库 MongoDB、ES、CouchDB Web 应用,存储面向文档或类似半结构化的数据 <key,value> 
value 是 JSON 结构的文档
数据结构灵活,可以根据 value 构建索引 缺乏统一查询语法
图形数据库 Neo4j、InfoGrid 社交网络、推荐系统,专注构建关系图谱 图结构 支持复杂的图形算法 复杂性高,只能支持一定的数据规模

 

 

   7、Hadoop/HBase/Zookeeper属于什么开源项目?

   Apache基金会

   8、Hadoop的开发语言(Hadoop是用什么语言编写的)

   Java

二 HDFS

 

    *1、Hadoop三大基本组件

HDFS:分布式文件系统,数据存储

YARN:统一资源管理和调度系统,支持多种框架

MapReduce:分布式计算框架,运行于YARN上

   2、HDFS的特性和局限性

特性:

能保存PB级数据量,数据散布在大量节点上,支持更大文件

可靠性、高容错性,多节点数据备份

与MapReduce集成,允许数据在本地计算,减少计算时数据交互

局限性:

不适合低延迟数据访问

不适合大量小文件存储

不支持多用户并发写入及任意修改文件,一次写入多次读取

不支持缓存,每次从硬盘重新读取

   3、HDFS  block

在HDFS的实现中,数据块被抽象成类org.apache.hadoop.hdfs.protocol.Block(我们以下简称Block)。在Block类中有如下几个属性字段:

1

2

3

4

5

public class Block implements Writable, Comparable<Block> {

    private long blockId; // 标识一个Block的唯一Id

    private long numBytes; // Block的大小(单位是字节)

    private long generationStamp; // Block的生成时间戳

}

 我们从WEB UI上的数据块信息也可以看到:

  一个Block除了存储上面的3个字段信息,还需要知道这个Block含有多少个备份,每一个备份分别存储在哪一个DataNode上,为了存储这些信息,HDFS中有一个名为org.apache.hadoop.hdfs.server.blockmanagement.BlockInfoContiguous(下面我们简称为BlockInfo)的类来存储这些信息,这

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值