partitioning相关内容

如何在 Spark SQL 中控制分区大小

我需要使用 Spark SQL HiveContext 从 Hive 表加载数据并加载到 HDFS.默认情况下,来自 SQL 输出的 DataFrame 有 2 个分区.为了获得更多的并行性,我需要更多的 SQL 分区.HiveContext 中没有重载方法来获取分区数参数. RDD 的重新分区会导致改组并导致更多的处理时间. > val result = sqlContext.sq ..
发布时间:2021-11-14 21:15:34 其他开发

如何定义DataFrame的分区?

我已经开始在 Spark 1.4.0 中使用 Spark SQL 和 DataFrames.我想在 Scala 中的 DataFrames 上定义自定义分区器,但不知道如何执行此操作. 我正在使用的其中一个数据表包含一个交易列表,按帐户分类,类似于以下示例. 账户日期类型金额1001 2014-04-01 采购 100.001001 2014-04-01 采购 50.001001 2014 ..

为什么 sortBy 转换会触发 Spark 作业?

根据 Spark 文档,只有 RDD 操作可以触发 Spark 作业,并且在对其调用操作时会延迟评估转换. 我看到 sortBy 转换函数被立即应用,它在 SparkUI 中显示为作业触发器.为什么? 解决方案 sortBy 是使用 sortByKey 实现的,它依赖于 RangePartitioner (JVM) 或分区函数 (Python).当您调用 sortBy/sortByK ..
发布时间:2021-11-12 05:41:37 其他开发

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

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

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

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

如何在 Spark SQL 中控制分区大小

我需要使用 Spark SQL HiveContext 从 Hive 表加载数据并加载到 HDFS.默认情况下,来自 SQL 输出的 DataFrame 有 2 个分区.为了获得更多的并行性,我需要更多的 SQL 分区.HiveContext 中没有重载方法来获取分区数参数. RDD 的重新分区会导致改组并导致更多的处理时间. > val result = sqlContext.sq ..
发布时间:2021-11-12 05:26:25 其他开发

如何定义DataFrame的分区?

我已经开始在 Spark 1.4.0 中使用 Spark SQL 和 DataFrames.我想在 Scala 中的 DataFrames 上定义自定义分区器,但不知道如何执行此操作. 我正在使用的其中一个数据表包含一个交易列表,按帐户分类,类似于以下示例. 账户日期类型金额1001 2014-04-01 采购 100.001001 2014-04-01 采购 50.001001 2014 ..

HashPartitioner 是如何工作的?

我阅读了 HashPartitioner.不幸的是,除了 API 调用之外,没有任何解释.我假设 HashPartitioner 根据键的散列对分布式集进行分区.例如,如果我的数据就像 (1,1), (1,2), (1,3), (2,1), (2,2), (2,3) 所以分区器会把它放到不同的分区中,相同的键落在同一个分区中.但是我不明白构造函数参数的重要性 new HashPartiton ..
发布时间:2021-11-12 05:23:53 其他开发

Kafka 流:从应用程序的每个实例中的所有分区读取

使用 KTable 时,当实例/消费者数量等于分区数量时,Kafka 流不允许实例从特定主题的多个分区中读取.我尝试使用 GlobalKTable 来实现这一点,这样做的问题是数据将被覆盖,并且无法对其应用聚合. 假设我有一个名为“data_in"的主题,有 3 个分区(P1、P2、P3).当我运行 Kafka 流应用程序的 3 个实例(I1、I2、I3)时,我希望每个实例都从“data_i ..
发布时间:2021-11-12 03:40:07 Java开发

Kafka Streams - 如何更好地控制内部创建的状态存储主题的分区?

Kafka Streams 中的状态存储是在内部创建的.状态存储按键分区,但不允许提供除键以外的分区(据我所知). 问题 如何控制 state-store 内部创建的主题的分区数?状态存储主题如何推断默认使用的分区数量和分区,以及如何覆盖? 如果您想通过除传入键值记录的键以外的其他内容来分区状态存储并进行共同分区,如何解决此问题?在这种情况下,我想通过比我的常规键更具体的东西进行 ..
发布时间:2021-11-12 03:36:08 其他开发

Apache Flink - 将流与输入 Kafka 主题一样进行分区

我想在 Apache Flink 中实现以下场景: 给定一个有 4 个分区的 Kafka 主题,我想在 Flink 中使用不同的逻辑独立处理分区内数据,具体取决于事件的类型. 特别地,假设输入 Kafka 主题包含之前图像中描述的事件.每个事件都有不同的结构:分区 1 具有字段“a";作为键,分区 2 具有字段“b";作为关键等.在 Flink 中,我想根据事件应用不同的业务逻辑,所以 ..

Partitions如何拆分成Kafka Broker?

我知道分区是在 Kafka Broker 之间拆分的.但分裂是基于什么?.例如,如果我有 3 个代理和 6 个分区,如何确保每个代理将有 2 个分区?Kafka 目前是如何进行这种拆分的? 解决方案 分配策略是一个内部实现细节,没有记录,因为它可以随时更改.因此,您不应该依赖此算法保持不变.此外,您无法影响/配置此内部策略. 基本策略是确保负载平衡,即将分区分配给分配的分区比其他代理 ..
发布时间:2021-11-12 02:41:21 其他开发

Kafka 流:从应用程序的每个实例中的所有分区读取

使用 KTable 时,当实例/消费者数量等于分区数量时,Kafka 流不允许实例从特定主题的多个分区中读取.我尝试使用 GlobalKTable 来实现这一点,这样做的问题是数据将被覆盖,并且无法对其应用聚合. 假设我有一个名为“data_in"的主题,有 3 个分区(P1、P2、P3).当我运行 Kafka 流应用程序的 3 个实例(I1、I2、I3)时,我希望每个实例都从“data_i ..
发布时间:2021-11-12 02:40:52 Java开发