草庐IT

hadoop - Hive Tez reducer 运行速度超慢

我加入了多个表,总行数约为250亿行。最重要的是,我正在做聚合。下面是我的配置单元设置,我用它来生成最终输出。我不太确定如何调整查询并使其运行得更快。目前,我正在反复试验,看看是否能产生一些结果,但似乎没有用。Mappers运行得更快,但reducers需要很长时间才能完成。谁能分享您对此的看法?谢谢。SEThive.execution.engine=tez;SEThive.exec.dynamic.partition.mode=nonstrict;SEThive.qubole.cleanup.partial.data.on.failure=true;SEThive.tez.conta

date - hive 中是否有将纪元时间转换为标准日期的函数?

to_date函数将此“1970-11-0100:00:00”作为输入并返回“1970-11-01”。但我有纪元时间作为输入。如何将其转换为标准日期格式?有一个函数可以将标准日期转换为unix纪元时间,但反之则不行。感谢任何帮助。谢谢普里扬克 最佳答案 发件人:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-DateFunctionsfrom_unixtime(bigintunixtime[,stringfor

amazon-s3 - 为什么一个hive查询的结果会拆分成多个文件

我设置了一个AmazonElasticMapreduce作业来运行配置单元查询CREATEEXTERNALTABLEoutput_dailies(daystring,typestring,subTypestring,productstring,productDetailsstring,uniqueUsersint,totalUsersint)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t'LINESTERMINATEDBY'\n'STOREDASTEXTFILELOCATION'${OUTPUT}';INSERTOVERWRITETABLEoutput_

database - Hadoop/Hive 查询将一列拆分为几列

我正在使用HIVE和两个看起来像(或多或少)的表:-TABLE1定义为[(Variables:string),(Value1:int),(Value2:int)]字段“变量”看起来像“x0,x1,x2,x3,...,xn”-TABLE2定义为[(Value1Sum:int),(Value2Sum:int),(X1:string),(X4:string),(X17:string)]我使用以下查询将table1“转换”为table2:INSERTOVERWRITETABLEtable2SELECTsum(v1),sum(v2),x1,x4,x17FROM(SELECTValue1asv1,

hadoop - 从 MapReduce 作业向 Hive 添加分区

我是Hive和MapReduce的新手,非常感谢您的回答并提供正确的方法。我在hive中定义了一个外部表logs,在日期和源服务器上分区,外部位置在hdfs/data/logs/上。我有一个MapReduce作业,它获取这些日志文件并将它们拆分并存储在上述文件夹下。喜欢"/data/logs/dt=2012-10-01/server01/""/data/logs/dt=2012-10-01/server02/"......在MapReduce作业中,我想将分区添加到Hive中的表日志中。我知道这两种方法altertable命令--太多的altertable命令添加动态分区对于方法二,我

xml - 如何将xml文件加载到Hive中

我在处理Hive表时遇到以下问题。我的HDFS中有超过10亿个xml文件。我想要做的是,每个xml文件都有4个不同的部分。现在我想为每个xml文件拆分并加载每个表中的每个部分示例:1233222//havinglotofxmltages//havinglotofxmltages//havinglotofxmltages//havinglotofxmltages我有四张tablesection1Tableidsection1//fieldssection2Tableidsection2section3Tableidsection3section4Tableidsection4现在我想将数

hadoop - HIVE 创建表不为空

这是我在DB2数据库中的查询:CREATETABLEMY_TABLE(COD_SOCCHAR(5)NOTNULL);是否可以在HIVE中重现“NOTNULL”?PIG呢? 最佳答案 不,目前不可能。Hive很难强制执行列约束。 关于hadoop-HIVE创建表不为空,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/25186539/

python - Hive 转换使用 Python : Unable to initialize custom script

我正在尝试通过将Python脚本作为映射器来测试HiveTRANSFORM。我的hive脚本是:addfile/full/path/to/mapper.py;setmapred.job.queue.name=queue_name;usemy_database;selecttransform(s.year,s.month,s.day,s.hour)using'mapper.py'frommy_tableslimit10;我的Python映射器脚本只是试图回应输入:#!/usr/local/bin/pythonimportsysforlineinsys.stdin:printline我尝试

hadoop - 如何避免为 Hive 查询生成空的 .deflate 文件?

当我运行Hive查询时,生成了大量空的.deflate文件(它们实际上大约8个字节,我认为这是.deflate文件)。我怀疑发生这种情况是因为查询需要大量的reducer。我想知道是否有办法避免生成这些空的.deflate文件?提前致谢林 最佳答案 .deflate是默认的压缩编解码器Hive有压缩设置,可用于减少Hive占用的磁盘空间量用于其查询。当属性hive.exec.compress.output=true时,Hive将使用codec由mapred.map.output.compression.codec属性配置以压缩HDF

hadoop - 计算列上的 Hive 分区修剪

我在Hive上有几个表,我的查询试图检索过去x天的数据。当我使用直接日期时,Hive正在修剪分区,但当我改用公式时,Hive正在执行全表扫描。select*fromf_eventwheredate_key>20160101;scannedpartitions..s3://...key=20160102[f]s3://...key=20160103[f]s3://...key=20160104[f]比方说,如果我使用公式来获取过去4周的数据Selectcount(*)Fromf_eventfWheredate_key>from_unixtime(unix_timestamp()-2*7*