草庐IT

分区副本选举

全部标签

java - 使用 Spark Dataframe 的 Hive 分区中缺少日期前导零

我正在向SparkDataframe添加一个分区列。新列包含年月日。我的数据框中有一个时间戳列。DataFramedfPartition=df.withColumn("year",df.col("date").substr(0,4));dfPartition=dfPartition.withColumn("month",dfPartition.col("date").substr(6,2));dfPartition=dfPartition.withColumn("day",dfPartition.col("date").substr(9,2));当我输出数据帧时,我可以看到列的正确值,

hadoop - 分区 hive 数据复杂数据类型,同时插入数据它显示错误

我使用hive创建了一个表,我想根据位置对数据进行分区createtablestudent(idbigint,namestring,locationstring,coursearray)ROWFORMATDELIMiTEDfieldsterminatedby'\t'collectionitemsterminatedby','storedastextfile;和类似的数据100student1ongolejava,.net,hadoop101student2hyderabad.net,hadoop102student3vizagjava,hadoop103student4ongole.n

shell - Curl,Hadoop 上的 Kerberos 身份验证文件副本

我们需要在HDFS位置、HDFS文件夹之间建立一个文件副本。我们目前在shell脚本循环中使用了curl命令,如下所示。/usr/bin/curl-v--negotiate-u:-XPUT":/webhdfs/v1/busy/rg/stg/"$1"/"$table"/"$table"_"$3".dsv?op=RENAME&destination=/busy/rg/data/"$1"/"$table"/"$table"_$date1.dsv"不过这样就实现了文件的移动。我们需要建立一个文件副本,以便将文件保留在原始暂存位置。想知道有没有相应的curl操作?op=RENAME&destin

hadoop - Hive 加入 2 个表,一个有分区,另一个没有

我必须对表格假设表格一是X,表格二是Z。表Z有一个分区谓词。表X是一个国家/地区表,具有以下字段country_id,country_name表Z包含一些数据,我想将该表的country_id映射到表X。我试过了selectc.country_id,c.country_name,s.sales_id,s.sales_ctry_idfromx_tablecjoinz_tableson(c.country_id=s.sales_ctry_id)但是因为表Z是按日期字段分区的,所以我无法让这个连接工作。有什么建议吗? 最佳答案 您应该使用

hadoop - 为子分区创建 Hive 表

我有一个带日期分区的配置单元表。这些日期从2017年1月1日开始。HDFS位置是按日期分区的。我如何创建一个仅考虑来自上述HDFS位置的5个日期的Hive表? 最佳答案 createtablenewtableasselectcolumn1,column2,column3fromoldtablewhereDateStamp>='2017-01-01'andDateStamp 关于hadoop-为子分区创建Hive表,我们在StackOverflow上找到一个类似的问题:

hadoop - 如何将分区 Hive ORC 表中的多个 ORC 文件(属于每个分区)组合成一个大的 ORC 文件

我在Hive中有一个分区的ORC表。在用所有可能的分区加载表后,我得到了HDFS-多个ORC文件,即HDFS上的每个分区目录都有一个ORC文件。对于某些用例,我需要将每个分区下的所有这些ORC文件组合成一个大的ORC文件。有人可以建议我将这些多个ORC文件(属于每个分区)组合成一个大的ORC文件的方法。我已经尝试从分区表创建一个新的非分区ORC表。它确实减少了文件数量,但没有减少到单个文件。PS:从另一个表创建一个表完全是一个map任务,因此使用属性“setmapred.reduce.tasks=1;”将reducer的数量设置为1;没有帮助。谢谢 最佳答案

sorting - mapreduce 分区内的数据是否已排序,如果是,它是如何发生的?

mapreduce分区内的数据是否已排序,如果是,如何排序?AFAIK,它是根据key分组的。如果它在内部排序,那么对所有分区内的所有数据进行排序不是一种开销吗? 最佳答案 如果您谈论的是映射器作为输入接收的输入拆分,那么不是;它们没有排序,因为这确实会产生不必要的开销。排序在map阶段结束之前开始(仅当使用reducer时),因此reduce函数的输入已排序。Partitioner定义了指定哪个reducer将处理映射器输出的标准。HashPartitioner(默认使用的Partitioner的实现)对映射器的输出键进行哈希处理

hadoop - 无法关闭文件,因为最后一个 block 没有足够数量的副本

从错误消息中可以明显看出,保存与文件相关的特定block的副本时出现问题。原因可能是访问数据节点以保存特定block(block的副本)时出现问题。完整日志请引用下方:我找到了另一个用户“huasanyelao”-https://stackoverflow.com/users/987275/huasanyelao也有类似的异常/问题,但用例不同。现在,我们如何解决这些问题?我了解在所有情况下都没有固定的解决方案。1.我需要立即采取什么措施来修复此类错误?2.如果有作业我当时没有监控日志。我需要采取什么方法来解决此类问题。P.S:除了修复网络或访问问题,我还应该遵循哪些其他方法。错误日志

hadoop - 为什么分割点在 Hadoop 总顺序分区器上乱序?

我使用Hadooptotalorderpartitioner和randomsampler作为输入采样器。但是当我增加从属节点并将任务减少到8个时,出现以下错误:Causedby:java.io.IOException:Splitpointsareoutoforder我不知道这个错误的原因。如何在inputsampler.randomsampler函数上设置三个参数的个数? 最佳答案 两个可能的问题您有重复的key您正在为输入采样器和运行总顺序分区器的任务使用不同的比较器您可以通过下载分区文件并检查其内容来诊断此问题。分区文件是tot

hadoop - Hive 动态分区,未创建正确的分区

我正在尝试将数据插入到分区表中,但并未创建所有分区(仅创建了空值和零值),请参见下文。hive>selectstate_code,district_code,count(*)frommarital_statusgroupbystate_code,district_code;TotalMapReducejobs=1启动的MapReduce作业:...Job0:Map:1Reduce:1CumulativeCPU:3.49secHDFSRead:193305HDFSWrite:240SUCCESSTotalMapReduceCPUTimeSpent:3seconds490msecOK280