Sortby

各バケットの出力を、ファイル システム上の指定された列で並べ替えます。

構文

sortBy(col, *cols)

パラメーター

パラメーター タイプ 説明
col str、tuple、または list 列名、または名前の一覧。
*cols str、省略可能 追加の列名。 colがリストの場合は空にする必要があります。

返品

DataFrameWriter

例示

並べ替えられたバケットテーブルに DataFrame を書き込み、読み戻します。

spark.sql("DROP TABLE IF EXISTS sorted_bucketed_table")
spark.createDataFrame([
    (100, "Alice"), (120, "Alice"), (140, "Bob")],
    schema=["age", "name"]
).write.bucketBy(1, "name").sortBy("age").mode(
    "overwrite").saveAsTable("sorted_bucketed_table")

spark.read.table("sorted_bucketed_table").sort("age").show()
# +---+------------+
# |age|        name|
# +---+------------+
# |100|Alice|
# |120|Alice|
# |140| Bob|
# +---+------------+

spark.sql("DROP TABLE sorted_bucketed_table")