什么是hadoop?
hadoop 是一个可编程和运行分布式应用,用来处理大数据的开源框架。
Hadoop主要子项目
Hadoop Common: 在0.20及以前的版本中,包含HDFS、MapReduce和其他项目公共内容,从0.21开始HDFS和MapReduce被分离为独立的子项目,其余内容为Hadoop Common
HDFS: Hadoop 分布式文件系统 (Distributed File System) - HDFS (Hadoop Distributed File System)
MapReduce:并行计算框架,0.20前使用 org.apache.hadoop.mapred 旧接口,0.20版本开始引入org.apache.hadoop.mapreduce的新API
HBase: 类似Google BigTable的分布式NoSQL列数据库。(HBase 和 Avro 已经于2010年5月成为顶级 Apache 项目)
Hive:数据仓库工具,由Facebook贡献。
Zookeeper:分布式锁设施,提供类似Google Chubby的功能,由Facebook贡献。
Avro:新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制。
和其他分布式架构比较:
SETI@home(就是寻找外星人那个):是将数据传送到要计算的地方(运行屏保的计算机),经过计算,再将计算结果传回到数据中心。
hadoop的做法:将代码向数据所在的地方迁移。
和普通的数据库比较:
1.处理的对象不一样。
传统数据库处理的是 结构化的数据,如 表的结构都是固定的。结构化查询语言(Structured Query Language)简称SQL.
hadoop更多的是处理半结构化的数据或者非结构化的数据,如分析日志记录,统计字符出现的次数等等。
2.拓展方式不一样
hadoop的拓展是向外拓展,即需要扩容的时候,增加普通的机器。
普通数据库拓展是向高拓展,即更换更好的机器。(当然也可以向外拓展,这点有待讨论...)
3.hadoop用键值对代替数据表
传统数据库是让数据以某种模式存放在具有关系数据库的模式中。基于这种模式来对数据进行处理。hadoop将数据转化为键/值对来进行处理
4.hadoop用函数式编程(MapReduce)代替sql
5.hadoop用离线批量处理代替在线处理(hadoop为离线处理和大规模数据分析而设计,
更适合于 一次写入,多次读取 的情况,类似于sql的数据仓库)
==============================================================
我也是刚开始学习hadoop,学习的资料来自于 《hadoop实战》和《hadoop权威指南》 以及网上搜到的一些资料。
这些笔记是学习的过程中自己积累的,然后用更加浅显的话表述出来,希望也能帮助到初学者。当然里边会有很多错误,也希望大家指出,我会认真改正,谢谢
分享到:
相关推荐
这里 `<hostname>` 是数据库服务器地址,`<port>` 是数据库监听端口,`<database>` 是数据库名,`<tablename>` 是表名,`<username>` 和 `<password>` 是数据库连接的凭证,`<hdfs_path>` 指定HDFS上的目标存储位置...
【标题】"传智黑马赵星老师hadoop七天课程资料笔记-第一天(全)" 提供的是一份关于Hadoop的全面学习资料,主要聚焦在Hadoop的第一天课程内容。这个资源包涵盖了从基础概念到实际操作的多个方面,旨在帮助初学者快速...
Hadoop学习笔记,自己总结的一些Hadoop学习笔记,比较简单。
**Hadoop学习笔记详解** Hadoop是一个开源的分布式计算框架,由Apache基金会开发,主要用于处理和存储海量数据。它的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce,两者构成了大数据处理的基础...
Hadoop 学习笔记.md
【标题】"传智黑马赵星老师hadoop七天课程资料笔记-第七天(全)" 涵盖了Hadoop技术栈的重要知识点,这是一份关于Hadoop学习的详尽资料,特别关注了课程的最后一天内容。在Hadoop的学习过程中,第七天通常会涉及到系统...
提供的文档`hadoop学习笔记.doc`可能包含了Hadoop的基础概念、操作指南、实战案例等,建议仔细阅读以深入了解Hadoop的用法和原理。 至此,你已经成功安装了Hadoop,并且具备了运行一个基本Hadoop集群的基础。接...
<value>/usr/hadoop_installs/hadoop-1.1.2/tmp</value> </property> </configuration> ``` **(d)HDFS配置** 在`/usr/Hadoop_installs/hadoop-1.1.2/conf/hdfs-site.xml`中设置HDFS的数据块副本数量: ```xml...
Hadoop是一个开源框架,用于存储和处理大型数据集。由Apache软件基金会开发,Hadoop已经成为大数据处理事实上的标准。它特别适合于存储非结构化和半结构化数据,并且能够存储和运行在廉价硬件之上。Hadoop具有高可靠...
Hadoop的源码项目结构主要包括hadoop-common-project、hadoop-hdfs-project、hadoop-mapreduce-project、hadoop-yarn-project等,每个项目下又有多个子项目,包含了Hadoop运行所需的各个组件和客户端等。 在实际...
【HADOOP学习笔记】 Hadoop是Apache基金会开发的一个开源分布式计算框架,是云计算领域的重要组成部分,尤其在大数据处理方面有着广泛的应用。本学习笔记将深入探讨Hadoop的核心组件、架构以及如何搭建云计算平台。...
六、hadoop学习笔记之一:初识Hadoop 这篇笔记介绍了Hadoop的基本概念,包括Hadoop的诞生背景、核心组件以及Hadoop的优势。初学者可以从这里了解Hadoop的基本架构和工作原理,为后续的学习打下基础。 总结,Hadoop...
标题和描述中提到的是“传智黑马赵星老师hadoop七天课程资料笔记-第二天(全)”,这表明这是一个关于Hadoop技术的深度学习资源,主要聚焦于赵星老师的Hadoop教学课程中的第二天内容。通常,这样的课程会涵盖Hadoop的...
云计算,hadoop,学习笔记, dd
在本篇"Hadoop学习笔记(三)"中,我们将探讨如何使用Hadoop的MapReduce框架来解决一个常见的问题——从大量数据中找出最大值。这个问题与SQL中的`SELECT MAX(NUMBER) FROM TABLE`查询相似,但在这里我们通过编程...
在“传智黑马赵星老师hadoop七天课程资料笔记-第四天(全)”的学习中,我们深入探讨了Hadoop这一分布式计算框架的关键概念和技术。Hadoop是Apache软件基金会的一个开源项目,它设计用于处理和存储海量数据,通过...