代码之家  ›  专栏  ›  技术社区  ›  MaatDeamon

Spark 2.3.1结构化流输入速率

  •  0
  • MaatDeamon  · 技术社区  · 6 年前

    我想知道是否有办法在Spark结构化流中指定小批量的大小。这并不是只说明mini-batch interval(触发器),我想说明每个间隔在mini-batch(DataFrame)中可以有多少行。 有办法吗?

    除了一般的功能外,我特别需要在测试场景中应用它,在测试场景中我有一个内存流。我希望Spark从MemoryStream中使用一定数量的数据,而不是一次获取所有数据,以实际查看整个应用程序的行为。我的理解是,在启动MemoryStream数据结构之前,需要先填充它。因此,我如何才能看到小批量处理行为,spark是否能够在我给出的时间间隔内摄取MemoryStream的全部内容?

    编辑1

    在卡夫卡整合中,我发现了以下几点:

    maxOffsetsPerTrigger公司 每个触发间隔处理的最大偏移量的速率限制。指定的偏移总数将按比例分割为不同卷的主题分区。

    但这只是为了卡夫卡的融合。我也见过

    maxFilesPerTrigger程序 在每个触发器中要考虑的新文件的最大数目

    所以看起来事情是按源类型定义的。因此,有没有办法控制如何从MEMORYSTREAM[ROW]中消费数据?

    1 回复  |  直到 6 年前
        1
  •  0
  •   devesh    6 年前

    找以下能解决你问题的人:

     1.spark.streaming.backpressure.initialRate 
     2.spark.streaming.backpressure.enabled