我有一些日志数据,有字段id,tdate,信息我创建了一个动态分区表CREATETABLElog_partitioned(idSTRING,infoSTRING)PARTITIONEDBY(tdateSTRING)然后我正在加载数据FROMlogslgINSERTOVERWRITETABLElog_partitionedPARTITION(tdate)SELECTlg.id,lg.info,lg.tdateDISTRIBUTEBYtdate;正在通过动态分区成功加载数据。但是当我试图查看数据时hdfsdfs-cat/user/hive/warehouse/log_partitioned
HIVE中的简单表创建无法正常工作并抛出以下错误请帮忙。hive>CREATETABLEpokes(fooINT,barSTRING);FAILED:Errorinmetadata:java.lang.RuntimeException:Unabletoinstantiateorg.apache.hadoop.hive.metastore.HiveMetaStoreClientFAILED:ExecutionError,returncode1fromorg.apache.hadoop.hive.ql.exec.DDLTask 最佳答案
当我尝试获取查询时SELECT*FROMA我得到了所有信息,但是当尝试获取存在列名(或连接)的查询时SELECTaFROMA它返回一些异常:TotalMapReducejobs=1LaunchingJob1outof1Numberofreducetasksissetto0sincethere'snoreduceoperatororg.apache.hadoop.ipc.RemoteException:java.io.IOException:File/tmp/hive-merza/hive_2014-06-25_09-12-19_567_6884805431385202274/-mr-1
我一直在尝试使用hive输出到s3。我在这方面取得了成功,但结果输出不是逗号分隔的,而是有一个分隔符,例如^A我想。我还致力于使用sqoop将数据从s3导入和导出到psql,但我无法在hive上执行此操作,即使我得到了解决方案也可以。我试过的是sethive.io.output.fileformat=CSVTextFile;INSERTOVERWRITEDIRECTORY"s3n://akshayhazari/results"select*frombooks;这是工作:Totaljobs=3LaunchingJob1outof3Numberofreducetasksissetto0si
我们正在研究Hive是否允许我们运行一些类似SQL的查询mongo风格的动态模式作为我们map-reduce作业的先驱。数据以几个TiB的BSON文件的形式出现;每个文件包含JSON“样本”。示例示例如下:{"_id":"SomeGUID","SomeScanner":{"B64LR":22,"Version":192565886128245},"Parser":{"Size":73728,"Headers":[{"VAddr":4096,"VSize":7924....etc....作为动态模式,只有少数字段保证存在。我们希望能够针对可能是某物的输入集运行查询喜欢SomeScanne
我正在将一张表从NETEZZA导入HIVE。我在SQOOP命令中明确提到了我的目标目录,但它始终采用默认路径:/user/hive/warehouse如何更改这个默认路径?? 最佳答案 在$HIVE_CONF/conf/hive-site.xml你必须把这个:hive.metastore.warehouse.diryour/directory/in/hdfs然后重启hive。 关于hadoop-更改HIVE中的目标目录,我们在StackOverflow上找到一个类似的问题:
我有分隔符为“,|”的数据。我按如下方式创建了配置单元DDL:CREATETABLEplayer_profile(player_idBIGINTCOMMENT'PlayerProfileIdentifier',change_tsSTRINGCOMMENT'ChangeDatetime',child_birth_yearINTCOMMENT'ChildBirthYear',countrySTRINGCOMMENT'CountryCode',)ROWFORMATSERDE'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'WITHSERDEP
我有一个字符串类型的日期字段,格式为:03/11/2001我想将它与另一个字符串格式的列连接起来:1855-05-2512:00:00.0如何在hive中有效地加入两列,忽略第二列的时间部分?我的查询如下所示:LEFTJOINtabel1t1ONtable2.Date=t1.Date 最佳答案 由于您拥有不同格式的日期值,因此您需要对两者使用日期函数,并在连接查询中将其转换为类似格式的日期类型。它会是这样的:LEFTJOINtabel1t1ONunix_timestamp(table2.Date,'yyyy-MM-ddHH:mm:s
尝试使用我能找到的JAR(不确定它们是否是最佳选择,我需要使用ESRI并在Hive中执行):ADDJAR/home/user/lib/esri-geometry-api-1.2.1.jar;ADDJAR/home/user/lib/spatial-sdk-hive-1.1.1-SNAPSHOT.jar;ADDJAR/home/user/lib/esri-geometry-api.jar;ADDJAR/home/user/lib/spatial-sdk-hadoop.jar;CREATETEMPORARYFUNCTIONST_PolygonAS'com.esri.hadoop.hive.
我运行了以下查询并得到了以下错误。请查看该错误消息提到它认为不存在的列名称(平台)。奇怪。hive-S-e'select*fromdevices.device_app_actionwhereds='20160511'ANDplatform='ios'limit3;'FAILED:SemanticException[Error10004]:Line1:73Invalidtablealiasorcolumnreference'ios':(possiblecolumnnamesare:duid,id,dt,app,platform,app_level,tier1,tier2,tier3,ti