Usage
view: my_view {
derived_table: {
distribution_style: all
...
}
}
|
היררכיה
distribution_style- או - distribution_style |
ערך ברירת המחדל
ללא
אישור
סגנון הפצה (all או even)
כללים מיוחדים
התמיכה ב-distribution_style מוגבלת לדיאלקטים ספציפיים
|
הגדרה
distribution_style מאפשרת לציין איך השאילתה של טבלה נגזרת מתמידה (PDT) או של טבלה מסכמת מפוזרת בין הצמתים במסד נתונים.
כאן אפשר לעיין ברשימת הניבים שנתמכים ב-
distribution_style.distribution_style
הפרמטר
distribution_styleפועל רק עם טבלאות שהן קבועות, כמו PDT וטבלאות מצטברות. אין תמיכה ב-distribution_styleעבור טבלאות נגזרות ללא אסטרטגיית שמירה.
בנוסף, הפרמטר
distribution_styleלא נתמך בטבלאות נגזרות שמוגדרות באמצעותcreate_processאוsql_create.לסיום, אסור להשתמש ב-
distribution_styleוב-distributionבו-זמנית. אם רוצים להפיץ את השורות של טבלה לצמתים שונים של Redshift על סמך ערך של עמודה, משתמשים בפונקציהdistribution. אחרת, משתמשים באפשרותdistribution_styleכדי לבחור שיטת הפצה אחרת.
ב-Redshift יש ארבעה סוגי הפצה, שמתוארים במסמכי Amazon Redshift בנושא סוגי הפצה:
- הפצה של ALL: כל השורות מועתקות באופן מלא לכל צומת. כדי ליצור התפלגות כזו ב-Looker, אפשר להשתמש ב-
distribution_style: all. - חלוקה שווה (EVEN): השורות מחולקות לצמתים שונים בשיטת 'רובין'. כדי ליצור התפלגות כזו ב-Looker, אפשר להשתמש ב-
distribution_style: even. - חלוקת מפתח: השורות מחולקות לצמתים שונים על סמך ערכים ייחודיים בעמודה מסוימת. כדי לבצע הפצה כזו ב-Looker, משתמשים בפרמטר
distribution. - חלוקה אוטומטית: מערכת Redshift מקצה סגנון חלוקה אופטימלי על סמך גודל נתוני הטבלה. Looker לא תומך בסוג ההפצה הזה.
במסמכי Amazon Redshift בנושא סגנונות הפצה אפשר לקרוא על בחירת אסטרטגיית ההפצה המתאימה. אם לא מציינים distribution_style ולא משתמשים בפרמטר distribution, Looker יגדיר כברירת מחדל את all.
דוגמאות
צור טבלה נגזרת customer_order_facts עם סגנון חלוקה של all:
view: customer_order_facts {
derived_table: {
sql:
SELECT
customer_id,
COUNT(*) AS lifetime_orders
FROM
order
GROUP BY 1 ;;
persist_for: "24 hours"
distribution_style: all
}
}
תמיכה בניבים של distribution_style
היכולת להשתמש ב-distribution_style תלויה בדיאלקט של מסד הנתונים שבו משתמש החיבור שלכם ל-Looker. בגרסה האחרונה של Looker, הניבים הבאים תומכים ב-distribution_style:
| דיאלקט | האם יש תמיכה? |
|---|---|
| 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 AlloyDB for PostgreSQL | |
| 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 |