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 
        }
]
Copy

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>] [, ... ] )
Copy

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);
Copy

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;
Copy

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.