hive 导出json格式 文件_hive存储json格式文件

hive从0.12版本以后就开始自身支持json文件的格式了

1.文件格式

下面是测试用的文件预览格式,我将其存储为jsonTest.json文件,放在了/root目录下

{"_location":"(32.121, 45.262)","_ip":"2.12.1.211","_action":"click button","_uid":"694666ee-8918-48f8-bb92-0a756a3f1f31","_timestamp":"1496999163163"}

{"_location":"(32.121, 45.262)","_ip":"7.12.1.211","_action":"click button","_uid":"868be529-f59e-4f16-8ea5-08c4612ede9a","_timestamp":"1496999164165"}

{"_location":"(32.121, 45.262)","_ip":"2.12.1.211","_action":"click button","_uid":"49b63380-2a5a-453d-aa5b-57e74cd1a8d7","_timestamp":"1496999165170"}

{"_location":"(32.121, 45.262)","_ip":"3.12.1.211","_action":"click button","_uid":"60fd093a-9f6a-4716-81c6-72a5f07d3b4f","_timestamp":"1496999166171"}

{"_location":"(32.121, 45.262)","_ip":"3.12.1.211","_action":"click button","_uid":"056cf558-56b1-4312-aba1-0b0eb71ba78e","_timestamp":"1496999167172"}

{"_location":"(32.121, 45.262)","_ip":"8.12.1.211","_action":"click button","_uid":"a2ecd34c-5458-43a2-b851-89eb6b3985ae","_timestamp":"1496999168174"}

注意: 一行之内必须是完整的一条json文件,否则会解析出错误

2.创建hive表

CREATE TABLE IF NOT EXISTS jsonTest

(

`_location` STRING,

`_ip` STRING,

`_action` STRING,

`_uid` STRING,

`_timestamp` STRING)

ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe'

STORED AS TEXTFILE;

注意: “符号是因为列明里面是下划线开头;并且列明需要与json文件中的key对应,否则也会解析不到数据.

3.加载数据

LOAD DATA LOCAL INPATH "/root/jsonTest.json" OVERWRITE INTO TABLE jsonTest;

4.查询数据进行校验

hive> select * from jsonTest_test;

OK

(32.121, 45.262) 2.12.1.211 click button 54490a2f-376a-43e3-9658-e9a3d6583ffd 1496999162153

(32.121, 45.262) 2.12.1.211 click button 694666ee-8918-48f8-bb92-0a756a3f1f31 1496999163163

(32.121, 45.262) 7.12.1.211 click button 868be529-f59e-4f16-8ea5-08c4612ede9a 1496999164165

(32.121, 45.262) 2.12.1.211 click button 49b63380-2a5a-453d-aa5b-57e74cd1a8d7 1496999165170

(32.121, 45.262) 3.12.1.211 click button 60fd093a-9f6a-4716-81c6-72a5f07d3b4f 1496999166171

(32.121, 45.262) 3.12.1.211 click button 056cf558-56b1-4312-aba1-0b0eb71ba78e 1496999167172

(32.121, 45.262) 8.12.1.211 click button a2ecd34c-5458-43a2-b851-89eb6b3985ae 1496999168174

Time taken: 0.439 seconds, Fetched: 7 row(s)

可以看到数据已经成功解析出来

问题

1.出现下面错误

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Cannot validate serde: org.apache.hive.hcatalog.data.JsonSerDe

需要将支持序列化的hive-hcatalog-core.jar添加进来,执行如下命令即可解决该问题.(找到自己安装的目录即可,我的是在这个目录里)

hive> add jar /opt/cloudera/parcels/CDH-5.11.0-1.cdh5.11.0.p0.34/lib/hive-hcatalog/share/hcatalog/hive-hcatalog-core.jar;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/409942.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HDU 4033 Regular Polygon(二分+高精度)

比赛时没做出来,最后10 钟时倒是想枚举每个角度,精度估计上可能会出问题; 后来听“理宝”说可以暴力枚举边的长度,精确到0.001,数据恰好10^7,T_T~~ vongang说可以用二分做,也就是官方解题报告的…

[html] html5点击返回键怎样不让它返回上一页?

