hadoop随记(一)

简介:

    现在是一个大数据的年代,每天全球已电子方式存储数据的数据总量非常大。下面是部分例子:

     1,facebook存储这约100亿张照片,越1PB存储容量

     2,The Internet Archive(互联网档案馆)存储这约2PB数据,并以每月至少20TB的速度增长

     3,瑞士日内瓦附近的大型强子对撞机每年产生15PB数据

     我们有了大量的数据,可以从中分析出我们有用的信息,如单个用户浏览网页内容的偏好,发现潜在用户等,还有很多用于科学技术上的用处。

     那么数据怎么存放呢?这么大的数据量,首要解决的是数据读写速度,数据安全性,硬件故障等问题,要有高可用的方案。而hadoop就提供了这样的解决办法:hadoop提供了一个可靠的共享存储和分析系统。HDFS实现存储,而MapReduce实现分析处理。



    关系型数据库和MapReduce:

    数据库系统只更新一部分记录,比mapreduce有优势。但是,如果更新大量数据时,效率就要比mapreduce低很多,因为需要使用“排序/合并”来重建数据库。mapreduce比较适合以批处理方式处理需要分析整个数据集的问题;而RDBMS适用于“点查询”和更新,数据集被索引后,数据库系统能够提供低延迟的数据检索和快速的少量数据更新。mapreduce适合一次写入,多次读取数据的应用,而关系型数据库更适合持续更新的数据集。

     另一个区别在于它们所操作的数据集的结构化程度。结构化数据是具有既定格式的实体化数据,如xml文档等。半结构化数据比较松散,虽可能有格式,但也可以被忽略,所以他只能用作对数据结构的一般指导,如一张电子表格,其结构是由单元格组成的网格,但是每个单元格自身可保存任何形式的数据。非结构化数据没有什么特别的内部结构,例如纯文本等。mapreduce对于非结构化或半结构化数据非常有效,因为在处理数据时才对数据进行解释。而关系型数据都是规范的,以保证数据的完整性且不含冗余。规范化给mapreduce带来了问题,因为它使记录读取成为异地操作,不能进行高速的流式读写,而使用mapreduce的核心前提就是他可以进行高速的流式读写操作。



     分布式计算:

     1,mapreduc会尽量在计算节点上存储数据,以实现数据的本地快速访问,从而获得良好的性能,降低使用的网络带宽。

     2,mapreduce让程序员无需考虑系统部分失效问题,因为自身系统实现难能够检测到失败的map或reduce任务,并让正常运行的机器重新执行这些失败的任务,即各个任务之间彼此独立。

     hadoop的设计目标:

     服务于那些只需数分钟或数小时即可完成的作业,并且运行于内部通过高速网络连接的单一数据中心内,并且该数据中心内的计算机需要由可靠的,定制的硬件构成。



    常见的hadoop相关项目:

     mapreduce:分布式数据处理模型和执行环境,运行于大型商用集群

     hdfs:分布式文件系统,运行于大型商用集群

     hive:一个分布式,按列存储的数据仓库。hive管理hdfs中存储的数据,并提供基于sql的查询语言用以查询数据。

     hbase:一个分布式,按列存储数据库。hbase使用hdfs作为底层存储,同时支持mapreduce的批量式计算和点查询

     zookeeper:一个分布式,可用性高的协调服务。zookeeper提供分布式锁之类的基本服务用于构建分布式应用










