Hive 处理CSV格式文件数据

news/2024/10/18 5:40:56/

一般情况下对于CSV格式文件数据,有多种第三方SerDer来处理。本文采用CSVSerDe:

一、添加第三方SerDe

首先在Hive classpath中添加第三方SerDe JAR包,命令如下:

hive> add jar /home/hadoopUser/cloud/hive/apache-hive-0.13.1-bin/lib/csv-serde-1.1.2.jar;
Added /home/hadoopUser/cloud/hive/apache-hive-0.13.1-bin/lib/csv-serde-1.1.2.jar to class path
Added resource: /home/hadoopUser/cloud/hive/apache-hive-0.13.1-bin/lib/csv-serde-1.1.2.jar

可以从该链接下载:csv-serde-1.1.2.jar,以某CSV文件为例介绍处理过程

二、某CSV日志文件格式如下:

1997,Ford,E350,"ac, abs, moon",3000.00
1999,Chevy,"Venture ""Extended Edition""","",4900.00
1999,Chevy,"Venture ""Extended Edition, Very Large""","",5000.00
1996,Jeep,Grand Cherokee,"MUST SELL!air, moon roof, loaded",4799.00
以逗号分隔,分别表示:年,制造商,型号,说明,价值

三、创建Hive表

hive> CREATE TABLE serde_csv(year STRING,company STRING,type STRING,description STRING,value STRING)> ROW FORMAT SERDE 'com.bizo.hive.serde.csv.CSVSerde'> STORED AS TEXTFILE ;
OK
Time taken: 0.072 seconds
四、导入数据

hive> LOAD DATA LOCAL INPATH "/home/hadoopUser/data/csv_serde.txt" INTO TABLE serde_csv;
Copying data from file:/home/hadoopUser/data/csv_serde.txt
Copying file: file:/home/hadoopUser/data/csv_serde.txt
Loading data to table hive.serde_csv
Table hive.serde_csv stats: [numFiles=1, numRows=0, totalSize=259, rawDataSize=0]
OK
Time taken: 0.389 seconds

五、查看Hive中导入的CSV数据

hive> select * from serde_csv;
OK
1997    Ford    E350    ac, abs, moon   3000.00
1999    Chevy   Venture "Extended Edition"              4900.00
1999    Chevy   Venture "Extended Edition, Very Large"          5000.00
1996    Jeep    Grand Cherokee  MUST SELL!air, moon roof, loaded        4799.00


参考:http://ogrodnek.github.io/csv-serde/


http://www.ppmy.cn/news/589283.html

相关文章

中兴echat_中兴高达推出新一代eChat小先锋e350

原标题:中兴高达推出新一代eChat小先锋e350 公网集群领域有一款机型人称"小钢炮",发货量破30万台,广泛应用于城管、物业、交警、旅游及大型赛事,成为一个有口皆碑的传奇,获得过无数赞誉和荣耀。时至今日G180…

主控88NV1120开卡工具教程,镁光颗粒无法格式化、掉盘、开卡失败的偶然解决(修复)方法

事件背景:我自己之前有个usb3.0转SATA的移动硬盘,里面装着一个160G的机械硬盘,但几次霍霍下,坏块一堆,基本上难以正常使用,于是海鲜市场花了三十多淘了块240G的掉盘的SSD,品牌:金胜E…

c语言电子秤原理,电子秤设计电路图汇总(六款模拟电路设计原理图详解)

电子秤设计电路图(一) 工作原理 数显电子秤电路原理如图所示,其主要部分为电阻应变式传感器R1及IC2、IC3组成的测量放大电路,和IC1及外围元件组成的数显面板表。传感器R1采用E350~ZAA箔式电阻应变片,其常态阻值为350O。测量电路将R1产生的电阻…

python数据读取与可视化(1)——CSV格式

CSV格式文件读取与可视化 CSV格式文件读取与可视化 一 CSV二 如何得到CSV三 CSV文件的处理1 导入文件2 读取数据3 数据的可视化一些小问题的处理一点优化 一 CSV CSV文件以纯文本的形式储存数字和字母,各个数据之间一般用逗号作为分隔符。是一种通用的,相对简单的文…

.CSV文件 逗号分隔值

逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列&…

四海众联E350N水滴吸顶AP适配说明

近期,蓝海卓越(freeac)同四海众联达成AP合作意向,蓝海卓越以其AP适配、硬件AC、云AC及portal/Radius运营平台等软件技术优势结合四海众联在AP、嵌入式设备等方面硬件优势进行合作。 E325N水滴吸顶AP作为双方首个合作的AP适配硬件…

使用Abaqus FEA 与 Python 进行复合材料热导率的确定:以多次迭代模拟实验并结果数据记录为例

在复杂的工程问题中,有时我们会遇到一些需要用到复合材料的情况,这些复合材料可能包含了各种各样的夹杂物。对于这些复合材料的性质,比如热导率,我们可能会希望能够通过实验或者模拟来获取。在本文中,我将介绍一种使用…

人脸跟踪:基于人脸检测API的连续检测与姿态估计技术

人脸跟踪技术在视频监控、虚拟现实和人机交互等领域发挥着重要作用。通过连续的人脸检测与姿态估计,可以实现对人脸在视频序列中的跟踪和姿态分析。 本文将介绍基于人脸检测API的人脸跟踪技术,探讨其原理、应用场景以及未来发展前景。 人脸跟踪的意义和…