Hadoop的hdfs

news/2024/5/20 4:03:06 标签: 分布式, 大数据, hadoop, mapreduce, hdfs

1、Hadoop是什么



实际应用:

(1)Flume+Logstash+Kafka+Spark Streaming进行实时日志处理分析


img

1.1、小故事版本的解释

小明接到一个任务:计算一个100M的文本文件中的单词的个数,这个文本文件有若干行,每行有若干个单词,每行的单词与单词之间都是以空格键分开的。对于处理这种100M量级数据的计算任务,小明感觉很轻松。他首先把这个100M的文件拷贝到自己的电脑上,然后写了个计算程序在他的计算机上执行后顺利输出了结果。

后来,小明接到了另外一个任务,计算一个1T(1024G)的文本文件中的单词的个数。再后来,小明又接到一个任务,计算一个1P(1024T)的文本文件中的单词的个数……

面对这样大规模的数据,小明的那一台计算机已经存储不下了,也计算不了这样大的数据文件中到底有多少个单词了。机智的小明上网百度了一下,他在百度的输入框中写下了:大数据存储和计算怎么办?按下回车键之后,出现了有关Hadoop的网页。

看了很多网页之后,小明总结一句话:Hadoop就是存储海量数据和分析海量数据的工具。



1.2、稍专业点的解释

Hadoop

Hadoop是由java语言编写的,在分布式服务器集群上存储海量数据并运行分布式分析应用的开源框架,其核心部件是HDFS与MapReduce。

  • HDFS是一个分布式文件系统:引入存放文件元数据信息的服务器Namenode和实际存放数据的服务器Datanode,对数据进行分布式储存和读取。
  • MapReduce是一个分布式计算框架:MapReduce的核心思想是把计算任务分配给集群内的服务器里执行。通过对计算任务的拆分(Map计算/Reduce计算)再根据任务调度器(JobTracker)对任务进行分布式计算。

把HDFS理解为一个分布式的,有冗余备份的,可以动态扩展的用来存储大规模数据的大硬盘。

把MapReduce理解成为一个计算引擎,按照MapReduce的规则编写Map计算/Reduce计算的程序,可以完成计算任务。

HDFS文件系统和Linux文件系统、Windows文件系统可以类比并列



1.3、记住下面的话:

​ Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

把HDFS理解为一个分布式的,有冗余备份的,可以动态扩展的用来存储大规模数据的大硬盘。

把MapReduce理解成为一个计算引擎,按照MapReduce的规则编写Map计算/Reduce计算的程序,可以完成计算任务。




2、Hadoop能干什么

大数据存储:分布式存储

日志处理:擅长日志分析

ETL:数据抽取到oracle、mysql、DB2、mongdb及主流数据库

机器学习: 比如Apache Mahout项目

搜索引擎:Hadoop + lucene实现

数据挖掘:目前比较流行的广告推荐,个性化广告推荐

Hadoop是专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式。


(2)酷狗音乐的大数据平台


img


写在最后面的话,出来一个新技术,最好的学习方法是去看官方网站。



转载自:https://blog.csdn.net/qq_32649581/article/details/82892861


http://www.niftyadmin.cn/n/1846990.html

相关文章

一般图最大匹配(带花树算法)(学习+模板)

参考博客: https://blog.csdn.net/xuezhongfenfei/article/details/10148445 https://www.cnblogs.com/zhoushuyu/p/8717234.html https://www.cnblogs.com/owenyu/p/6858508.html 经典例题: https://www.cnblogs.com/BAJimH/p/10569418.html 增广…

Maven之scope-runtime

Maven之scope-runtime 当时我在配置mybatis时&#xff0c;按照别人方式在pom文件引入包&#xff0c;导致MapperScan注解找不到。一种寻找办法解决中 简单介绍下runtime runtime 是运行的意思。指的是直接在运行时所需要的包&#xff0c;而非在编译时等时候需要的包。 <d…

对String类型要关联(HAS-A)不要继承(IS-A)

对String类型要关联&#xff08;HAS-A&#xff09;不要继承&#xff08;IS-A&#xff09; 模型元素之间的连接关系有&#xff1a;关联Association、概化Generalization、依赖Dependency、实现Realization、聚合Aggregation、组合Combination。其中&#xff0c;聚合和组合是关联…

2019 南京网络赛 H Holy Grail(二分+spfa判负环模板)

题意&#xff1a;有向有负权图&#xff0c;加6条边&#xff0c;求每次最小的边权&#xff0c;使图没有负环&#xff0c;答案唯一。 思路&#xff1a;二分答案spfa判负环 1.dfs判负环 16ms #include<iostream> #include<cstdio> #include<cstring> #includ…

CDQ分治学习总结

学习博客&#xff1a; https://www.cnblogs.com/LMCC1108/category/1444281.html 来自未来“图灵奖”获得者潘武灵 https://www.cnblogs.com/mlystdcall/p/6219421.html 来自一看就知道是大佬的__stdcall 拙见&#xff1a;首先&#xff0c;在此膜一发算法发明者---陈丹琦小…

2018宁夏邀请赛 Clever King(最大点权闭合子图学习+模板)

参考博客&#xff1a;https://www.cnblogs.com/dilthey/p/7565206.html 题意&#xff1a;T组样例。n种产品&#xff0c;m个矿场。制造每种产品都需要一些其他产品和矿石。制造一种产品会获得val的收益&#xff0c;开采一个矿场需要花费cost&#xff0c;矿场一旦开采就能获得无…

switch的long转int-精度损失-枚举类型

switch支持int和枚举类型&#xff0c;可以用char,byte,short,int类型&#xff0c;jdk1.7中支持string类型&#xff0c;但是不支持long类型 Incompatible types. Found: boolean, required: char, byte, short, int, Character, Byte, Short, Integer, String, or an enum因为b…

哈密顿回路/路径学习

参考博客&#xff1a;https://blog.csdn.net/zhouzi2018/article/details/81278942 哈密顿图 哈密顿图&#xff08;哈密尔顿图&#xff09;&#xff08;英语&#xff1a;Hamiltonian graph&#xff0c;或Traceable graph&#xff09;是一个无向图&#xff0c;由天文学家哈密顿…