草庐IT

report_date

全部标签

hadoop - 将 TDCH 用于 hcat 作业类型的异常。不支持 DATE 列

我正在运行的查询是:hadoopcom.teradata.hadoop.tool.TeradataExportTool-urljdbc:teradata://tdx/TMODE=ANSI,CHARSET=UTF8,database=db-usernamexxx-passwordxxx-jobtypehcat-sourcetablecustomers-sourcedatabasexxx-nummappers1-targettablecustomers在运行作业时,我得到这个异常:com.teradata.connector.common.exception.ConnectorExcept

hadoop - 在 Impala 中将 STRING 转换为 DATE。 (可能的错误)

这似乎是我面临的一个有趣的错误/问题。我正在使用CDH5.8(Hadoop的Cloudera发行版)下的Impala和HUE。执行下面的代码select'1709.02.02'asDateString,CAST((from_unixtime(UNIX_TIMESTAMP('1709.02.02','yyyy.MM.dd')))asTIMESTAMP)asDateTimestamp我得到如下输出(这是预期的)datestringdatetimestamp1709.02.021709-02-0200:00:00但是在执行下面的代码时select'1009.02.02'asDateStrin

date - 如何在 HIVE 中的连续日期之间插入行数据?

示例数据:customertxn_datetagA1-Jan-171A2-Jan-171A4-Jan-171A5-Jan-170B3-Jan-171B5-Jan-170需要填写日期范围(2017年1月1日至2017年1月5日)之间每个缺失的txn_date。就像下面这样:输出应该是:customertxn_datetagA1-Jan-171A2-Jan-171A3-Jan-170(inserted)A4-Jan-171A5-Jan-170B1-Jan-170(inserted)B2-Jan-170(inserted)B3-Jan-171B4-Jan-170(inserted)B5-Ja

sql - 从 current_date 获取星期并在 SQL 中创建一个具有动态名称的表

我每周运行一个特定的查询,创建一个包含所需数据的周表。表名格式如下db_name.subscriptions_wk29--为第29周数据创建的表db_name.subscriptions_wk30--为第30周数据创建的表db_name.subscriptions_wk31--为第31周数据创建的表由于这是一项重复性任务,我想安排此查询,使其在特定一周的每个星期一自动运行以获取前一周的数据。我面临的问题是,我不知道如何在每周运行查询时动态更改表名。因此,当我下次运行查询时,它应该会自动创建一个名为db_name.subscriptions_wk32的表。我可以从weekofyear('

python - Hadoop 流 : reporting error

在使用Python脚本的Hadoop流中报告异常的最佳实践是什么?我的意思是:假设我有一个无法理解其输入的映射器脚本,我如何向Hadoop发出信号以终止作业并报告错误消息?我是否使用logging并以sys.exit结束? 最佳答案 如果您想发出错误信号,请从您的Python脚本中返回一个非零代码。您可以将任何日志记录写入stderr,hadoop会将其捕获到任务日志中。您还可以通过在stderr行前加上reporter:status:来向报告者和计数器发送状态。或reporter:counter:,,

sql - Hive 中的 TRUNC 和 TO_DATE 有什么区别

您好,我想找出在Hive中使用TRUNC和TO_DATE之间的区别。目前在oracle中,我针对下面显示的数据编写了以下案例语句:ORDER_NO|NAME|DATE_|TASK_NOABC123|Humpty|07-OCT-1612:30:54|1ABC123|Humpty|07-OCT-1612:30:54|2ABC123|Humpty|07-OCT-1612:32:20|6SELECTORDER_NO,NAME,DATE_,TASK_NO(CASEWHENDATE_-LAG(DATE_)OVER(PARTITIONBYORDER_NO,NAME,TRUNC(DATE_)ORDER

date - Hive - 来自时间戳列的月份和年份

您好,我正在尝试使用以下查询提取hive中时间戳列的月份和年份部分selectfrom_unixtime(unix_timestamp(upd_gmt_ts,'yyyyMM'))fromabc.test;输出看起来像2016-05-2001:08:48期望的输出应该是201605感谢任何建议。 最佳答案 我更喜欢使用Hivedate_format()(从Hive1.2.0开始)。它支持JavaSimpleDateFormat模式。date_format()接受日期/时间戳/字符串。所以你的最终查询将是selectdate_forma

date - 如何在 Hive 中将时间戳(秒和毫秒之间的点)转换为日期(yyyyMMdd)?

例如,我想将时间戳1490198341.705转换为日期20170323和小时11(GMT+8:00)。有什么函数可以解决这个问题吗? 最佳答案 试试这个:selectdate_format(from_utc_timestamp(1490198341.705,'GMT+8:00'),'yyyyMMddHH:mm:ss'); 关于date-如何在Hive中将时间戳(秒和毫秒之间的点)转换为日期(yyyyMMdd)?,我们在StackOverflow上找到一个类似的问题:

date - HIVE - 按日期功能分组

谁能告诉我为什么我没有得到结果集中每个f0、MONTH、DAY、HOUR、MINUTE组的计数?结果集:查询:SELECTt.f0,MONTH(TO_DATE(Hex2Dec(t.f2))),DAY(TO_DATE(Hex2Dec(t.f2))),HOUR(TO_DATE(Hex2Dec(t.f2))),MINUTE(TO_DATE(Hex2Dec(t.f2))),COUNT(DISTINCTt.f1)FROMtabletWHERE(t.f0=1ORt.f0=2)AND(t.f3>='2013-02-06'ANDt.f3=1360195200ANDHex2Dec(t.f2)架构:f0I

hadoop - 如何修复 "Task attempt_201104251139_0295_r_000006_0 failed to report status for 600 seconds."

我编写了一个mapreduce作业来从数据集中提取一些信息。该数据集是用户对电影的评价。用户数约250K,电影数约300k。map的输出是*>and*>.在reducer中,我将处理这些对。但是当我运行作业时,mapper按预期完成,但reducer总是提示Taskattempt_*failedtoreportstatusfor600seconds.我知道这是由于无法更新状态,所以我添加了对context.progress()的调用在我的代码中是这样的:intcount=0;while(values.hasNext()){if(count++%100==0){context.progr