Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Agrupa la salida de las columnas especificadas. Los registros con valores similares en las columnas de agrupación en clústeres se agrupan en el mismo archivo. La agrupación en clústeres mejora la eficacia de las consultas al permitir que las consultas con predicados en las columnas de agrupación en clústeres omitan datos innecesarios. A diferencia de la creación de particiones, la agrupación en clústeres se puede usar en columnas de cardinalidad alta.
Sintaxis
clusterBy(*cols)
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
*cols |
str o list | Nombres de las columnas por las que se va a agrupar. |
Devoluciones
DataStreamWriter
Ejemplos
df = spark.readStream.format("rate").load()
df.writeStream.clusterBy("value")
# <...streaming.readwriter.DataStreamWriter object ...>
Agrupación de un flujo de origen de velocidad por marca de tiempo y escritura en Parquet:
import tempfile
import time
with tempfile.TemporaryDirectory(prefix="clusterBy1") as d:
with tempfile.TemporaryDirectory(prefix="clusterBy2") as cp:
df = spark.readStream.format("rate").option("rowsPerSecond", 10).load()
q = df.writeStream.clusterBy(
"timestamp").format("parquet").option("checkpointLocation", cp).start(d)
time.sleep(5)
q.stop()
spark.read.schema(df.schema).parquet(d).show()