草庐IT

hadoop - Hive bucketing 生成的文件比预期的多,为什么?

我有一个分区和集群的配置单元表(使用配置单元1.2):hive>describeformattedmyClusteredTable;#col_namedata_typeutc_timestamptimestamp...clusteredIdbigint#PartitionInformation#col_namedata_typedatePartitionstring#DetailedTableInformationNumBuckets:100BucketColumns:[clusteredId]SortColumns:[Order(col:clusteredId,order:1),Or

使用 Hive 解析 json

我的json文件如下:{"total":3666,"offset":1,"len":2,"workflows":[{"appName":"xxxx1","externalId":null,"conf":null,"run":0,"acl":null,"appPath":null,"parentId":null,"lastModTime":"Tue,08Aug201722:15:11GMT","consoleUrl":"http://**************:11000/oozie?job=0000130-170807105041043-oozie-oozi-W","createdT

java - Dropwizard 和 hive-jdbc 之间的不兼容

我正在尝试使用Dropwizard创建一个WSREST,以获取查询的Hive结果并以XML格式呈现。每个单独的部分都可以毫无错误地完成。当我加入所有内容时,我发现Dropwizard和hive-jdbc之间不兼容。显然hive-jdbc有jersey1作为依赖项,而Dropwizard有jersey2。我不确定这是否是问题所在。我试图排除pom.xml中的依赖项,但没有解决。我试图制作一个应用程序,只是将hive-jdbc作为依赖项放在pom.xml文件中,而不使用或导入代码的任何部分,但错误仍然发生。POM.XML3.0.04.0.0testws-test1.0.0ws-testUT

hadoop - 在 Hive 之外聚合是更好的选择吗?

我有更多的概念性问题。我正在使用Hive提取数据,然后我想将所有检索到的值插入到IBMBigSQL(基本上是DB2)中,以便更容易/更快地聚合数据。所以我想在Hive中创建一个View,我将使用它每晚执行CTAS,以便我可以获取该表并将其迁移到db2并执行其余的聚合。有更好的做法吗?我想做所有事情,包括在Hive中聚合,但速度非常慢。感谢您的建议! 最佳答案 考虑到您使用的是Cloudera,是否有理由不在Impala中执行聚合?将json数据转换为Parquet(如果没有很多嵌套结构,我会推荐这样做)应该不会很昂贵。另一种选择取决

sql - Hive 加入理解问题

我在hive中创建了如下两个表创建表test1(idstring);createtabletest2(idstring);test1的值如下所示11test2的值如下所示11当我加入这两个表时,我得到了输出1111这是使用的查询:selecta.idfromtest1a,test2bwherea.id=b.id;请帮助我希望输出为11我正在使用cloudera发行版 最佳答案 最好使用ANSI连接语法:selecta.idfromtest1ainnerjointest2bona.id=b.id预期的输出不能是您的联接的结果,因为对于

hadoop - 使用 Hadoop 将数据加载到 Hive 表中

我想通过.sql脚本将数据加载到Hive表中,但我遇到了这样的问题:hduser@master:~$hive-fscript.sqlLogginginitializedusingconfigurationinjar:file:/home/hduser/ecosystem/apache-hive-2.3.0-bin/lib/hive-common-2.3.0.jar!/hive-log4j2.propertiesAsync:trueOKTimetaken:5.798secondsLoadingdatatotabledefault.testFailedwithexceptionUnable

hadoop - Hive 无法在 hdfs 中创建目录并且无法启动?

我正在远程模式下部署hive2.3,在另一台机器上使用mysql数据库作为Metastore。我即将完成整个过程,我正在通过运行bin/hive检查部署是否正常工作然后我得到这个错误:Exceptioninthread"main"java.lang.RuntimeException:Couldn'tcreatedirectory/user/hive/tmp/54de671c-0236-49e2-b967-7c3da8973f3a_resources我知道这是由hive-site.xml中的属性hive.downloaded.resources.dir设置的。我将其设置为/user/hi

hadoop - 使用 Hive 脚本处理每个开始/结束对的时间跨度

我有一个可以启动或停止的服务。每个操作都会生成一strip有时间戳和操作类型的记录。最终,我得到了一系列带有时间戳的操作记录。现在我想计算一天中服务的正常运行时间。这个想法很简单。对于每对开始/停止记录,计算时间跨度并求和。但我不知道如何用Hive实现它,如果可能的话。我为此创建表来存储中间结果是可以的。这是主要的阻塞问题,还有一些其他的小问题。例如,一些开始/停止对可能跨越一天。任何想法如何处理这个小问题也将不胜感激。示例数据:TimestampOperation......2017-09-0323:59:00Start2017-09-0400:01:00Stop2017-09-04

java - Hive - DynamoDB 导出在欧洲不起作用?

在欧盟地区使用Hive&DynamoDB时出现问题。我的测试用例是:Hive版本-2.3.0eu-central-1Dynamodb表-test_inputeu-central-1hive脚本:CREATEEXTERNALTABLEraw_data(idSTRING,parent_idSTRING,valueSTRING)STOREDBY"org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler"TBLPROPERTIES("dynamodb.table.name"="test_input","dynamodb.region"="eu

hadoop - 使用 sqoop 将数据从 Teradata 迁移到 Hive

我正在尝试使用sqoop将数据从teradata迁移到hive,但在teradata表中有一些字段具有graphic和vargraphic等数据类型,因此我们如何在hive中处理这些类型。 最佳答案 通过查看graphic&vargraphic的文档datatype明明是n个双字节字符的定长图形串和变长图形串。因此您可以尝试使用sqoop在Hive中映射这些列map-column-hive争论像这样:--map-column-hivegraphic_column1=STRING,vargraphic_column2=STRING