赞
踩
[root@zxy_master conf]# hive --service metastore &
[1] 6887
[root@zxy_master conf]# hive --service hiveserver2 &
[2] 7067
默认状态下是通过官网下载jar包,但是这种方式可能会下载失败
可以从hive的lib目录将这个jar包拉取下来
hive的lib目录下,有hive-jdbc-1.2.1.jar 和 hive-jdbc-1.2.1-standalone.jar两个jar包,看有的博客说加standalone的jar包比较纯净,所以我这里也选择使用这个
这里测试连接失败,返回
Unexpected driver error occurred while connecting to the database
org/apache/hadoop/conf/Configuration
org/apache/hadoop/conf/Configuration
org.apache.hadoop.conf.Configuration
org.apache.hadoop.conf.Configuration
根据报错返回记录和查阅文档,我尝试添加hadoop-core-1.2.1.jar
可能连接失败的问题跟这个不一样,那么可能就是需要其他的jar包
可以去hive的lib目录下找到,如果缺少某一jar包,找资源下载即可
create table java_etl_data(
tablename varchar(25) null,
field varchar(25) null,
remark varchar(255) null
);
以txt类型
导入数据,字段分隔符选择\t
,是因为我们在导出数据的时候就是根据\t
分割数据。
我这里导出的数据的编码格式就是utf-8
,文件编码类型应该与DBeaver导入数据时的Encoding
一致。如果不一致,可通过NotePad++
调整编码类型。
如果在2.3中查看数据没有问题的话,则点下一步,直到这里完成即可。
到这里数据就已经导入成功了,如果表中有无意义的字段,通过SQL清理即可。
在数据处理中,是否会遇到如下情况,没有主键,数据完全一致
下面采用SQL去重方法,以及通过Dbeaver的高级复制功能实现删除重复数据
select *
from zxy;
通过SQL去重语句,排查出重复数据数据
select id,name,testtime
from zxy
group by id,name,testtime
having count(*) > 1;
点小方框处,待选中所有数据后
单击鼠标右键,弹出选择框
鼠标移动至高级复制处,再选择右边Copy as SQL
INSERT INTO `select id,name,testtime
from zxy
group by id,name,testtime
having count(*) > 1` (id,name,testtime) VALUES
(1,'zxy','2023-03-10'),
(2,'zxy','2023-03-11');
delete from zxy
where id in (
select id
from (
select id,name,testtime
from zxy
group by id,name,testtime
having count(*) > 1
) t
)
因为在Copy as SQL
时,查询的数据结果是根据SQL去重语句
查出的,所以在生成插入语句的时候,还是往这个SQL去重语句
中插入,这明细是不对的,所以将这部分修改为表名即可。
INSERT INTO `select id,name,testtime
from zxy
group by id,name,testtime
having count(*) > 1` (id,name,testtime) VALUES
(1,'zxy','2023-03-10'),
(2,'zxy','2023-03-11');
INSERT INTO zxy (id,name,testtime) VALUES
(1,'zxy','2023-03-10'),
(2,'zxy','2023-03-11');
使用CSV、Txt导入的时候,数据格式不同,在导入数据的时候,要根据数据编码样式设置不同的配置。
数据格式为:utf8
字段间是tab空格
Encoding:数据编码
根据数据类型设置为utf-8
Column delimiter:字段分隔符
字段间使用tab空格,所以字段分隔符可以使用
\t
Quote char:引用符
没有特别需要注意,保证与Column delimiter、Escape char不同即可
Escape char:转义字符
没有特别需要注意,保证与Column delimiter、Quote char不同即可
数据格式为:gbk
字段间是
,
分割特别需要注意的是字段名处有双引号,需要特殊处理
Encoding:数据编码
根据数据类型设置为gbk
Column delimiter:字段分隔符
字段间使用
,
分割
Quote char:引用符
没有特别需要注意,保证与Column delimiter、Escape char不同即可
Escape char:转义字符
使用
"
作为转义字符,特殊处理数据字段处的双引号
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。