hadoop介绍
以下内容是我的学习笔记,网络课程的笔记。出处
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。
HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
介绍hadoop就是需要先了解hadoop的使用场景,先熟悉一下下面的概念:
什么是大数据
基本概念
简单说就是 数据处理 在互联网技术发展到现今阶段,大量日常、工作等事务产生的数据都已经信息化, 人类产生的数据量相比以前有了爆炸式的增长, 以前的传统的数据处理技术已经无法胜任,需求催生技术,一套用来处理海量数据的软件工具应运而生,这就是大数据!
- 处理海量数据的核心技术 *
海量数据存储:分布式
海量数据运算:分布式
这些核心技术的实现是不需要用户从零开始造轮子的
存储和运算,都已经有大量的成熟的框架来用
存储框架:
- HDFS——分布式文件存储系统(HADOOP中的存储框架)
- HBASE——分布式数据库系统
- KAFKA——分布式消息缓存系统(实时流式数据处理场景中应用广泛)
运算框架:
(要解决的核心问题就是帮用户将处理逻辑在很多机器上并行)
- MAPREDUCE—— 离线批处理/HADOOP中的运算框架
- SPARK —— 离线批处理/实时流式计算
- STORM —— 实时流式计算
辅助类的工具
(解放大数据工程师的一些繁琐工作):
- HIVE —— 数据仓库工具:可以接收sql,翻译成mapreduce或者spark程序运行
- FLUME——数据采集
- SQOOP——数据迁移
- ELASTIC SEARCH —— 分布式的搜索引擎
换个角度说,
大数据是:
- 有海量的数据
- 有对海量数据进行挖掘的需求
- 有对海量数据进行挖掘的软件工具(hadoop、spark、storm、flink、tez、impala......)
大数据在现实生活中的具体应用
- 数据处理的最典型应用:公司的产品运营情况分析
- 电商推荐系统:基于海量的浏览行为、购物行为数据,进行大量的算法模型的运算,得出各类推荐结论,以供电商网站页面来为用户进行商品推荐
- 精准广告推送系统:基于海量的互联网用户的各类数据,统计分析,进行用户画像(得到用户的各种属性标签),然后可以为广告主进行有针对性的精准的广告投放
什么是hadoop
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
Hadoop解决哪些问题?
* 海量数据需要及时分析和处理 * 海量数据需要深入分析和挖掘 * 数据需要长期保存 * 海量数据存储的问题: * 磁盘IO称为一种瓶颈,而非CPU资源 * 网络带宽是一种稀缺资源 * 硬件故障成为影响稳定的一大因素
hadoop中有3个核心组件:
- 分布式文件系统:HDFS —— 实现将文件分布式存储在很多的服务器上
- 分布式运算编程框架:MAPREDUCE —— 实现在很多机器上分布式并行运算
- 分布式资源调度平台:YARN —— 帮用户调度大量的mapreduce程序,并合理分配运算资源
hdfs整体运行机制
hdfs:分布式文件系统
hdfs有着文件系统共同的特征:
有目录结构,顶层目录是: /
系统中存放的就是文件
系统可以提供对文件的:创建、删除、修改、查看、移动等功能
hdfs跟普通的单机文件系统有区别:
- 单机文件系统中存放的文件,是在一台机器的操作系统中, hdfs的文件系统会横跨N多的机器
单机文件系统中存放的文件,是在一台机器的磁盘上
hdfs文件系统中存放的文件,是落在n多机器的本地单机文件系统中(hdfs是一个基于linux本地文件系统之上的文件系统)
hdfs的工作机制:
客户把一个文件存入hdfs,其实hdfs会把这个文件切块后,分散存储在N台linux机器系统中(负责存储文件块的角色:data node)<准确来说:切块的行为是由客户端决定的>
一旦文件被切块存储,那么,hdfs中就必须有一个机制,来记录用户的每一个文件的切块信息,及每一块的具体存储机器(负责记录块信息的角色是:name node)
为了保证数据的安全性,hdfs可以将每一个文件块在集群中存放多个副本(到底存几个副本,是由当时存入该文件的客户端指定的)
综述:一个hdfs系统,由一台运行了namenode的服务器,和N台运行了datanode的服务器组成!
我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
ATEC倒计时21天|大数据特色银行之贵阳银行
小蚂蚁说: 考虑到加速回报定律,过去20年,科技对日常生活的改变可能比我们想象中的更丰富和立体。 只是,看不见,摸不着的技术是如何悄无声息地进行着这场革命?又是哪些技术完成了让“鸡毛蒜皮”更加便捷、高效的改变? 在距离2018年ATEC峰会还有三十天的时候,我们启动这个海报系列,希望通过不同时空下,30个不同场景的对比,讲述科技如何惊艳了时光。 这是蚂蚁科技的故事,是蚂蚁科技客户们的故事,更是我们每一个人的故事。 贵阳银行介绍 贵阳银行股份有限公司成立于1997年,注册资本22.99亿元,总行位于贵州省贵阳市。2016年8月,贵阳银行首次公开发行股票在上海证券交易所成功上市。 20年风雨兼程,贵阳银行坚持稳健经营与开拓创新并举,深耕本地与辐射区域并行。目前该行网点建设已实现贵州省内88个县域全覆盖,并且以“智能网点”推动传统网点转型,逐步完成网
- 下一篇
[MaxCompute MapReduce实践]通过简单瘦身,解决Dataworks 10M文件限制问题
用户在DataWorks上执行MapReduce作业的时候,文件大于10M的JAR和资源文件不能上传到Dataworks,导致无法使用调度去定期执行MapReduce作业。 解决方案: 第一步:大于10M的resources通过MaxCompute CLI客户端上传, 客户端下载地址:https://help.aliyun.com/document_detail/27971.html 客户端配置AK、EndPoint:https://help.aliyun.com/document_detail/27804.html add jar C:\test_mr\test_ab.jar -f;//添加资源,大于10M 第二步:目前通过MaxCompute CLI上传的资源,在Dataworks左侧资源列表是找不到的,只能通过list resourc
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Mario游戏-低调大师作品
- 2048小游戏-低调大师作品
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案