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
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 |
|---|---|---|
|
| O valor binário a ser comprimido. |
|
| 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. |
|
| 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
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)
+----------------------------------------+
|result |
+----------------------------------------+
|KLUv/SCCpQAAaEFwYWNoZSBTcGFyayABABLS+QU=|
+----------------------------------------+
Exemplo 2 : Comprimir uso de dados Zstandard com o nível de compressão fornecido
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)
+----------------------------------------+
|result |
+----------------------------------------+
|KLUv/SCCpQAAaEFwYWNoZSBTcGFyayABABLS+QU=|
+----------------------------------------+
Exemplo 3 : Comprimir uso de dados Zstandard em modo de transmissão
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)
+--------------------------------------------+
|result |
+--------------------------------------------+
|KLUv/QBYpAAAaEFwYWNoZSBTcGFyayABABLS+QUBAAA=|
+--------------------------------------------+