Чтение данных с использованием структурированной потоковой передачи в Pyspark и запись данных размером 100 МБ - PullRequest
0 голосов
/ 13 июля 2020

надеюсь, вы все в порядке. Я читаю файлы из каталога с помощью структурированной потоковой передачи.

schema = StructType([
    StructField("RowNo", StringType()),
    StructField("InvoiceNo", StringType()),
    StructField("StockCode", StringType()),
    StructField("Description", StringType()),
    StructField("Quantity", StringType()),
    StructField("InvoiceDate", StringType()),
    StructField("UnitPrice", StringType()),
    StructField("CustomerId", StringType()),
    StructField("Country", StringType()),
    StructField("InvoiceTimestamp", StringType())
])

data = spark.readStream.format("orc").schema(schema).option("header", "true").option("path", "<path_here>").load()

После применения некоторых преобразований мне нравится сохранять выходные файлы размером 100 МБ.

1 Ответ

0 голосов
/ 13 июля 2020

Вы должны изменить размер блока HDFS по умолчанию.

block_size = str(1024 * 1024 * 100)

sc._jsc.hadoopConfiguration().set("dfs.block.size", block_size)

Ссылка: Как изменить размер блока hdfs в pyspark?

...