草庐IT

HBase-Hive

全部标签

json - 将数据集写入 Hive 时出现异常

我正在尝试使用SparkJava将DataSet写入Hive数据库,但在此过程中出现异常。这是我的代码:Datasetdata=spark.read().json(rdd).select("event.event_name");data.write().mode("overwrite").saveAsTable("telecom.t2");这里,rdd是流式传输的json数据,我可以通过以下命令打印结果data。data.show();但是当我尝试将此结果写入Hive数据库时,我没有收到任何异常,但当我尝试打印这些值时,我在Hive命令行中收到异常。例如:select*fromtele

xml - 在 Hive 中使用横向 View 时出现异常

我正在使用以下代码在Hive中解析xml数据。在我的xml数据中,一些标签在重复,所以我使用brickhousejar和横向View来解析标签并放置在Hive表中。但是当我执行我的代码时,我收到了一个错误。请帮忙,因为我无法理解我做错了什么。代码:addjar/home/cloudera/brickhouse-0.5.5.jar;CREATETEMPORARYFUNCTIONnumeric_rangeAS'brickhouse.udf.collect.NumericRange';CREATETEMPORARYFUNCTIONarray_indexAS'brickhouse.udf.co

hadoop - MapReduce 作业无法与启用 Kerberos 的 CDH 集群上的 Hbase 对话

我正在编写一个MapReduce应用程序来访问启用了Kerberos的CDH集群上的Hbase数据。我的CDH版本是5.9.0,运行在3个节点上,Kerberos版本是1.10.1。现在,我面临一个问题,希望有人能提供帮助。我的代码:conf.set("hadoop.security.authentication","Kerberos");UserGroupInformation.setConfiguration(conf);UserGroupInformation.loginUserFromKeytab("jj@example.com","jj.keytab");HTabletabl

hadoop - hdfs 和 hive 有什么关系?

我有psudeo分布式hadoop环境,使用sqoop和hive进行数据导入和分析。我使用sqoop将数据从mysql导入到hive并且它工作正常,我在我的hive位置获取了数据,即/user/hive/warehouse/我可以看到hive中的数据表。我的疑问是:当我从mysql导入到hive(构建在hadoop之上)时,数据会存储在hadoop中吗?为什么它在我的hdfs中创建/user/hive/warehouse?Hive如何处理数据?如果我在mysql中更新数据,我可以使用sqoop增量导入来更新hdfs中的数据,但如果我直接使用hive导入,它将反射(reflect)在hi

hadoop - 如何将日期添加到我的 hbase 快照

我试图每天备份我的hbase表,如何在我的hbase快照中包含日期和时间?我想要这种格式的快照-'tablename-dd-mm-yyhh:mm:ss'。如果有人有shell脚本,请分享 最佳答案 用它来创建你需要的后缀hadoop@my-hadoop:~$suffix=$(date)#createwhateverformatyouneedhadoop@my-hadoop:~$echo"suffixis${suffix}"使用它来创建快照hadoop@my-hadoop:~$echo"snapshot'myTable','myTab

hadoop - Hive - 在不知道列名的情况下更改所有列的列类型

给定格式表:hive>describetableA;OKidinttstimestampvarfloat......我想使用类似于theone的解决方案由@interskh讨论在不知道并显式引用列名称的情况下将所有列转换为字符串。在语法行上:ALTERTABLEtableACHANGE>string 最佳答案 据我所知,您必须逐一更改列的数据类型。根据官方文档,您不能在单个查询中更改所有列的名称或数据类型。请引用this我最近回答的问题。 关于hadoop-Hive-在不知道列名的情况下

hadoop - 如何在 Hive 中使用使用 Apache Drill 创建的 Parquet 文件

ApacheDrill有一个很好的功能,可以从许多传入的数据集中制作parquet文件,但似乎没有很多关于以后如何使用这些parquet文件的信息——特别是在Hive中。Hive有没有办法利用那些“1_0_0.parquet”等文件?也许创建一个表并从parquet文件加载数据,或者创建一个表并以某种方式将这些parquet文件放入hdfs以便Hive读取它? 最佳答案 我遇到过这个问题,如果您使用的是Cloudera发行版,则可以使用impala创建表(Impala和Hive共享metastore),它允许从parquet文件创建

hadoop - 无法从配置单元创建 hbase 表

这是我正在运行的查询,但出现异常。我将所有jar保存在hive/lib文件夹中,但我仍然面临这个问题。谁能给我建议如何解决这个问题。提前致谢。hive>CREATETABLEhbase_shipper(s_idint,s_namestring)STOREDBY'org.apache.hadoop.hive.hbase.HBaseStorageHandler'WITHSERDEPROPERTIES("hbase.columns.mapping"=":key,cf1:val")TBLPROPERTIES("hbase.table.name"="hive_shipper");FAILED:E

python - 从 Python 和 happybase/Thrift 连接到 Hbase

我已经安装了ClouderaManagerExpress5.9.0安装了HBase,Thrift服务器在VirtualBox虚拟机中的CentOS7.3上的端口9090上运行。请帮助找出我无法通过happybase成功连接的原因,或者帮助确定下一步要执行的操作。我是一名经验丰富的Java程序员,正在学习Python。我有使用本地接口(interface)从Java使用Hbase的经验,尽管不是在这个特定环境中。我已验证我可以使用hbaseshell创建表、插入数据等。我已验证9090(thrift)正在监听并接受连接。我想我已经验证Thrift服务器正在使用与happybase连接参数

hadoop - 从 Hive 中的 collect_list 结果构造映射

一系列UNIONALL生成我想用来构建MAP的键值对列表。所需的功能是这样的:selectid1,id2,map(collect_list(col))asmeasurementsfrom(selectid1,id2,"height"ascolunionallselectid1,id2,count(*)ascolfromtable1unionallselectid1,id2,"weight"ascolunionallselectid1,id2,count(*)ascolfromtable2)什么是正确的实现方式?我希望得到的结果是:id1id2measurements110{"heigh