第十一章大数据技术与实践

第十一章大数据技术与实践

大数据定义

大数据的“大”是相对而言的,是指所处理的数据规模巨大到无法通过目前主流数据库软件工具,在可以接受的时间内完成抓取、储存、管理和分析,并从中提取出人类可以理解的信息。

大数据4V特征

●Volume(数据量大):大数据的首要特征,数据体量巨大。当今世界需要进行及时处理以提取有用信息的数据数量级已经从TB级别,跃升到PB甚至EB级别。

●Variety(数据类型多):大数据的挑战不仅是数据量的大,也体现在数据类型的多样化。除了前文提到的网络日志、地理位置信息等具有固定结构的数据之外,还有视频、图片等非结构化数据。

●Velocity:(处理速度快):信息的价值在于及时,超过特定时限的信息就失去了使用的价值。

●Value(价值高):大数据商业价值,但是价值密度低。单个数据的价值很低,只有大量数据聚合起来处理才能借助历史数据预测未来走势,体现出大数据计算的价值所在。

HDFS

HDFS(全称Hadoop Distributed File System)原是Apache开源项目Nutch的组件,现在成为是Hadoop的重要组件,它是一款具有高容错性特点的分布式文件系统,它被设计为可以部署在造价低廉的主机集群上。它将一个大文件拆分成固定大小的小数据块,分别存储在集群的各个节点上。因此HDFS可以存储超大的数据集和单个巨大的文件。这样的分布式结构能够进行不同节点的并行读取,提高了系统的吞吐率。同一个数据块存储在不同的数据节点上,保证了HDFS在节点失败时还能继续提供服务,使其具有了容错性。

HDFS设计目标

1.检测和恢复硬件故障。

2.存储大数据集。

3.应用程序流式地访问HDFS上的数据集。

4.降低了HDFS在数据一致性方面的设计难度。

5.可移植性。

6.让计算随数据的位置而移动。

HDFS体系结构

HDFS副本放置策略

对于HDFS可靠性和性能至关重要。副本放置策略关系到数据的可靠性、可用性和网络带宽的利用率。对于副本放置策略的优化让HDFS在分布式文件系统中脱颖而出,这一调优是需要大量实践经验为基础实现的。

HDFS数据块

用HDFS作为存储系统的程序可以利用HDFS来处理巨大的数据集。通常这些文件只被写入一次,但是允许多次读取。

HDFS用户接口

HDFS提供了不同的用户接口,包括Java的API,并且为C语言提供了Java API的入口。除此之外,HDFS还为用户提供了HTTP浏览器GUI和Shell命令接口,并支持WebDAV协议。

HBase简介

Apache HBase是运行于Hadop平台上的数据库,它是可扩展的、分布式的大数据储存系统。HBase可以对大数据进行随机而实时的读取和写入操作。它的目标是在普通的机器集群中处理巨大的数据表,数据表的行数和列数都可以达到百万级别。

MongDB简介

MongoDB是一个面向集合的,模式自由的文档型数据库。

在数据库里每个聚集有-一个唯一-的名字, 可以包含无限个文档。聚集是RDBMS中表的同义词,区别是聚集不需要进行模式定义

你可能感兴趣的:(第十一章大数据技术与实践)