Questa pagina descrive come eseguire query sui dati in formato colonna.
Eseguire query sui dati a colonne
Il suggerimento per la query @{scan_method=columnar}
consente a una query di leggere i dati in formato colonnare.
Puoi impostare il suggerimento scan_method
a livello di
istruzione
o a livello di tabella.
Ad esempio, puoi utilizzare le seguenti query per leggere i dati delle colonne dalle tabelle Singers
e Messages
:
@{scan_method=columnar} SELECT COUNT(*) FROM Singers;
SELECT COUNT(*) FROM Singers @{scan_method=columnar};
@{scan_method=columnar} SELECT m.MsgBlob FROM Messages WHERE m.id='1234';
Esegui query sui dati colonnari di Spanner utilizzando le query federate di BigQuery
Per leggere i dati colonnari di Spanner da BigQuery, puoi
creare un set di dati esterno
o utilizzare la funzione
EXTERNAL_QUERY
.
Quando esegui query su set di dati esterni, i dati colonnari vengono utilizzati automaticamente se sono disponibili e adatti alla tua query.
Se utilizzi la funzione EXTERNAL_QUERY
, includi il suggerimento @{scan_method=columnar}
nella query Spanner nidificata.
Nel seguente esempio:
- Il primo argomento di
EXTERNAL_QUERY
specifica la connessione esterna e il set di dati,my-project.us.albums
. - Il secondo argomento è una query SQL che seleziona
MarketingBudget
dalla tabellaAlbumInfo
in cuiMarketingBudget
è inferiore a 500.000. - Il suggerimento
@{scan_method=columnar}
ottimizza la query esterna per la scansione colonnare. - L'istruzione
SELECT
esterna calcola la somma dei valoriMarketingBudget
restituiti dalla query esterna. - La clausola
AS total_marketing_spend
assegna un alias alla somma calcolata.
SELECT SUM(MarketingBudget) AS total_marketing_spend
FROM
EXTERNAL_QUERY(
'my-project.us.albums',
'@{scan_method=columnar} SELECT AlbumInfo.MarketingBudget FROM AlbumInfo WHERE AlbumInfo.MarketingBudget < 500000;');
Passaggi successivi
- Scopri di più sul motore colonnare.
- Scopri come attivare il motore colonnare.
- Scopri come monitorare il motore colonnare.