メインコンテンツまでスキップ

zstd_compress

指定された圧縮レベルで Zstandard を使用して expr の圧縮された値を返します。デフォルトのレベルは 3 です。デフォルトではシングルパス モードが使用されます。

構文

Python
from pyspark.databricks.sql import functions as dbf

dbf.zstd_compress(input=<input>, level=<level>, streaming_mode=<streaming_mode>)

パラメーター

パラメーター

Type

説明

input

pyspark.sql.Column または str

圧縮するバイナリ値。

level

pyspark.sql.Column またはint (オプション)

圧縮レベルを表すオプションの整数引数。圧縮レベルは、圧縮速度と圧縮率のトレードオフを制御します。有効な値: 1 から 22 まで。1 は最速だが圧縮率が最も低いことを意味し、22 は最も遅いが圧縮率が最も高いことを意味します。指定されていない場合、デフォルトのレベルは 3 です。

streaming_mode

pyspark.sql.Column またはbool (オプション)

ストリーミング モードを使用するかどうかを表すオプションのブール引数。 true の場合、関数はストリーミング モードで圧縮されます。デフォルト値は false です。

戻り値

pyspark.sql.Column: 圧縮された値を含む新しい列。

例1 : Zstandardを使用してデータを圧縮する

Python
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([("Apache Spark " * 10,)], ["input"])
df.select(dbf.base64(dbf.zstd_compress(df.input)).alias("result")).show(truncate=False)
Output
+----------------------------------------+
|result |
+----------------------------------------+
|KLUv/SCCpQAAaEFwYWNoZSBTcGFyayABABLS+QU=|
+----------------------------------------+

例2 : 指定された圧縮レベルでZstandardを使用してデータを圧縮する

Python
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([("Apache Spark " * 10,)], ["input"])
df.select(dbf.base64(dbf.zstd_compress(df.input, dbf.lit(5))).alias("result")).show(truncate=False)
Output
+----------------------------------------+
|result |
+----------------------------------------+
|KLUv/SCCpQAAaEFwYWNoZSBTcGFyayABABLS+QU=|
+----------------------------------------+

例3 : ストリーミングモードでZstandardを使用してデータを圧縮する

Python
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([("Apache Spark " * 10,)], ["input"])
df.select(dbf.base64(dbf.zstd_compress(df.input, dbf.lit(3), dbf.lit(True))).alias("result")).show(truncate=False)
Output
+--------------------------------------------+
|result |
+--------------------------------------------+
|KLUv/QBYpAAAaEFwYWNoZSBTcGFyayABABLS+QUBAAA=|
+--------------------------------------------+