草庐IT

hadoop - 从vertica导入数据到hive

我尝试使用Sqoop将数据从Vertica上传到Hive。我可以看到它在HIVE上创建了一个文件和一个表,但是当我尝试从HIVE或文件中选择数据时,我看不到数据。它向我显示错误(文件列上没有分隔符)选择。这是我的代码:sqoopimport-m-1--drivercom.vertica.jdbc.Driver--connect"jdbc:vertica://serverName:5443/DBName"--username"user"--password"pass"--query'selectid,namefromcontactslimit10'--target-dir"folder/

java - org.apache.hive.jdbc.HiveStatement/org.apache.hadoop.hive.jdbc.HiveStatement 之间的区别

我一直在使用围绕Hadoop的产品,但对于使用Java开发应用程序还是个新手。我想用一些像HiveStatement这样的类,但是发现有同名类不同包。ex)org.apache.hive.jdbc.HiveStatement,org.apache.hadoop.hive.jdbc.HiveStatement.我在尝试将Statement对象转换为HiveStatement时注意到了这一点。我试图将对象转换为org.apache.hadoop.hive.jdbc.HiveStatement,但转换为org.apache.hive.jdbc.HiveStatement似乎对我来说是正确的案

hadoop - Apache Hive - 单次插入日期值

我正在尝试使用Hive将日期插入到日期列中。到目前为止,这是我尝试过的INSERTINTOtable1(EmpNo,DOB)VALUES('Clerk#0008000',cast(substring(from_unixtime(unix_timestamp(cast('2016-01-01'asstring),'yyyy-MM-dd')),1,10)asdate));和INSERTINTOtabletable1values('Clerk#0008000',cast(substring(from_unixtime(unix_timestamp(cast('2016-01-01'asstr

SQL/HIVE - 不同计数查询 - SELECT COUNT (DISTINCT columns,..) 与 SELECT COUNT(*) 与 DISTINCT 记录的子查询有何不同

在HIVE中,我尝试使用2种方法获取不同行的计数,SELECTCOUNT(*)FROM(SELECTDISTINCTcolumnsFROMtable);SELECTCOUNT(DISTINCTcolumns)FROMtable;两者都产生了不同的结果。第一个查询的计数大于第二个查询。他们的工作方式有何不同?提前致谢。 最佳答案 对您的查询做一点小改动,例如将您的子查询命名为:SELECTCOUNT(*)FROM(SELECTDISTINCTcolumnsFROMtable)myquery;

hadoop - 将 NULL 值从 Hive 导出到 Teradata

我在Hive中有一个表,其中某些列具有NULL值,我正在使用Teradata连接器将该表从Hadoop导出到Teradata。我的问题是NULL值被视为字符串NULL而不是NULL。如何将NULL值直接导出到Teradata?请帮忙。 最佳答案 您是否在导出命令中使用了input-null-string参数?根据documentation:The--input-null-stringand--input-null-non-stringargumentsareoptional.If--input-null-stringisnotspe

java - 用于查找最常出现的列值的 Hive UDAF

我正在尝试创建一个HiveUDAF来查找最常出现的列(字符串)值(不是单个字符或子字符串,使用精确的列值)。假设以下是我的名为my_table的表(破折号用于在视觉上分隔列)。User_Id-Item-Count1-A-11-B-11-A-11-A-11-A-11-C-12-C-12-C-12-A-12-C-1假设我调用以下脚本:SelectUser_Id,findFrequent(*)frommy_tablegroupbyUser_Id我应该得到以下输出,因为对于User_Id=1,A出现了4次而B和C只出现了一次。所以,User_Id=1最频繁的是A。同样,User_Id=2最频繁

hadoop - 如何循环 Hive 查询并使用循环变量

假设我有两个表Externaltable-etableInternaltable-itable我的表是根据日期分区的。现在,为了每天从etable的数据中填充我的itable,我在hue中使用HiveQuery的工作流和协调器如下所示:ALTERTABLEetableADDIFNOTEXISTSPARTITION(date='${date}')LOCATION'path/date=${date}';INSERTOVERWRITETABLEitablepartition(date='${date}')SELECT*FROMetableWHEREdate='${date}';现在假设每天我

hadoop - Hive 中 MetaStore 的主要用途?

我对MetaStore的用途有点困惑。在hive中创建表时:CREATETABLE(column1data_type,column2data_type);LOADDATAINPATHINTOtablemanaged_table;所以我知道这个命令获取HDFS中文件的内容并创建它的MetaData形式并将其存储在MetaStore中(包括每行的列类型,列名,它在HDFS中的位置等)在HDFS文件中)。它实际上并没有将数据从HDFS移动到Hive。但是存储这个元数据的目的是什么?例如,当我使用SparkSQL连接到Hive时,MetaStore不包含HDFS中的实际信息,而只包含元数据。那

hadoop - 我们如何将多个 hql 文件传递​​给 hive/beeline?

我想在一个配置单元session中运行file_1.hql和file_2.hql。我怎样才能做到这一点?我正在考虑将这两个文件作为hive-ffile_1.hqlfile_2.hql传递。但是-f只需要一个文件。有什么建议吗? 最佳答案 使用bash怎么样:hive-e"$(catfile1.hqlfile2.hql)" 关于hadoop-我们如何将多个hql文件传递​​给hive/beeline?,我们在StackOverflow上找到一个类似的问题: ht

hadoop - 无法将数据从 CSV 文件加载到 HIVE

我在将数据从CSV文件加载到配置单元外部表时得到“无”值。我的CSV文件结构是这样的:creation_month,accts_created7/1/2018,408476/1/2018,672165/1/2018,760094/1/2018,876113/1/2018,996872/1/2018,926311/1/2018,11195112/1/2017,107717'creation_month'和'accts_created'是我的列标题。createexternaltablemonthly_creation(creation_monthDATE,accts_createdINT