39.8. Получение статистики аналитической таблицы за определённый временной интервал #

  1. Получите Parquet-файлы, добавленные в аналитическую таблицу за определённый временной интервал, на сервере с каталогом метаданных:

      SELECT array_agg(t1.path)
      FROM axe_catalog.pga_data_file t1, axe_catalog.pga_table t2, axe_catalog.pga_snapshot t3
      WHERE t1.end_snapshot IS NULL AND t1.table_id = t2.table_id AND t2.end_snapshot IS NULL AND
      t2.table_name = 'имя_таблицы' AND t1.begin_snapshot = t3.snapshot_id AND t3.is_visible = true AND
      t3.snapshot_time > timestamptz 'начальная_дата_и_время' AND t3.snapshot_time <
      timestamptz 'конечная_дата_и_время';

    Где:

    • имя_таблицы: имя аналитической таблицы из таблицы метаданных pga_table.

    • начальная_дата_и_время и конечная_дата_и_время: начальная и конечная дата и время для получения Parquet-файлов.

  2. Создайте представление для полученных Parquet-файлов на сервере с СУБД Postgres Pro:

    CREATE VIEW имя_представления AS
    SELECT * FROM read_parquet('путь_к_файлу_1')
    UNION ALL SELECT * FROM read_parquet('путь_к_файлу_2')
    UNION ALL SELECT * FROM read_parquet('путь_к_файлу_N');

    Где:

    • имя_представления — это имя создаваемого представления.

    • путь_к_файлу_1, путь_к_файлу_2 и путь_к_файлу_N: пути к полученным Parquet-файлам.

    Пример 39.1.

    К созданному представлению можно выполнять запросы, чтобы получать статистику аналитической таблицы:

      SELECT COUNT(*) FROM view_example;