Spec-Zone.ru › Polars

polars.LazyFrame.show_graph

LazyFrame.show_graph(
    *,
    optimized: bool = True,
    show: bool = True,
    output_path: str | Path | None = None,
    raw_output: bool = False,
    figsize: tuple[float,
    float] = (16.0,
    12.0,
), type_coercion: bool = True, _type_check: bool = True, predicate_pushdown: bool = True, projection_pushdown: bool = True, simplify_expression: bool = True, slice_pushdown: bool = True, comm_subplan_elim: bool = True, comm_subexpr_elim: bool = True, cluster_with_columns: bool = True, collapse_joins: bool = True, engine: EngineType = 'auto', plan_stage: PlanStage | None = None, _check_order: bool = True, optimizations: QueryOptFlags = (), ) → str | None

Показать граф плана запроса.

Обратите внимание, что для отображения визуализации необходимо установить Graphviz (если он ещё не установлен, его можно скачать здесь: https://graphviz.org/download).

Параметры:
optimized

Оптимизировать план запроса.

show

Показать изображение.

output_path

Сохранить изображение на диск.

raw_output

Вернуть синтаксис dot. Этот параметр нельзя использовать вместе с show и/или output_path.

figsize

Передаётся в matplotlib, если show == True.

type_coercion

Выполнить оптимизацию приведения типов.

Устарело с версии 1.30.0: Используйте параметры optimizations.

predicate_pushdown

Выполнить оптимизацию проталкивания предикатов.

Устарело с версии 1.30.0: Используйте параметры optimizations.

projection_pushdown

Выполнить оптимизацию проталкивания проекций.

Устарело с версии 1.30.0: Используйте параметры optimizations.

simplify_expression

Выполнить оптимизацию упрощения выражений.

Устарело с версии 1.30.0: Используйте параметры optimizations.

slice_pushdown

Оптимизация проталкивания срезов.

Устарело с версии 1.30.0: Используйте параметры optimizations.

comm_subplan_elim

Будет предпринята попытка кэшировать разветвлённые подзапросы, возникающие при самосоединениях или объединениях.

Устарело с версии 1.30.0: Используйте параметры optimizations.

comm_subexpr_elim

Общие подвыражения будут кэшироваться и использоваться повторно.

Устарело с версии 1.30.0: Используйте параметры optimizations.

cluster_with_columns

Объединять последовательные независимые вызовы with_columns.

Устарело с версии 1.30.0: Используйте параметры optimizations.

collapse_joins

Объединить соединение и фильтры в более быстрое соединение.

Устарело с версии 1.30.0: Используйте параметры optimizations.

engine

Выбрать движок для обработки запроса (по умолчанию "auto"). Также можно передать экземпляр Engine. Поддерживаются следующие имена движков:

  • "auto": использовать движок, заданный с помощью Config.set_engine_affinity или переменной окружения POLARS_ENGINE_AFFINITY; если она не задана, использовать "in-memory" (значение по умолчанию может измениться в будущем выпуске).
  • "in-memory": использовать движок для обработки данных в памяти; это движок по умолчанию.
  • "streaming": использовать потоковый движок, который обрабатывает запросы пакетами, снижая нагрузку на память и зачастую превосходя по производительности движок для обработки данных в памяти. Вскоре он станет движком Polars по умолчанию.
  • "gpu": использовать движок CUDA для GPU (требуется GPU Nvidia и cudf-polars). Для более точной настройки (например, выбора устройства в системах с несколькими GPU) передайте объект GPUEngine.

Если выбранный движок не может выполнить запрос, Polars переключается на движок для обработки данных в памяти.

Примечание

Режим GPU считается нестабильным. Не все запросы будут успешно выполняться на GPU, однако, если выполнение не поддерживается, они должны автоматически переключаться на движок по умолчанию.

Запуск с POLARS_VERBOSE=1 позволит узнать, если запрос переключится на другой движок (и почему).

plan_stage{‘ir’, ‘physical’}

Выбрать этап для отображения. В настоящее время отдельный физический этап есть только у потокового движка; для остальных движков IR и физический этап совпадают.

optimizations

Набор оптимизаций, учитываемых при оптимизации запроса.

Примеры

>>> lf = pl.LazyFrame(
...     {
...         "a": ["a", "b", "a", "b", "b", "c"],
...         "b": [1, 2, 3, 4, 5, 6],
...         "c": [6, 5, 4, 3, 2, 1],
...     }
... )
>>> lf.group_by("a", maintain_order=True).agg(pl.all().sum()).sort(
...     "a"
... ).show_graph(plan_stage="ir")  

© 2020 Ritchie Vink
© 2022 Polars contributors
Licensed under the MIT License.
https://docs.pola.rs/api/python/stable/reference/lazyframe/api/polars.LazyFrame.show_graph.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API