Lavorare con dati semi-strutturati in Snowflake

Introduzione ai database NoSQL

Jake Roach

Data Engineer

Dati semi-strutturati in Snowflake

{
    "ISBN_13": "978-1685549596",
    "publisher": "Notion Press Media",
    "size": {
        "dimensions": "8.5 x 1.01 x 11 inches",
        "weight": "2.53 pounds"
    }
}
  • Consente di archiviare i dati in formato "grezzo"
  • Tipo VARIANT
  • Archivia ogni oggetto in una singola colonna
Introduzione ai database NoSQL

Tipi di dati semi-strutturati in Snowflake

Snowflake supporta anche i tipi OBJECT e ARRAY

  • OBJECT è simile ai dizionari in Python
  • ARRAY è simile alle liste in Python

$$

Tipo VARIANT

  • Archivia dati semi-strutturati in una singola colonna

Una tabella Snowflake con una colonna di tipo VARIANT.

Introduzione ai database NoSQL

Interrogare dati semi-strutturati con la notazione a parentesi

Una tabella Snowflake con una colonna di tipo VARIANT con due coppie chiave-valore evidenziate.

Query:

SELECT
    library['ISBN_13']
FROM books;

Risultato:

Un result set di una query su una tabella Snowflake.

Introduzione ai database NoSQL

Interrogare dati semi-strutturati con la notazione a punto

Una tabella Snowflake con una colonna di tipo VARIANT con quattro coppie chiave-valore evidenziate.

Query:

SELECT
    library:ISBN_13,
    library:publisher
FROM books;

Risultato:

Un result set di una query su una tabella Snowflake.

Introduzione ai database NoSQL

Interrogare dati semi-strutturati annidati

Una tabella Snowflake con una colonna di tipo VARIANT con sei coppie chiave-valore evidenziate, di cui quattro annidate.

SELECT
    library:ISBN_13,
    library:size.dimensions,
    library:size.weight,
FROM books;
SELECT
    library["ISBN_13"],
    library["size"]["dimensions"],
    library["size"]["weight"],
FROM books;

Un result set di una query su una tabella Snowflake.

Introduzione ai database NoSQL

Esercitiamoci!

Introduzione ai database NoSQL

Preparing Video For Download...