数据采集:
flume NG
kafka
数据存储:
HDFS
HBase
Hive
Solr
Ealstic search
数据分析:
MapReduce
Storm
Spark
Hive
Pig
Mahout(数据挖掘)
数据展现:
Excel
R
D3
-----------------------
作者:doug cutting
为什么要用hadoop
单机系统操作不了,数据量太大。
有一个专门的文件系统管理,可以存放在多个服务器中,能屏蔽服务器之间的差异。
有数据结构能映射文件与文件位置的关系
客户端请求 --主节点---客户端得到存储位置---客户从节点中获取数据。
分布式系统
不同节点的数据可能属于同一个文件
命名空间(namespace):文件放在不同的文件夹中,文件夹一级一级包含,能组织众多文件,并管理整个服务器集群中的所有文件。
主节点(master node) 负责命名空间
从节点(slave node) 负责存储真实数据
当存储文件越多时,主节点需要的内存空间约大
副本(replication) 把数据同时备份到多个节点中,减少数据丢失和访问失败的概率
块(block) 独立的存储文件单位
------------------------------------
移动数据 : tomcat --MySQL
移动代码 : 把程序 放到节点中执行 ,后汇总计算。形成分段计算
分布式软件可以部署在同一个分布式硬件中。分布式软件:主从节点。分布式硬件:多个服务器。
存储策略:
一个一个存:
分开存:能并发,减少单个机器的压力。