У меня есть большой и сложный запрос с использованием нового механизма потоковой передачи Polars на каждом узле физического плана:
import polars as pl
def big_complex_query(
data: pl.LazyFrame,
) -> pl.LazyFrame:
data = data.with_columns(pl.col("var") * 2)
return data
df = pl.LazyFrame({"var": [1, 2, 3, 4, 5, 6]})
df_processed = big_complex_query(df)
df_processed.sink_parquet("df_processed.parquet")
И я хочу иметь доступ к «метаданным» сгенерированного LazyFrame. Например: df_processed.select(pl.col("var").sum()).collect(engine="streaming").item().
Как лучше всего получить эти «метаданные»? Стоит ли мне это делать:
df_processed.select(pl.col("var").sum()).sink_parquet("df_processed_var_sum.parquet")
df_processed.sink_parquet("df_processed.parquet")
# Accessing the "metadata"
pl.read_parquet("df_processed_var_sum.parquet")
или:
df_processed_var_sum: int = df_processed.select(pl.col("var").sum()).collect(engine="streaming").item()
df_processed.sink_parquet("df_processed.parquet")
Подробнее здесь: https://stackoverflow.com/questions/799 ... y-metatata