Pular para o conteúdo principal

zstd_compress

Retorna um valor comprimido de expr usando Zstandard com o nível de compressão especificado. O nível default é 3. Usa o modo de passagem única por default.

Sintaxe

Python
from pyspark.databricks.sql import functions as dbf

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

Parâmetros

Parâmetro

Tipo

Descrição

input

pyspark.sql.Column ou str

O valor binário a ser comprimido.

level

pyspark.sql.Column ou int, opcional

Argumento inteiro opcional que representa o nível de compressão. O nível de compressão controla o equilíbrio entre a velocidade de compressão e a taxa de compressão. Valores válidos: entre 1 e 22, inclusive, onde 1 significa a compressão mais rápida, porém com a menor taxa de compressão, e 22 significa a compressão mais lenta, porém com a maior taxa de compressão. O nível default é 3, caso não seja especificado.

streaming_mode

pyspark.sql.Column ou bool, opcional

Argumento booleano opcional que representa se o modo de transmissão deve ser usado. Se verdadeiro, a função irá comprimir no modo de transmissão. O valor default é falso.

Devoluções

pyspark.sql.ColumnUma nova coluna que contém um valor compactado.

Exemplos

Exemplo 1 : Compactar uso de dados 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=|
+----------------------------------------+

Exemplo 2 : Comprimir uso de dados Zstandard com o nível de compressão fornecido

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=|
+----------------------------------------+

Exemplo 3 : Comprimir uso de dados Zstandard em modo de transmissão

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=|
+--------------------------------------------+