首页 > 编程知识 正文

hadoop通俗解释(hadoop支持的编程语言)

时间:2023-05-05 18:32:59 阅读:84747 作者:737

hadoop擅长日志分析,facebook使用Hive进行日志分析,2009年facebook有30%的非程序员使用HiveQL进行数据分析。 也用于淘宝搜索中的自定义过滤器Hive; 使用Pig,可以进行高级数据处理,包括用于在Twitter和LinkedIn上查找熟人的人,可以实现类似亚马逊的东西。 com协同过滤的推荐效果。 淘宝的商品推荐也是! 在雅虎! 的Hadoop作业有40%以pig运行,包括垃圾邮件的识别和过滤,以及用户配置文件的建模。 天猫的推荐系统是hive。 让我们试一次少量的mahout吧!

举例说明。

想象一下这样的应用场景。 有一个100米数据库备份的sql文件。 现在,我想不导入数据库,直接通过grep操作通过正则过滤提出想要的内容。 例如,在一个表中包含相同关键字的记录有多种方法。 一个是直接用linux的命令进行grep的方法,另一个是用程序读取文件,使各行的数据正规一致后得到结果,现在是100M的数据库备份。 这两种方法都很容易应对。

那么,如果是1G、1T、甚至1PB的数据,上面两种方法行得通吗? 答案是否定的。 毕竟,一台服务器的性能总是有上限的。 那么,对于这样的大数据文件,如何得到我们想要的结果呢?

一种方法是分布式计算,分布式计算的核心是利用分布式算法将一台机器上运行的程序扩展到多台机器上并行运行。 加倍数据处理能力。 但是,这种分布式计算一般要求程序员,也要求服务。 成本变得非常高了。

Haddop就是为了解决这个问题而诞生的。 Haddop可以轻松地将许多linux便宜的pc变成分布式节点。 然后,程序员也不需要知道分布式算法等,只需要根据mapreduce的规则定义接口方法,剩下的就可以交给Haddop了。 它自动将相关计算分布在各个节点上,然后得出结果。

例如上面的例子: Hadoop要做的事情首先是将1PB的数据文件导入HDFS,然后程序员将map和reduce,也就是文件的行定义为key,各行的内容定义为value,正则匹配成功,然后用reduce聚合结果。 Hadoop将这个程序分散在n个节点上进行并行操作。

虽然可能需要计算几天,但是有足够多的节点可以在几个小时内缩短时间。

这就是所谓的大数据云计算。 如果还是不明白,我举个简单的例子

例如将1亿个1加起来得出计算结果,就很容易知道结果是1亿。 但是计算机不知道。 那么,用一台计算机处理方式进行一亿次循环,每个结果一次

分布式的处理方式我会用一万台计算机。 各计算机计算1万个后进行加法运算,另一台计算机将1万台计算机得到的结果相加后只得到最终结果。

理论上,计算速度将提高1万倍。 当然上面可能是不恰当的例子。 但是,分布式、大数据、云计算,大致就是这样。

最后,想学习Hadoop的朋友们,没有老师的指导很难学习Hadoop,特别是到了后期,容易产生偏差,学习周期变长。 自学的话,会缺乏为你背书,保证你学习成绩有效性的机构。 我是大讲台运营的老师。 我已经有很多在大讲台这个专业最实用的Hadoop在线机构学习的朋友了。 自学是那么的辛苦。 请来大讲台(dajiangtai.com)看看哦。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。