Hadoop:从狭义上是指Apache软件基金会的一款开源软件。
使用java语言实现且开源,允许用户使用简单的编程模型实现跨机器集群对海量数据进行分布式计算处理。
Hadoop包括三个核心组件:
1.Hadoop HDFS(分布式文件存储系统):解决海量数据存储。
2.Hadoop YARN(集群资源管理和资源调动框架):解决任务资源调度。
3.Hadoop MapReduce(分布式计算框架):解决海量数据计算。
Hadoop官方网站:http://hadoop.apache.org/
Hadoop广义上指的是围绕Hadoop打造的大数据生态圈。包括:
Storage存储:HDFS、ALLUXIO
Resource Management资源调度:YARN、MESOS
In-Memory Processing存算一体化:Ignite、Spark
Stream Processing流处理:Flink、Storm、kafka
SQL Over Hadoop:HIVE、DRILL、Impala
NoSQL Database(NotOnly Database不仅仅是数据库):HBASE
Search Engine搜索引擎:Solr
Data Piping数据管道:nifi、flume
Machine Learning机器学习:MADLib、mahout、Spark MLlib
Scheduler调度:Airflow
Coordinate&Management分布式协调管理:Zookeeper、Ambari
Security安全:Apache Ranger
Meta Data Management元数据管理:Apache Atlas
Data Format数据格式化:Parquet、Avro、ORC、Arrow
常用的端口包括:HDFS WEB端口9870,YARN WEB端口8088.
分布式存储核心属性包括:分布式存储、元数据纪录、分块存储、副本机制。
分布式存储可以无限扩展、支持海量数据存储。
元数据:纪录数据的数据。如数据的大小、地址等信息,可以快速定位文件便于查找。
分块存储:并行操作,提高效率。
副本机制:冗余机制
HDFS Hadoop分布式file system适用的场景:适合大文件、数据流式访问,一次写入多次读取,低成本部署,高容错。不适合小文件、数据交互式访问,频繁的任意修改,低延迟处理。