Aller au contenu principal

zstd_compress

Renvoie une valeur compressée de l'expression expr à l'aide de Zstandard avec le niveau de compression spécifié. Le niveau default est 3. Utilise le mode passe unique par default.

Syntaxe

Python
from pyspark.sql import functions as dbf

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

parameter

parameter

Type

Description

input

pyspark.sql.Column OU str

La valeur binaire à compresser.

level

pyspark.sql.Column ou int, facultatif

Argument entier facultatif qui représente le niveau de compression. Le niveau de compression contrôle le compromis entre la vitesse de compression et le rapport de compression. Valeurs valides : entre 1 et 22 inclus, où 1 signifie le plus rapide mais le rapport de compression le plus faible, et 22 signifie le plus lent mais le rapport de compression le plus élevé. Le niveau default est 3 s'il n'est pas spécifié.

streaming_mode

pyspark.sql.Column ou bool, facultatif

Argument booléen facultatif qui indique si le mode streaming doit être utilisé. Si la valeur est vraie, la fonction compressera en mode streaming. La valeur par default est faux.

parameter

Type

Description

input

pyspark.sql.Column OU str

La valeur binaire à compresser.

level

pyspark.sql.Column ou int, facultatif

Argument entier facultatif qui représente le niveau de compression. Le niveau de compression contrôle le compromis entre la vitesse de compression et le rapport de compression. Valeurs valides : entre 1 et 22 inclus, où 1 signifie le plus rapide mais le rapport de compression le plus faible, et 22 signifie le plus lent mais le rapport de compression le plus élevé. Le niveau default est 3 s'il n'est pas spécifié.

streaming_mode

pyspark.sql.Column ou bool, facultatif

Argument booléen facultatif qui indique si le mode streaming doit être utilisé. Si la valeur est vraie, la fonction compressera en mode streaming. La valeur par default est faux.

Renvoie

pyspark.sql.Column: Une nouvelle colonne qui contient une valeur compressée.

Exemples

Exemple 1 : Compresser les données avec Zstandard

Python
from pyspark.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=|
+----------------------------------------+

Exemple 2 : Compressez les données à l'aide de Zstandard avec le niveau de compression donné

Python
from pyspark.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=|
+----------------------------------------+

**Exemple 3** : Compresser les données avec Zstandard en mode streaming

Python
from pyspark.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=|
+--------------------------------------------+