先澄清一个常见误区:Hadoop 本身不是数据库,而是一套分布式存储与计算框架。
我们通常说的“Hadoop 数据库”一般指:
下面我按最常见、最实用的部署方式给你讲。
| 节点 | 角色 |
|---|---|
| node1 | NameNode + ResourceManager |
| node2 | DataNode + NodeManager |
| node3 | DataNode + NodeManager |
生产环境一般至少 3 台,测试可用 1 台伪分布式
wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -zxvf hadoop-3.3.6.tar.gz -C /opt
export HADOOP_HOME=/opt/hadoop-3.3.6
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://node1:9000</value>
</property>
hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node1</value>
</property>
hdfs namenode -format
start-dfs.sh
start-yarn.sh
访问:
hive
CREATE TABLE user(id int, name string);
SELECT * FROM user;
✅ 适合离线分析
hbase shell
create 'user', 'info'
put 'user','1','info:name','tom'
docker run -it sequenceiq/hadoop-docker /etc/bootstrap.sh -bash
Hadoop 不是数据库,而是“数据库底座”
部署 Hadoop = 部署 HDFS + YARN
想用 SQL → Hive
想实时 → HBase
如果你愿意,我可以:
你现在是 学习 / 面试 / 生产环境?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。