postgres google_cloud_storage bucket s3 - ghdrako/doc_snipets GitHub Wiki

google_cloud_storage

  1. Uprawnienia iam do buckety dla sa sql-a
  2. CREATE EXTENSION IF NOT EXISTS google_cloud_storage;
  3. Export
SELECT gcs_export_table(
    'users',                            -- nazwa tabeli
    'gs://moj-bucket/backup/users.csv', -- ścieżka w GCS
    format => 'csv',                    -- format pliku
    delimiter => ',',                   -- separator
    header => true                      -- dodaj nagłówki kolumn
);

SELECT gcs_export_query(
    'SELECT name, email FROM users WHERE active = true',
    'gs://moj-bucket/reports/active_users.csv',
    format => 'csv'
);
  1. Automatyzacja
CREATE EXTENSION IF NOT EXISTS pg_cron;

SELECT cron.schedule('cotygodniowy-eksport-gcs', '0 0 * * 0', 
    $$ SELECT gcs_export_query(
        'SELECT * FROM twoja_tabela', 
        'gs://moj-bucket/eksport/dane_' || to_char(now(), 'YYYY_MM_DD') || '.csv', 
        format => 'csv'
    ) $$
);

pg_parquet

Copy to/from Parquet in S3, Azure Blob Storage, Google Cloud Storage, http(s) stores, local files or standard inout stream from within PostgreSQL