首先需要澄清一个常见误区:
Hadoop 本身不是数据库,而是一个分布式存储与计算框架。
通常大家说的“Hadoop 数据库”,一般指的是基于 Hadoop 生态的数据仓库 / 数据库系统,例如:
下面我按最典型场景给你讲:搭建 Hadoop + Hive(类数据库)环境。
HDFS(存储)
↑
YARN(资源调度)
↑
Hive / Spark(SQL 查询)
yum install java-1.8.0-openjdk-devel
java -version
wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -xzf hadoop-3.3.6.tar.gz
mv hadoop-3.3.6 /opt/hadoop
vi ~/.bashrc
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source ~/.bashrc
core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
hdfs namenode -format
start-dfs.sh
start-yarn.sh
浏览器访问:
http://localhost:9870
yum install mariadb-server
systemctl start mariadb
创建数据库:
CREATE DATABASE hive;
wget https://archive.apache.org/dist/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz
tar -xzf apache-hive-3.1.3-bin.tar.gz
mv apache-hive-3.1.3-bin /opt/hive
hive-site.xml
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>password</value>
</property>
</configuration>
初始化:
schematool -dbType mysql -initSchema
hive
尝试建表:
CREATE TABLE user (
id INT,
name STRING
);
| 需求 | 推荐 |
|---|---|
| 海量存储 + SQL | Hive |
| 实时读写 | HBase |
| 高性能分析 | Spark SQL / Impala |
✅ Hadoop ≠ 数据库
✅ 常用组合:HDFS + Hive
✅ 企业级一般用:CDH / HDP / 云 EMR
如果你愿意,我可以:
你打算用 Hadoop 做什么场景?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。