hadoop3.3.6的快速部署,并使用broker将数据从hdfs导入到doris

hadoop3.3.6的快速部署,并使用broker将数据从hdfs导入到doris

hadoop部署与配置

1 从官网下载二进制包到本地Ubuntu服务器

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz

2. 解压

tar -xf apache-doris-1.2.6-bin-x64.tar.xz

3.配置环境变量

vi /etc/profile

### java环境
export JAVA_HOME=/root/hadoop/jdk1.8.0_321
export PATH=$PATH:$JAVA_HOME/bin
hadoop环境
export HADOOP_HOME=/root/hadoop/hadoop-3.2.2
export HADOOP_CONF_DIR=/usr/hadoop/etc/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export HADOOP_CONF_DIR=/root/hadoop/hadoop-3.2.2/etc/hadoop

###报错解决
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

配置环境生效
source /etc/profile

4 修改hadoop配置文件

在伪分布式中,我们主要是修改Hadoop的两个配置文件:
core-site.xml
hdfs-site.xml

/root/hadoop/hadoop-3.3.6/etc/hadoop 中的core-site.xml

configuration>
        <property>
           <name>fs.defaultFS</name>
           <value>hdfs://192.168.1.210:9000</value>
        </property>
         <property>
           <name>hadoop.tmp.dir</name>
           <value>/tmp/hadoop-root/</value>
        </property>
</configuration>

其中 192.168.1.210 是你服务器的地址,9000是端口,这个在doris的broker组件从doris读取数据时需要,这个在java类编程读取数据时也需要,可以理解为对外的ip
– hadoop.tmp.dir 默认是 /tmp/hadoop-root/
创建目录 mkdir /tmp/hadoop-root/dfs/name

    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>

默认的两个目录
dfs.namenode.name.dir
${hadoop.tmp.dir}/dfs/name
dfs.datanode.data.dir
${hadoop.tmp.dir}/dfs/data
所以在设置了core-site.xml中的hadoop.tmp.dir后 就可以了
上面的分片1 ,在单机测试比较适合,生产不可以
否则在执行start-all.sh的时候,会报错,在此记不清具体步骤了 可以在启动时进行查看,

5 启动

首次启动HDFS时,必须对其进行格式化操作。 format 就是初始化工作
/root/hadoop/hadoop-3.3.6/bin/hdfs namenode -format
注意:
1.首次启动之前需要format操作
2.format只能进行一次 后续不再需要
3.如果多次format除了造成数据丢失外,还会导致hdfs集群主从角色之间互不识别,通过删除所有机器hadoop.tmp.dir目录重新forma解决

/root/hadoop/hadoop-3.3.6/sbin/start-all.sh
查看启动日志
如果没有报错 可以执行 jps,看看是否启动正确
在这里插入图片描述

6端口

可以通过此命令查看端口 netstat -nlpt |grep java
请添加图片描述

获取配置

如果想知道已经运行的hadoop的配置项,可以使用命令
./hdfs getconf -confKey
在这里插入图片描述

导入数据到doris

doris的建表语句

CREATE TABLE `stock_code` (
  `id` INT NOT NULL COMMENT '',
  `code` VARCHAR(110)  COMMENT '',
  `name` VARCHAR(110)  COMMENT '',
  `type` VARCHAR(110)  COMMENT ''
) 
DUPLICATE KEY(`id`)
DISTRIBUTED BY HASH(`id`) BUCKETS 1
PROPERTIES (
 "replication_num" = "1",
 "in_memory" = "false"
);

将csv文件上传到hdfs
/root/hadoop/hadoop-3.3.6/bin/hdfs dfs -mkdir /test/
/root/hadoop/hadoop-3.3.6/bin/hdfs dfs -put stock_code20.csv /test/
在doris中执行导入语句

 LOAD LABEL dfcf.stock_code9
(
DATA INFILE("hdfs://192.168.1.210:9000/test/stock_code20.csv")
INTO TABLE `stock_code`
COLUMNS TERMINATED BY ","
FORMAT AS "csv"
(id, code, name, type)
)
WITH BROKER broker1

注意: 通过Navicat导出的数据,id是有引号的,这样导致数据有问题,而且,如果经过wps的转存,中文使用其他软件会变成乱码,这个会导致反复的失败,卡了一天
如果导入失败,可以通过下列命令查看,这个命令是在mysql客户端连接doris执行的
show load order by createtime desc limit 1\G;
因编码等问题导致数据导入失败
在这里插入图片描述
最后成功导入数据
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值