Hadoop教程

第1章:初识hadoop

本文主要是介绍第1章:初识hadoop,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

学习hadoop你需要了解哪些:

  • mapreduce
  • HDFS
  • YARN

简介:

当前是数据大爆发的时代,数的生成速度正在不断加快。
通过良好的设计,在同等算力下使得问题能够更快的解决。
随着数据量的不断膨胀,我们不再局限于将数据精准记录快速检查、更新的事务性数据库(关系型数据库),更希望能从全量数据中挖掘潜在价值,hadoop应运而生,haoop不仅可以对结构化的数据进行存储分析、更适用于半结构化、非结构化数据。 他相对于传统数据库而言有着明显的优势,是对传统数据库的补充。 他们相互弥补。

haoop上你可以轻松实现上亿条流水级别的关联,在关系型数据库上比较难办到,在关系型数据库中执行多半会报内存不足的。

并发的优势:

传统的系统多依赖一个高性能的主机,单挑能力比较强。俗话说好汉架不住人多,并发的优势在于团战。随着硬盘的容量越来越大,但是读写速度却并没质的飞越(100MB/s)。我们从一块磁盘上读取1TB文件,需要2.5H。如果我们从100个硬盘上同时读取数据,那么2分钟就可以完成。 这就是并发带来的好处。

高并发面临问题:

1、磁盘故障率:可以通过多磁盘备份数据(HDFS)
2、如何有效的组合这些分散的数据(MapReduce)

hadoop是什么

  • 提供稳定可靠的数据分布式存储、并发性分析平台。
  • HDFS : 一种分布式文件存储方式,一个大型文件被分成多份存储在不同的节点上(主机),同一分又被备份到其他节点上,用于数据恢复。
  • YARN集群资源管理系统,他的出现使得hadoop上可以运行任何一个分布式程序,如:SQL(Tez Hive)、迭代程序(spark)、流处理(storm)、搜索(Solr)。
  • mapreduce :是一个编程模式,提供了一种稳定可行的对分布式数据读取、处理的方法。 有map和reduce两部分组成。

hadoop和关系型数据库特点:

  • 关系型数据库对数据准确记录,多次读写更好。Haoop更擅长对已经写好的数据,进行多次读取并在此基础上分析。 RDBMS中由严格的事务管理机制,保障数据ACID特性。
  • 关系型数据库对数据格式要求严格,写入时已经设好数据类型。hadoop对格式要求没那么严格,可以有半结构化、非结构化的数据进行分析。 hadoop读取数据开销较小。RDMBS好在对局部数据的精确管理,hadoop能更好的对全量数据解读分析。
  • 因为格式并没有严格限制,所以读写速度是Hadoop的一大优势。
  • hadoop可以通过扩展集群规模,来显著提高集群性能。
hadoopRDBMS
数据大小GBPB
数据存取交互式和批处理批处理
更新多次读写一次写入,多次读取
事务ACID
结构事实模式读时模式
完整性
扩展性非线性线性

mapreduce的三大设计目标:

	1、更短时间内完成大规模数据的读取和处理
	2、需要运行在内部有高速网络连接的数据中心。 
	3、数据中心的计算机要可靠专业

网格计算:

数据存储在多个节点上。同一个任务被分配到不同的节点去做。当一个节点需要访问的数据量巨大时,就需要大量的网络传输,【网络带宽】即为重要的资源。
hadoop尽可能的将数据存储在本地进行计算,以减少网络传输数量。 系统需要检查各节点的运行状态(检查点),以及做好节点异常之后的数据恢复工作。

随着数据量的增加,不同系统的使用瓶颈在不断变化。当硬件水平突破的时候很多问题将会消失,但同时也会面临新的问题,我们需要做的是找到瓶颈。常见的瓶颈:存储(磁盘)、读写(io)、传输(网络)、计算(cpu)

在hadoop中cpu的使用并不是计算中的主要瓶颈、数据的传输才是。 因为数据量太大传输速度不够用。 如果是小范围数量的多次计算(CPU密集型)任务,

本文仅记录我学习haoop过程中的一些笔记,仅为读者分享Hadoop的基础知识和一些个人见解,不做任何商业活动,如需深入学习,请阅读原著《hadoop权威指南》

这篇关于第1章:初识hadoop的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!