共用方式為


try_zstd_decompress

使用 Zstandard 回傳解壓後的 expr 值。 支援單次通過及串流模式的壓縮資料。 解壓失敗時,會回傳 NULL。

語法

from pyspark.databricks.sql import functions as dbf

dbf.try_zstd_decompress(input=<input>)

參數

參數 類型 Description
input pyspark.sql.Columnstr 二元值是解壓。

退貨

pyspark.sql.Column:一個包含未壓縮值的新欄位。

範例

範例 1:使用 Zstandard 進行資料解壓

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([("KLUv/SCCpQAAaEFwYWNoZSBTcGFyayABABLS+QU=",)], ["input"])
df.select(dbf.try_zstd_decompress(dbf.unbase64(df.input)).cast("string").alias("result")).show(truncate=False)
+----------------------------------------------------------------------------------------------------------------------------------+
|result                                                                                                                            |
+----------------------------------------------------------------------------------------------------------------------------------+
|Apache Spark Apache Spark Apache Spark Apache Spark Apache Spark Apache Spark Apache Spark Apache Spark Apache Spark Apache Spark |
+----------------------------------------------------------------------------------------------------------------------------------+

範例 2:解壓無效輸入

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([("invalid input",)], ["input"])
df.select(dbf.try_zstd_decompress(dbf.unbase64(df.input)).cast("string").alias("result")).show(truncate=False)
+------+
|result|
+------+
|NULL  |
+------+