草庐IT

partition_size

全部标签

Hadoop:如何使用上下文对象在减少步骤中找出partition_Id

在HadoopAPI版本中。0.20及更高版本引入了Context对象,而不是JobConf。我需要使用Context对象找出:当前Reducer的partition_id输出文件夹使用过时的JobConf,我可以通过以下方式找到当前Reducer的partition_id:publicvoidconfigure(JobConfconf){intcurrent_partition=conf.getInt("mapred.task.partition",-1);}我认为我需要在方法内部使用Context对象publicvoidsetup(Contextc)但是怎么办?输出文件夹名称呢?

apache-spark - Spark RDD : partitioning according to text file format

我有一个包含数十GB数据的文本文件,我需要从HDFS加载它并将其并行化为RDD。此文本文件使用以下格式描述项目。请注意,字母字符串不存在(每行的含义是隐含的)并且每行可以包含空格以分隔不同的值:0001(id)100010002000(dimensions)0100(weight)0030(amount)0002(id)111010005000(dimensions)0220(weight)3030(amount)我认为并行化此文件的最直接方法是将其从本地文件系统上传到HDFS,然后通过执行sc.textFile(filepath)创建一个RDD。但是,在这种情况下,分区将取决于与文件

hadoop - pig 与大表倾斜连接导致 "Split metadata size exceeded 10000000"

我们在一个小的(16M行)不同表和一个大的(6B行)倾斜表之间有一个pig连接。常规连接在2小时内完成(经过一些调整)。我们尝试使用skewed并能够将性能提高到20分钟。但是,当我们尝试更大的倾斜表(19B行)时,我们从SAMPLER作业中得到这条消息:Splitmetadatasizeexceeded10000000.Abortingjobjob_201305151351_21573[ScriptRunner]atorg.apache.hadoop.mapreduce.split.SplitMetaInfoReader.readSplitMetaInfo(SplitMetaInfo

hadoop - Hive:当插入分区表时,在大多数行中,hive double url-encode partition key column

我创建了一个分区表:createtablet1(amountdouble)partitionedby(events_partition_keystring)storedaspaquet;向tmp_table添加了一些数据,其中'events_partition_key'列包含以下格式的时间戳(字符串类型):“2018-02-2500:00:00”然后我向分区表中插入一些数据。insertintotablet1partition(events_partition_key)selectamount,events_partition_keyfromtmp_table当从新的分区表t1中选择时

hadoop - HDFS 中参数 "mapred.min.split.size"的行为

参数“mapred.min.split.size”改变了之前写入文件的block的大小?假设我在开始JOB时传递值为134217728(128MB)的参数“mapred.min.split.size”。关于发生的事情,正确的说法是什么?1-每个MAP处理相当于2个HDFSblock(假设每个block64MB);2-我的输入文件(以前包含HDFS)将有一个新的分区,以占用HDFS128M中的block; 最佳答案 splitsize的计算公式:-max(mapred.min.split.size,min(mapred.max.spl

java - 如何修复hadoop中的 "Illegal partition"错误?

我已经编写了一个自定义分区程序。当我的reducetask数大于1时,作业失败。这是我得到的异常:java.io.IOException:Illegalpartitionforweburl_compositeKey@804746b1(-1)atorg.apache.hadoop.mapred.MapTask$MapOutputBuffer.collect(MapTask.java:930)atorg.apache.hadoop.mapred.MapTask$OldOutputCollector.collect(MapTask.java:499)我写的代码是publicintgetPar

file - Hadoop MapReduce : Appropriate input files size?

我有3位数GB甚至1或2位数TB的数据集。因此,输入文件是一个文件列表,每个文件的大小约为10GB。我在hadoop中的mapreduce作业处理所有这些文件,然后只给出一个输出文件(带有聚合信息)。我的问题是:从Apache调整hadoop/mapreduce框架的合适文件大小是多少?我听说大文件比小文件更受欢迎。有什么想法吗?我唯一确定的是hadoop读取block,每个block默认为64MB。所以如果文件大小是64MB的倍数就好了。目前,我的应用程序只将输出文件写入一个文件。文件大小当然是3位千兆位。我想知道如何有效地对文件进行分区。当然,我可以只使用一些unix工具来完成这项

performance - spark.sql.shuffle.partitions 和 spark.default.parallelism 有什么区别?

spark.sql.shuffle.partitions和spark.default.parallelism有什么区别?我在SparkSQL中都尝试过设置,但是第二阶段的任务数一直是200。 最佳答案 来自答案here,spark.sql.shuffle.partitions配置在为连接或聚合改组数据时使用的分区数。spark.default.parallelism是RDD中的默认分区数s由join等转换返回,reduceByKey,和parallelize当用户未明确设置时。注意spark.default.parallelism似

php - 当文件大于 post_max_size 时,Symfony2 验证器不工作

我在php.ini中将upload_max_filesize和post_max_size设置为32Mb。我正在使用Symfony2。我创建了一个包含文件变量的实体,以便人们可以上传文件:/***@Assert\File(maxSize="3M")*/public$file;当文件小于3Mb时,文件正确上传。当3Mb时验证器工作正常,显示正常错误消息“文件太大”但是,当文件>32Mb(post_max_size)时:Fatalerror:Allowedmemorysizeof150994944bytesexhausted(triedtoallocate62353390bytes)in/A

PHP HTML 整洁 : size limit to buffer

我正在尝试使用作为PHP(http://www.php.net/manual/en/book.tidy.php)一部分的HTMLTidy实现来重新格式化大量HTML。我遇到了一个问题,其中Tidy截断了超过某个点(大约8K)的输出。当我创建一个大约10K长的字符串并将其交给tidy_repair_string时,如下所示:$output=tidy_repair_string($output,array('indent'=>true,//enforceindentation'hide-comments'=>true,//Removethecomments'wrap'=>100,//Bre