使用Sqoop将数据从Hive导入MySQL(一)

芒果1年前技术文章452


使用Sqoop将数据从Hive导入MySQL

首先查看csv数据类型

image.png

创建类似的hive表并导入数据
CREATE TABLE data (
    province STRING,
    code INT,
    city STRING,
    district STRING,
    year INT,
    model STRING,
    company STRING,
    brand STRING,
    type STRING,
    use_type STRING,
    seat_count INT,
    engine_no STRING,
    displacement DOUBLE,
    power DOUBLE,
    fuel_type STRING,
    total_weight DOUBLE,
    kerb_mass DOUBLE,
    max_mass DOUBLE,
    tire_size STRING,
    tire_count INT,
    length DOUBLE,
    width DOUBLE,
    height DOUBLE,
    note STRING,
    extra_company STRING,
    original_model STRING,
    production_company STRING,
    vehicle_type STRING,
    register_date INT,
    owner_sex STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\n'
STORED AS TEXTFILE;

549875BE-EFCB-48ED-A840-70062562EC0D.png

导入数据

LOAD DATA LOCAL INPATH '/opt/mg/cars.txt' INTO TABLE data;

92F63829-DAF8-4C7C-AA0B-E41623844AD9.png

查询下表数据
select * from data limit 10;

FF38ACCE-9448-41DC-A1C1-E0A2C5DF9F88.png


创建mysql相同的表
CREATE TABLE data (
    province VARCHAR(255),
    code INT,
    city VARCHAR(255),
    district VARCHAR(255),
    year INT,
    model VARCHAR(255),
    company VARCHAR(255),
    brand VARCHAR(255),
    type VARCHAR(255),
    use_type VARCHAR(255),
    seat_count INT,
    engine_no VARCHAR(255),
    displacement FLOAT,
    power FLOAT,
    fuel_type VARCHAR(255),
    total_weight FLOAT,
    kerb_mass FLOAT,
    max_mass FLOAT,
    tire_size VARCHAR(255),
    tire_count INT,
    length FLOAT,
    width FLOAT,
    height FLOAT,
    note VARCHAR(255),
    extra_company VARCHAR(255),
    original_model VARCHAR(255),
    production_company VARCHAR(255),
    vehicle_type VARCHAR(255),
    register_date INT,
    owner_sex VARCHAR(255)
);

03BA64FE-40AA-48D4-BB61-753F219AC4F4.png

Ps如果字段问题可以全写varchar不建议
CREATE TABLE data1 (
  `date` VARCHAR(255),
  hour VARCHAR(255),
  type VARCHAR(255),
  Dongsi VARCHAR(255),
  Tiantan VARCHAR(255),
  Guanyuan VARCHAR(255),
  Wanshouxigong VARCHAR(255),
  Aotizhongxin VARCHAR(255),
  Nongzhanguan VARCHAR(255),
  Wanliu VARCHAR(255),
  Beibuxinqu VARCHAR(255),
  Zhiwuyuan VARCHAR(255),
  Fengtaihuayuan VARCHAR(255),
  Yungang VARCHAR(255),
  Gucheng VARCHAR(255),
  Fangshan VARCHAR(255),
  Daxing VARCHAR(255),
  Yizhuang VARCHAR(255),
  Tongzhou VARCHAR(255),
  Shunyi VARCHAR(255),
  Changping VARCHAR(255),
  Mentougou VARCHAR(255),
  Pinggu VARCHAR(255),
  Huairou VARCHAR(255),
  Miyun VARCHAR(255),
  Yanqing VARCHAR(255),
  Dingling VARCHAR(255),
  Badaling VARCHAR(255),
  Miyunshuiku VARCHAR(255),
  Donggaocun VARCHAR(255),
  Yongledian VARCHAR(255),
  Yufa VARCHAR(255),
  Liulihe VARCHAR(255),
  Qianmen VARCHAR(255),
  Yongdingmennan VARCHAR(255),
  Xizhimennei VARCHAR(255),
  Nansanhuan VARCHAR(255),
  Dongsihuan VARCHAR(255)
);


执行sqoop命令从hive导入mysql

./sqoop export \
--connect jdbc:mysql://172.16.121.194:3306/test \
--username root \
--password 123456 \
--table data \
--export-dir /user/hive/warehouse/data \
--input-fields-terminated-by '\0001' \
--input-lines-terminated-by '\n' \
--null-string 'NULL' \
--null-non-string '\\N'

image.png

查看表数据
select * from data limit 10;

image.png


相关文章

ES运维(一)底层数据存储原理

ES运维(一)底层数据存储原理

1、ES底层数据存储原理架构图Segment工作流程:A、 新的文档在内存中组织B、 每隔一段时间,buffer将会被提交:生成一个新的segment(一个额外的新的倒序索引)并被写到磁盘,同时一个新...

CDH时钟同步问题

CDH时钟同步问题

首先执行如下命令:查看chronyd是否启动systemctl status chronyd如果没启动执行如下命令启动systemctl restart chronyd每台检查时间状态chronyc...

haproxy服务无法正常启动

haproxy服务无法正常启动

【局点信息】测试环境【集群信息】【问题现象】haproxy设置配置文件后,无法正常启动,查看服务状态显示失败配置增加内容#增加如下配置 listen ApiApplicationServer   ...

EMR-java配置国密SM4加密

EMR-java配置国密SM4加密

首先找到bcprov-jdk15on-1.56.jar这个包<dependency>    <groupId>org.bouncycastle</groupId> ...

Gartner权威报告解读|应用可观测性列为2023年重要战略技术趋势!

Gartner于今日发布企业机构在2023年需要探索的十大战略技术趋势。Gartner杰出研究副总裁Frances Karamouzis表示:“为了在经济动荡时期增加企业机构的盈利,首席信息官和IT高...

Hive优化之配置参数的优化(一)

Hive优化之配置参数的优化(一)

 Hive是大数据领域常用的组件之一,主要是大数据离线数仓的运算,关于Hive的性能调优在日常工作和面试中是经常涉及的一个点,因此掌握一些Hive调优是必不可少的一项技能。影响Hive效率的...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。