Delta Table создает дополнительный файл паркета? - PullRequest
0 голосов
/ 16 июня 2020

При добавлении / удалении в дельта-таблице создается ненужный фиктивный файл паркета.

data = [["Alyssa", "maroon", [8,8,8]]]
df = spark.createDataFrame(data, "name string, favorite_color string, favorite_numbers array<int>")
df.write.format("delta").mode("append").save("/users")

Ниже приведен файл журнала, созданный для добавления одной записи в дельта-таблицу:

{"commitInfo":{"timestamp":1592247860686,"operation":"WRITE","operationParameters":{"mode":"Append","partitionBy":"[]"},"readVersion":2,"isBlindAppend":true,"operationMetrics":{"numFiles":"2","numOutputBytes":"1611","numOutputRows":"1"}}}

{"add":{"path":"part-00000-5a63f209-d88f-4453-9e7b-c7b2318160c7-c000.snappy.parquet","partitionValues":{},"size":548,"modificationTime":1592247860655,"dataChange":true}}
{"add":{"path":"part-00007-494b0d4f-36f7-4c3c-a46f-058865d36113-c000.snappy.parquet","partitionValues":{},"size":1063,"modificationTime":1592247860680,"dataChange":true}}

Ненужный файл, part-00000-5a63f209-d88f-4453-9e7b-c7b2318160c7-c000.snappy.parquet:

spark.read.format("parquet")\
 .load("/users/part-00000-5a63f209-d88f-4453-9e7b-c7b2318160c7-c000.snappy.parquet").show()

+----+--------------+----------------+
|name|favorite_color|favorite_numbers|
+----+--------------+----------------+
+----+--------------+----------------+

Это какая-то дельта действий преднамеренно выполняет или это ошибка?

Я пробовал этот код в:

  • Scala версия 2.11.12
  • Версия Spark 2.4.5
  • Пакет Delta Jar "io.delta:delta-core_2.11:0.6.1 "
  • localhost, открытый исходный код Delta lake
...