本文转自 leejia1989 51CTO博客,原文链接:http://blog.51cto.com/leejia/1553019,如需转载请自行联系原作者
目录
相关文章
|
存储 Java Android开发
Android系统升级的机制概要
Android系统升级的机制概要
523 0
|
数据采集 小程序 数据可视化
策略篇1:消费者运营是什么? 解读产品Quick Audience | 《零售数据中台通关指南》
本篇主要介绍了全域营销典型场景和全域营销解决方案。
策略篇1:消费者运营是什么? 解读产品Quick Audience | 《零售数据中台通关指南》
|
小程序 数据库 开发者
小程序云开发联表数据查询以及云函数中的应用
1、联表查询 (1)lookup联接两个表格 (2)使用match进行条件查询 (3)直接返回学生成绩平均值 (4)只显示teacher和score这两个值 2、在云函数中的应用 (1)在云数据库中添加数据 (2)创建云函数并初始化数据库 (3)编辑云函数入口函数 (4)上传部署云函数
1213 0
小程序云开发联表数据查询以及云函数中的应用
|
Java Android开发 开发者
【Google Play】从 Android 应用中跳转到 Google Play 中 ( 跳转代码示例 | Google Play 页面的链接格式 | Google Play 免安装体验 )
【Google Play】从 Android 应用中跳转到 Google Play 中 ( 跳转代码示例 | Google Play 页面的链接格式 | Google Play 免安装体验 )
1935 0
|
存储 Java C++
大端(Big Endian)与小端(Little Endian)简介与实现
【大端(Big Endian)与小端(Little Endian)简介】Byte Endian是指字节在内存中的组织,所以也称它为Byte Ordering,或Byte Order。     对于数据中跨越多个字节的对象,我们必须为它建立这样的约定: (1) 它的地址是多少? (2) 它的字节在内存中是如何组织的?     针对第一个问题,有这样的解释:     对于跨
2761 0
|
传感器 人工智能 算法
Feat-Calibr | 一款实用的开源激光雷达到车体外参的标定工具
对于拥有惯导的自动驾驶车辆而言,激光雷达到惯导/车体(以下简称激光雷达外参自标定)的方法对后续的感知、定位等下游应用具有非常重要的意义。对于这一问题,最容易想到的办法是同时跑激光里程计与惯导的里程计,并使用手眼标定的方法寻找这外参。这个方法最主要的问题是标定精度受制于激光雷达里程计的精度,对于当前量产的固态激光雷达而言,受制于有限的FOV,测距精度较差,抖动,以及多变的标定场景等问题,难以适配鲁棒且高精度的激光里程计用于外参标定。
Feat-Calibr | 一款实用的开源激光雷达到车体外参的标定工具
|
监控 内存技术
博途软件PLCSIM仿真工具如何使用S7-1500 PLC仿真功能?
针对博途软件,西门子重新开发了PLCSIM,有了这个仿真工具我们就无需使用真实硬件,而可以对所编的程序进行仿真和调试。除此之外PLCSIM还增加了许多功能,比如说顺序控制的仿真。在今后的学习过程中我们会经常使用到PLCSIM,本节我们以S7-1500 PLC仿真功能为例,来介绍一下PLCSIM的操作和使用。
博途软件PLCSIM仿真工具如何使用S7-1500 PLC仿真功能?
|
机器学习/深度学习 人工智能 弹性计算
阿里云gpu云服务器产品优势、应用场景及最新收费标准和活动报价分享
阿里云GPU云服务器是阿里云弹性计算家族的一员,能够提供GPU加速计算能力,实现GPU计算资源的即开即用和弹性伸缩。GPU云服务器结合了GPU计算力与CPU计算力,满足您在人工智能、高性能计算、专业图形图像处理等场景中的需求。下面小编介绍一下阿里云gpu云服务器产品优势、应用场景及最新收费标准和最新活动报价情况。
920 0
阿里云gpu云服务器产品优势、应用场景及最新收费标准和活动报价分享
|
JavaScript
(四):vue 链接转二维码 并实现 下载功能
(四):vue 链接转二维码 并实现 下载功能
(四):vue 链接转二维码 并实现 下载功能
|
域名解析 网络协议 Linux
Linux系统修改DNS配置文件/etc/resolv.conf 出现Operation not permitted解决方法
Linux系统修改DNS配置文件/etc/resolv.conf 出现Operation not permitted解决方法
5962 1