partitioning相关内容

将列表划分为 n 个大小的列表的有效方法

我有一个 ArrayList,我想把它分成 n 个较小的 List 对象,并对每个对象执行一个操作.我目前这样做的方法是用 Java 中的 ArrayList 对象实现的.任何伪代码都可以. for (int i = 1; i subArray(ArrayList A, int start,打算) {ArrayList toReturn = new ArrayList();for (int i ..
发布时间:2021-11-17 23:10:21 Java开发

Zookeeper 是 Kafka 的必备品吗?

在 Kafka 中,我只想使用单个代理、单个主题和具有一个生产者和多个消费者的单个分区(每个消费者从代理获取自己的数据副本).鉴于此,我不想要使用 Zookeeper 的开销;我不能只使用经纪人吗?为什么必须要有动物园管理员? 解决方案 是的,运行 Kafka 需要 Zookeeper.来自 Kafka 入门文档: 第 2 步:启动服务器 Kafka 使用zookeeper,所 ..

如何根据行数重新分区 Spark 数据帧?

我写了一个简单的程序来请求一个巨大的数据库.为了导出我的结果,我写了这个函数: result.coalesce(1).write.options(Map("header" -> "true", "delimiter" > ";")).csv(mycsv.csv) 我使用 coalesce 方法只得到一个文件作为输出.问题是结果文件包含超过一百万行.所以,我无法在 Excel 中打开它... ..

如何根据行数重新分区 Spark 数据帧?

我写了一个简单的程序来请求一个巨大的数据库.为了导出我的结果,我写了这个函数: result.coalesce(1).write.options(Map("header" -> "true", "delimiter" > ";")).csv(mycsv.csv) 我使用 coalesce 方法只得到一个文件作为输出.问题是结果文件包含超过一百万行.所以,我无法在 Excel 中打开它... ..

Spark 是否有关于 RDD 的最佳分区数量及其元素数量的经验法则?

RDD 包含的元素数量与其理想的分区数量之间有什么关系? 我有一个包含数千个分区的 RDD(因为我从一个由多个小文件组成的源文件加载它,这是一个我无法修复的约束,所以我必须处理它).我想对其重新分区(或使用 coalesce 方法).但我事先不知道 RDD 将包含的事件的确切数量. 所以我想以自动化的方式来做.看起来像: val numberOfElements = rdd.count( ..
发布时间:2021-11-14 22:30:03 其他开发

JDBC 到 Spark Dataframe - 如何确保均匀分区?

我是 Spark 的新手,正在使用 spark.read.jdbc 通过 JDBC 从 Postgres 数据库表创建 DataFrame. 我对分区选项有些困惑,特别是 partitionColumn、lowerBound、upperBound 和 numPartitions>. 文档似乎表明这些字段是可选的.如果我不提供它们会怎样? Spark 如何知道如何对查询进行分区?这会有 ..
发布时间:2021-11-14 21:59:43 其他开发

Spark:保存由“虚拟"分区的 DataFrame柱子

我正在使用 PySpark 来执行经典的 ETL 作业(加载数据集、处理它、保存它),并希望将我的 Dataframe 保存为由“虚拟"列分区的文件/目录;我所说的“虚拟"是指我有一列时间戳,它是一个包含 ISO 8601 编码日期的字符串,我想按年/月/日进行分区;但我实际上在 DataFrame 中没有 Year、Month 或 Day 列;我有这个时间戳,我可以从中派生这些列,但我不希望我的 ..

用于高效加入 Spark 数据帧/数据集的分区数据

我需要根据一些共享键列将许多数据帧join.对于键值 RDD,可以指定一个分区器,以便将具有相同键的数据点混洗到同一个执行器,因此加入更有效(如果在 join 之前有混洗相关操作).可以在 Spark DataFrames 或 DataSets 上做同样的事情吗? 解决方案 如果您知道将多次加入 DataFrame,您可以在加载它后重新分区 val users = spark.read. ..

使用 Spark 的 partitionBy 方法对 S3 中的大型倾斜数据集进行分区

我正在尝试使用 Spark 将一个大型分区数据集写入磁盘,而 partitionBy 算法在我尝试过的两种方法中都遇到了困难. 分区严重倾斜 - 有些分区很大,有些很小. 问题 1: 当我在 repartitionBy 之前使用 repartition 时,Spark 将所有分区都写成一个文件,即使是大分区也是如此 val df = spark.read.parquet("so ..
发布时间:2021-11-14 21:38:44 其他开发

Apache Spark:获取每个分区的记录数

我想检查我们如何获取有关每个分区的信息,例如总数.当 Spark 作业以部署模式作为纱线集群提交以在控制台上记录或打印时,驱动程序端每个分区中的记录. 解决方案 您可以像这样获取每个分区的记录数: df.rdd.mapPartitionsWithIndex{case (i,rows) =>迭代器((i,rows.size))}.toDF("partition_number","numbe ..
发布时间:2021-11-14 21:22:34 其他开发

根据工作人员、核心和数据帧大小确定 Spark 分区的最佳数量

在 Spark-land 中有几个相似但又不同的概念,围绕着如何将工作分派到不同节点并同时执行.具体来说,有: Spark Driver 节点 (sparkDriverCount) 一个 Spark 集群可用的工作节点数量 (numWorkerNodes) Spark 执行器的数量(numExecutors) 所有worker/executors同时操作的DataFrame (data ..