首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

全栈设计师技术Wiki之Hadoop

Apache Hadoop:

Apache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目 (HDFS) 和支持MapReduce分布式计算的软件架构。

Hadoop的核心是HDFSMapReduce,国人喜欢用 “分而治之 ” 来概括。

分而治之

出自《 群经平议·周官二 》“ 巫马下士二人医四人 ”:“ 凡邦之有疾病者,疕疡者造焉 ,则使医分而治之 ,是亦不自医也 。” 简单点可以理解为分别治理的意思。

这类似于设计思维中的分类思想,例如:

UX中的用户画像,给用户打TAG

UED的设计语言,分解设计目标,为不同的子目标设定设计规则;也可以用于分解设计元素,制定每种元素的设计策略;

UI& 平面设计,针对配色、构图、字体样式等有不同的考究;

UX设计,关注功能、布局、使用路径、信息架构等的优化;

建筑/景观设计,分别关注空间、材质、功能、视线等的体验;

Hadoop广泛应用于大数据中,用于处理数百GBTBPB的数据。利用HDFS,集群N台普通计算机( 如配置为硬盘128GB,内存4 G),形成一个硬盘为N X 128 GB,内存N X 4 G的 “ 大型 ” 计算机。Hadoop在此扮演的是数据分发的角色,可以很方便的随时将原始数据的每一部分发送到群集中的多台计算机上进行保存,并计算。

计算的时候,使用MapReduce模型来将工作分成一组独立的任务来并行处理大量数据。

MapReduce中,记录由被称为Mappers的任务隔离处理。然后将Mappers的输出结合到称为Reducers的第二组任务中,其中可以将来自不同映射器的结果合并在一起。

MapReduce的例子——单词统计:

统计单词在不同文件中出现的次数。我们有2个文件:

foo.txt:Sweet, this is the foo file

bar.txt:This is the bar file

输出的结果应该是:

写成MapReduce的伪代码形式如下:

Hadoop不是数据库的替代品,而是一个计算框架,可以理解为就是个用于大数据的“计算器”。Hadoop将数据存储在文件中,并且不会对它们编制索引。如果您想查找某些内容,则必须运行MapReduce作业以查看所有数据。这需要时间,并且意味着您不能直接使用Hadoop作为数据库的替代品。并且对于数据库的更新及更改数据的操作,Hadoop都不支持。

这个时代保持自学的热情很重要,本文作为技术Wiki的开篇,后续将持续更新。

*

知识星球

更多可以在知识星球交流。还包括:

1 看到一些好案例关键技术解决方案,写出文章又不成体系,发星球;

2 我会在知识星球发一些非常机密的研究心得;

3 一些非常有技巧的知识,给付费用户;

4 公众号的迭代版本,针对文章发更为升级、核心的内容。

5 当然,还有资深的专家在星球里。

*

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180310G04SJY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券