因为项目日志体量较大,每天有4-7T的日志量,传统的sqlserver已经不能满足,所以现在需要使用到大数据的相关工具进行记录和使用。
虽然公共项目提供了组件和解决方案,但是对于一些名词、概念还是有必要学习一下。

Hadoop历史

  • 雏形开始于2002年的Apache的Nutch,Nutch是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。
  • 随后在2003年Google发表了一篇技术学术论文谷歌文件系统(GFS)。GFS也就是google File System,google公司为了存储海量搜索数据而设计的专用文件系统。
  • 2004年Nutch创始人Doug Cutting基于Google的GFS论文实现了分布式文件存储系统名为NDFS。
  • 2004年Google又发表了一篇技术学术论文MapReduce。MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行分析运算。
  • 2005年Doug Cutting又基于MapReduce,在Nutch搜索引擎实现了该功能。
  • 2006年,Yahoo雇用了Doug Cutting,Doug Cutting将NDFS和MapReduce升级命名为Hadoop,Yahoo开建了一个独立的团队给Goug Cutting专门研究发展Hadoop。
  • 不得不说Google和Yahoo对Hadoop的贡献功不可没。

Hadoop核心

HDFS:(Hadoop Distributed File System,Hadoop分布式文件系统),它是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,适合那些有着超大数据集(large data set)的应用程序。

设计特点:
1、大数据,T级别,适用。
2、文件分块存储。将完整的文件分为M级别大小存储在不同的节点上,读取时从多个节点一起读取,效率高。
3、流式数据访问。适用于一次写入就不在变化的场景,可多次读取。
4、廉价硬件。
5、硬件故障。认为所有机器都可能出问题,会将文件存储多个副本在别的节点机器上。

核心元素:

  • Block:将一个文件进行分块,通常是64M。
  • NameNode:保存整个文件系统的目录信息、文件信息及分块信息,这是由唯一一台主机专门保存,当然这台主机如果出错,NameNode就失效了。在Hadoop2.*开始支持activity-standy模式----如果主NameNode失效,启动备用主机运行NameNode。
  • DataNode:分布在廉价的计算机上,用于存储Block块文件。

MapReduce:一套从海量数据中提取分析元素最后返回的编程模型。

  • Map:将文件分组,计算,得出一个结果。
  • Reduce:将Map的结果归纳,计算,得出最终的结果。

最新文章

  1. CentOS7 安装 net-speeder 提升 VPS 网络性能
  2. WebService的介绍概念 收藏
  3. u3d_shader_surface_shader_4
  4. 获取登陆ip
  5. Oracle技术嘉年华
  6. 关于extern和static关键字引出的一些关于作用域和链接属性和存储类型的问题
  7. Web2py也有意思的
  8. udp 不需要 listen
  9. 设计模式之(二)Adapter模式
  10. Tomcat教程
  11. DRP——Servlet(一)
  12. mybatis 批量插入值的sql
  13. Triangle Problems
  14. 一个小时学会Git
  15. Java虚拟机系列-Java类加载机制
  16. Docker 列出镜像
  17. Exp5 MSF基础应用
  18. 【转】如何在 GitHub 上找到你要的代码?
  19. USB 驱动(监测鼠标左键的动作)
  20. 导入转储文件的时候:Error Code: 1406. Data too long for column - MySQL

热门文章

  1. Qt编写自定义控件15-百分比仪表盘
  2. Android云端APP
  3. Scala中的列表可以添加元素吗?
  4. 封装Button ,封装UITableView,封装UICollectionView
  5. Springboot入门5-项目打包部署(转载)
  6. PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换
  7. 产品之我见(3)-ZEN在产品上的延伸
  8. 【转帖】Istio是啥?一文带你彻底了解!
  9. Redis(1.9)Redis主从复制
  10. scrapy生成json中文为ASCII码解决