草庐IT

date - 如何在配置单元中将字符串格式转换为日期格式

我的表中有时间戳和日期列。我的日期和时间戳列是字符串类型。我需要将其转换为DATE和TIMESTAMP格式。但我数据中的格式是2/4/20173:03。因此,当我将其转换为TIMESTAMP数据类型时,它会给出NULL。我们可以做些什么来解决这个问题?这是我的示例日期和时间列数据。2/3/201723:372/3/201723:372/3/201723:402/3/201723:502/3/201723:512/3/201723:532/3/201723:552/4/20170:082/4/20170:57提前致谢 最佳答案 cre

python - Pyspark 将数据写入配置单元

下面是我将数据写入Hive的代码frompysparkimportsince,SparkContextasscfrompyspark.sqlimportSparkSessionfrompyspark.sql.functionsimport_functions,isnanfrompyspark.sqlimportSQLContextfrompyspark.sql.typesimport*frompysparkimportHiveContextashcspark=SparkSession.builder.appName("example-spark").config("spark.sql.

hadoop - 使用配置单元中的另一个表创建表时出现问题

hive中有一个测试表。表数据有多个小文件,所以我想使用该测试表创建另一个表,这样新创建的表将具有更少的分区并且查询会很快。但是我创建新表时它给了我错误。CREATETABLEIFNOTEXISTStest_mergeSTOREDASparquetASSELECT*FROMtest;错误ERROR:Status:FailedERROR:FAILED:ExecutionError,returncode3fromorg.apache.hadoop.hive.ql.exec.spark.SparkTaskINFO:Completedexecutingcommand(queryId=hive_

hadoop - 配置单元 - 为不同的列值插入行

老实说,我不知道如何简单地在标题行中描述问题而不是展示示例。我有一个包含两列的配置单元表:ID和日期IDDate3101-01-20173101-02-20173101-03-201712301-01-201712301-01-2017...在这个表中,我想包括另一列是小时,如下所示IDDateHour3101-01-2017003101-01-2017013101-01-2017023101-01-2017033101-01-201704...3101-01-2017233101-02-2017003101-02-201701...基本上,对于每一行,我想添加一个小时值从00到23的

sql - 如何根据某些条件在配置单元中获取收集集

如何根据某些条件获取hive中的collectsetid|num_of_cats=====================HOPAHOPBHOPCCAPACAPCCAPBTOPC如果指标是A则第一个字段是1。顺序是A,B,C例如:第一行仅包含A,因此指标为1,0,0第二行只包含B所以指标是0,1,0应该返回:id|cats_aggregate(indicatororderisA,B,C)===========================HOPArray(1,0,0)HOPArray(0,1,0)HOPArray(0,0,1)CAPArray(1,0,0)CAPArray(0,0,1

hadoop - Sparksession 错误是关于配置单元的

我的操作系统是windows10frompyspark.confimportSparkConfsc=SparkContext.getOrCreate()spark=SparkSession.builder.enableHiveSupport().getOrCreate()这段代码给我以下错误Py4JJavaErrorTraceback(mostrecentcalllast)~\Documents\spark\spark-2.1.0-bin-hadoop2.7\python\pyspark\sql\utils.pyindeco(*a,**kw)62try:--->63returnf(*a

hadoop - 如何使用接受多列作为参数的 java 为配置单元编写 UDAF?

我想根据日期、var_currecy_code、fxd_crncy_code。我们的hive表中有所有数据,现在我们需要使用hiveUDAF根据最大​​日期和上面提到的更多输入来计算currency_rate。 最佳答案 HiveUDF可以接受元组作为参数。在函数中,您检查元组的长度,并为您的逻辑提取必要的顺序 关于hadoop-如何使用接受多列作为参数的java为配置单元编写UDAF?,我们在StackOverflow上找到一个类似的问题: https://

hadoop - 配置单元错误 : compiling statement: FAILED: ParseException line 15:0 missing EOF at 'collection' near ''\n''

我是hive的新手,我正在创建一个具有以下属性的表,CREATEEXTERNALTABLEEXTTBL_Transactions(TRANSACTION_IDvarchar(70)COMMENT'UniqueID,`PrimaryKey',DEFINITION_IDvarchar(70)COMMENT'Definition,NullAllowed',USER_IDvarchar(70)COMMENT'Contactid,ForeignKey',PURCHASE_DATETIMETimestampCOMMENT'Saveddattime,NullAllowed',PURCHASE_AMO

hadoop - 当文件不在目录中时将文件从 HDFS 加载到配置单元的替代方法

ROWFORMATDELIMITEDFIELDSTERMINATEDBY'${database_delimiter}'LINESTERMINATEDBY'\n'STOREDASTEXTFILELOCATION'${database_location}/Person';这里的person应该是一个目录。而person是part-m文件而不是目录。 最佳答案 如果我对问题的理解正确,Hive确实无法在文件上创建表。它需要是一个目录位置。因此,无论您有什么进程,都需要制作上述目录。例如,无论您有什么映射器进程,您都需要指定一个输出目录,如

hadoop - 失败 : Execution Error, 在配置单元中的连接操作期间从 org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask​​ 返回代码 2

我正尝试在配置单元中对以下两个表运行连接查询-selectb.locationfromuser_activity_ruleainnerjoinuser_info_rulebwherea.uid=b.uidanda.cancellation=true;QueryID=username_20180530154141_0a187506-7aca-442a-8310-582d335ad78dTotaljobs=1OpenJDK64-BitServerVMwarning:ignoringoptionMaxPermSize=512M;supportwasremovedin8.0Executionl