[html] html5点击返回键怎样不让它返回上一页? $(function() {if (window.history && window.history.pushState) {$(window).on(popstate, function () {window.history.pushState(forward, null, #);window.history.forward(1);});}window.history.pushSt…

python怎么输出结果_Python中print()常用输出方法

print函数用法 1.输出字符串 print Hello World print "Hello World" print (Hello World) print ("Hello World") [注] 对于Python 3.0及以上版本,print是函数,因此需要编写print ()而不是print。 输出结果: Hello Worl…

Redis的备份与恢复

备份 dump.rdb:RDB方式的备份文件 appendonly.aof:AOF方式的备份文件rdb 备份处理 # 编辑redis.conf文件,找到如下参数,默认开启。 save 900 1 save 300 10 save 60 10000aop备份处理 # 编辑redis.conf文件,找到如下参…

javascript网页自动填表_JavaScript脚本实现网页批量自动勾选及内容填写

我们知道,大部分学校每个学期都有教学评估。对于我这种习惯性好评,老师又真心不错的人,十多个老师的评价都是good,这是赤裸裸的重复劳动啊。于是我动了歪念头...嘿嘿嘿1.登录教学评估的网页,选择一位老师:如…

java 修改 jar 包文件内容的一个实例

开发这个小工具的初衷是为了修改工具 jar 包中的配置文件 本来打算将这个功能集成到 工具 jar 包自身 但是这里貌似有点儿问题,因为该 jar 包文件当前正在被 java 虚拟机使用,所以无法对其进行修改操作~ 这里我有点儿疑惑,难道不是将 jar 包整…

python画图灰白_python 站点资料插值画图及白化

import cmaps import maskout import pandas as pd import numpy as np import matplotlib.pyplot as plt from scipy.interpolate import Rbf from mpl_toolkits.basemap import Basemap plt.rcParams[font.sans-serif][SimHei] #用来正常显示中文 plt.rcParams[axes.unicode_…

[html] 在普通网页中如何调用html5+的plus对象?

[html] 在普通网页中如何调用html5的plus对象? document.addEventListener( "plusready", onPlusReady, false ); onPlusReady 函数中就可以引用plus对象个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定…

算法之归并排序

package com.ebiz.sort;import java.util.Arrays;/*** author YHj* create 2019-09-03 22:21* /*** 归并排序(递归)** ①. 将序列每相邻两个数字进行归并操作,形成 floor(n/2)个序列* ②. 执行①直到每组有一个元素 * ③. 各组之间进行比较*…

eureka需要替换吗_nacos无缝替换eureka

首先安装好nacos之后直接引入客户端依赖和配置文件,同时把eureka的内容去掉从nacos官网 https://nacos.io/zh-cn/index.html 下载安装包下载好之后解压,打开配置文件 conf/application.properties 配置一下mysql和地址,其他的的按需配置serve…

程旭元系统漫画第三期:加班 !

对于苦逼的程旭元来说 加班已经变成了生活中不可缺少的部分 他的原则是不能像胖子那样贪吃 不能像销售员那样狡诈 一定要尽忠职守 精忠报国 !老板说什么他就做什么! 对于一个从来只说加班不加工资的boss来说 唯命是从就是存活在公司的最好方式~ 但是有…

python 的库如何开发_一篇文章入门Python生态系统

译者按:原文写于2011年末,虽然文中关于Python 3的一些说法可以说已经不成立了,但是作为一篇面向从其他语言转型到Python的程序员来说,本文对Python的生态系统还是做了较为全面的介绍。文中提到了一些第三方库,但是Pyth…

[html] 你知道什么是html5plus吗?

[html] 你知道什么是html5plus吗? 用js的方式来调用移动app(安卓和ios)的原生能力,例如拍照,摄像个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一…

机器学习线性回归案例讲解_09机器学习实战之简单线性回归

基本概念1. 介绍:回归(regression) Y变量为连续数值型(continuous numerical variable)如:房价,人数,降雨量分类(Classification): Y变量为类别型(categorical variable)如:颜色类别,电脑品牌,有…

silverlight Image Source URI : 一个反斜杠引发的血案

silverlight Image Source URI : 一个反斜杠引发的血案 Silverlight2 现在支持的Image格式有jpg和png&#xff0c;部分png编码也不支持&#xff0c;同时有些png在xaml的design预览中不可见&#xff0c;但运行时可见。请看XAML markup中两行代码的异同&#xff1a; <StackPan…

python编码和解码_Python中的编码与解码(转)

Python中的字符编码与解码困扰了我很久了&#xff0c;一直没有认真整理过&#xff0c;这次下静下心来整理了一下我对方面知识的理解。 文章中对有些知识没有做深入的探讨&#xff0c;一是我自己也没有去深入的了解&#xff0c;例如各种编码方案的实现方式等&#xff1b;二是我觉…

[html] 怎样使用iframe刷新父级页面

[html] 怎样使用iframe刷新父级页面 //在父页面中window.addEventListener("message",function(e){if(e.data.reload){winodw.location.reload()}}, false);//在子页面中window.parent.postMessage({reload:true})个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前…

Nginx编译安装和平滑升级

一、Nginx的编译安装 1、安装依赖包gcc&#xff0c;gcc-c&#xff0c;pcre&#xff0c;openssl-devel 命令&#xff1a;yum -y install gcc gcc-c pcre-devel openssl-devel 2、下载Nginx源码包 Nginx下载地址&#xff1a;http://nginx.org/download/nginx-1.12.2.tar.gz …

python 调用shell 不阻塞_遇到问题---python调用shell脚本时subprocess.check_call不阻塞

遇到的问题使用命令subprocess.check_call(cmd, shellTrue, stdoutsubprocess.PIPE, stderrsubprocess.STDOUT)在ubuntu系统中python中使用subprocess.check_call调用shell命令。发现subprocess.check_call的阻塞无效&#xff0c;导致下面的命令缺失信息。但是同样的代码在cent…

android ListView详解

在android开发中ListView是比较常用的组件&#xff0c;它以列表的形式展示具体内容&#xff0c;并且能够根据数据的长度自适应显示。抽空把对ListView的使用做了整理&#xff0c;并写了个小例子&#xff0c;如下图。 列表的显示需要三个元素&#xff1a;1&#xff0e;ListVeiw …