SnowConvert AI – Greenplum – CREATE MATERIALIZED VIEW¶
Übersetzung von Greenplum in Snowflake
Beschreibung¶
In diesem Abschnitt werden Features erläutert, die ausschließlich von Greenplum bereitgestellt werden.
Weitere Informationen dazu finden Sie in der Dokumentation zu CREATE MATERIALIZE VIEW.
Grammatikalische Syntax¶
CREATE MATERIALIZED VIEW <table_name>
AS <query>
[
DISTRIBUTED {
BY <column> [<opclass>], [ ... ] | RANDOMLY | REPLICATED
}
]
DISTRIBUTED-BY¶
Hinweis
Diese Syntax wird in ihre gleichwertige Form in Snowflake übersetzt:
Die DISTRIBUTED BY-Klausel in Snowflake steuert, wie die Daten physisch über die Segmente des Systems verteilt werden. Währenddessen ist CLUSTER BY eine Teilmenge von Spalten oder Ausdrücken in einer dynamischen Tabelle, die explizit dazu bestimmt sind, Daten in denselben Mikropartitionen der Tabelle zusammenzulegen. Sie arbeiten zwar auf verschiedenen architektonischen Ebenen, zielen aber darauf ab, die Abfrageleistung durch eine effiziente Datenverteilung zu verbessern.#x20;
Grammatikalische Syntax¶
DISTRIBUTED BY ( <column> [<opclass>] [, ... ] )
Beispielquelle¶
Eingabecode:
Greenplum¶
CREATE MATERIALIZED VIEW product_summary AS
SELECT
category,
COUNT(*) AS total_products,
MAX(price) AS max_price
FROM products
GROUP BY category
DISTRIBUTED BY (category);
Ausgabecode:
Snowflake¶
CREATE OR REPLACE DYNAMIC TABLE product_summary
--** SSC-FDM-0031 - DYNAMIC TABLE REQUIRED PARAMETERS SET BY DEFAULT **
TARGET_LAG='1 day'
WAREHOUSE=UPDATE_DUMMY_WAREHOUSE
--** SSC-FDM-GP0001 - THE PERFORMANCE OF THE CLUSTER BY MAY VARY COMPARED TO THE PERFORMANCE OF DISTRIBUTED BY **
CLUSTER BY (category)
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "greenplum", "convertedOn": "04/24/2025", "domain": "test" }}'
AS
SELECT
category,
COUNT(*) AS total_products,
MAX(price) AS max_price
FROM
products
GROUP BY category;
DISTRIBUTED RANDOMLY - REPLICATED¶
Bemerkung
Diese Syntax wird in Snowflake nicht benötigt.
Die DISTRIBUTED REPLICATED- oder DISTRIBUTED RANDOMLY-Klausel in Snowflake steuert, wie die Daten physisch über die Segmente des Systems verteilt werden. Da Snowflake die Datenspeicherung automatisch handhabt, werden diese Optionen bei der Migration entfernt.