partition_keys

Penggunaan

view: view_name {
  derived_table: {
    partition_keys: [ "created_date" ]
    ...
  }
}
Hierarki
partition_keys

- atau -

partition_keys
Nilai Default
None

Menerima
Satu atau beberapa nama kolom yang dipartisi

Aturan Khusus
partition_keys hanya didukung di dialek tertentu

Definisi

Parameter partition_keys mendukung dialek database yang memiliki kemampuan untuk memartisi kolom. Saat kueri yang difilter pada kolom berpartisi dijalankan, database hanya akan memindai partisi yang menyertakan data yang difilter, bukan memindai seluruh tabel. Karena subbagian tabel yang lebih kecil dipindai, hal ini dapat secara signifikan mengurangi waktu dan biaya pembuatan kueri tabel besar jika partisi dan filter yang sesuai ditentukan.

Parameter partition_keys hanya berfungsi dengan tabel yang persisten, seperti PDT dan tabel gabungan. partition_keys tidak didukung untuk tabel turunan tanpa strategi persistensi.

Selain itu, parameter partition_keys tidak didukung untuk tabel turunan yang ditentukan menggunakan create_process atau sql_create.

Saat Anda membuat tabel turunan persisten (PDT) atau tabel gabungan, jika tabel database pokok Anda menggunakan partisi, Looker dapat menggunakan partisi tersebut.

Lihat bagian Dukungan dialek untuk partition_keys untuk mengetahui daftar dialek yang mendukung partition_keys.

Untuk menambahkan kolom berpartisi ke PDT atau tabel gabungan, gunakan partition_keys dan berikan nama kolom terkait yang dipartisi dalam tabel database.

Contoh

Buat customer_day_facts PDT di database BigQuery dengan kunci partisi di kolom date:

view: customer_order_facts {
  derived_table: {
    explore_source: order {
      column: customer_id { field: order.customer_id }
      column: date { field: order.order_time }
      derived_column: num_orders {
        sql: COUNT(order.customer_id) ;;
      }
    }
    partition_keys: [ "date" ]
    datagroup_trigger: daily_datagroup
  }
}

Buat tabel turunan berbasis SQL customer_day_facts di database Presto dengan kunci partisi pada kolom date dan state:

view: customer_day_facts {
  derived_table: {
    sql:
      SELECT
        customer_id,
        DATE(order_time) AS date,
        COUNT(*) AS num_orders
      FROM
        order
      GROUP BY
        customer_id ;;
    partition_keys: [ "date", "state" ]
    datagroup_trigger: daily_datagroup
  }
}

Dukungan dialek untuk partition_keys

Kemampuan untuk menggunakan partition_keys bergantung pada dialek database yang digunakan koneksi Looker Anda. Dalam rilis Looker terbaru, dialek berikut mendukung partition_keys:

Di BigQuery, partisi hanya dapat digunakan pada satu kolom tabel, yang harus berupa kolom tanggal/waktu — sehingga PDT Looker berdasarkan tabel BigQuery hanya dapat menggunakan partisi pada satu kolom tanggal/waktu.

Dialek Didukung?
Actian Avalanche
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Amazon Redshift 2.1+
Amazon Redshift Serverless 2.1+
Apache Druid
Apache Druid 0.13+
Apache Druid 0.18+
Apache Hive 2.3+
Apache Hive 3.1.2+
Apache Spark 3+
ClickHouse
Cloudera Impala 3.1+
Cloudera Impala 3.1+ with Native Driver
Cloudera Impala with Native Driver
DataVirtuality
Databricks
Denodo 7
Denodo 8 & 9
Dremio
Dremio 11+
Exasol
Google BigQuery Legacy SQL
Google BigQuery Standard SQL
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Greenplum
HyperSQL
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008+
Microsoft SQL Server 2012+
Microsoft SQL Server 2016
Microsoft SQL Server 2017+
MongoBI
MySQL
MySQL 8.0.12+
Oracle
Oracle ADWC
PostgreSQL 9.5+
PostgreSQL pre-9.5
PrestoDB
PrestoSQL
SAP HANA
SAP HANA 2+
SingleStore
SingleStore 7+
Snowflake
Teradata
Trino
Vector
Vertica