hadoop overview,hadoop
- Hadoop生态圈
貌似翻开任何一本介绍hadoop的书籍这都是必须的,好吧,就是这些:
写道 The project includes these subprojects:Hadoop Common: The common utilities that support the other Hadoop subprojects.
Hadoop Distributed File System (HDFS™): A distributed file system that provides high-throughput access to application data.
Hadoop MapReduce: A software framework for distributed processing of large data sets on compute clusters.
Other Hadoop-related projects at Apache include:
Avro™: A data serialization system.
Cassandra™: A scalable multi-master database with no single points of failure.
Chukwa™: A data collection system for managing large distributed systems.
HBase™: A scalable, distributed database that supports structured data storage for large tables.
Hive™: A data warehouse infrastructure that provides data summarization and ad hoc querying.
Mahout™: A Scalable machine learning and data mining library.
Pig™: A high-level data-flow language and execution framework for parallel computation.
ZooKeeper™: A high-performance coordination service for distributed applications.
- 疯狂的数据
如何对数据进行分析及面临的困难:多年来磁盘存储容量的快速增加的同时,起访问速度-磁盘数据读取速度-却未能与时俱进
一个例子:
读取磁盘中所有数据需要很长时间,当然写就更慢了。基于一个简单的想法:我们可以同时从多个磁盘上读数据来减少读取的时间。将1T的数据分割放在不同的磁盘上同时读取!
当然如果要放在不同磁盘上读取,就面临较多的问题了:
当然这就设计hadoop中两个核心HDFS和MapReduce。用他们的话说
写道 Hadoop提供了一个可靠的共享存储和分析系统。HDFS实现存储,MapReduce实现分析处理
当然他也说了
写道 MapReduce似乎采用的一个蛮力方法:每个查询处理整个数据集-或至少数据集的很大一部分,反过来想,这也是他的能力
- vs关系型数据库
其实这也涉及到什么的数据适合使用MapReduce来分析。一般来说处理大数据TB/PB级和非结构化或半结构化数据是比较擅长的
。而小文件则不适合,一个比较明显的理由是大量小文件最小化寻址的开销和文件传输速率比较不明显
一个简单的比较
关系型数据库和MapReduce的比较
数据大小 GB PB
访问 交互式和批处理 批处理
更新 多次读写 一次写入多次读取
结构 静态模式 动态模式
完整性 高 低
横向扩展 非线性 线性