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:
- הפצה לכל: כל השורות מועתקות באופן מלא לכל צומת. אפשר להשיג את סוג ההפצה הזה ב-Looker באמצעות
distribution_style: all. - חלוקה שווה: השורות מחולקות בין הצמתים השונים בשיטת רובין. אפשר להשיג את סוג ההפצה הזה ב-Looker באמצעות
distribution_style: even. - חלוקת מפתח: השורות מחולקות לצמתים שונים על סמך ערכים ייחודיים בעמודה מסוימת. כדי לבצע הפצה כזו ב-Looker, אפשר להשתמש בפרמטר
distribution. - AUTO 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.x - 0.17.x | |
| 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 | |
| MongoSQL | |
| 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 |