Sdílet prostřednictvím


Příkaz COPY ve službě Azure Cosmos DB for PostgreSQL

Příkaz COPY slouží k přesouvání dat mezi soubory a databázovými tabulkami. COPY je serverový příkaz, který vyžaduje přístup k disku, obvykle omezený na správce serveru. Azure Cosmos DB for PostgreSQL ale funguje jako řešení Typu platforma jako služba (PaaS), což znamená, že uživatelé nemají udělená oprávnění superuživatele. COPY příkaz není tedy plně podporován na platformě.

Alternativně je příkaz dostupný v psql a dalších klientských rozhraních, \COPY které usnadňují přímou interakci s místním systémem souborů počítače, ve kterém se spouští.

Podpora služby Azure Blob Storage

Rozšíření pg_azure_storage překoná omezení přístupu k diskům využitím služby Azure Blob Storage jako zdroje dat. Pokud je tato možnost povolená, rozšíření také vylepšuje integrovaný COPY příkaz s podporou služby Azure Blob Storage.

Načtěte data do github_users tabulky pomocí COPY příkazu:

COPY github_users
FROM 'https://pgquickstart.blob.core.windows.net/github/users.csv.gz';

V současné době přípona podporuje následující formáty souborů:

format description
csv Formát hodnot oddělených čárkami používaný nástrojem PostgreSQL COPY
tsv Hodnoty oddělené tabulátory, výchozí formát PostgreSQL COPY
binární Binární formát PostgreSQL COPY
text Soubor obsahující jednu textovou hodnotu (například velký JSON nebo XML)

Poznámka:

  • Podporovaná syntaxe a možnosti zůstávají stejně jako u příkazu Postgres Native COPY s následujícími výjimkami:

    • FREEZE [ boolean ]
    • HEADER MATCH
  • COPY TO syntaxe se zatím nepodporuje.

  • \COPY je příkaz založený na službě psql Azure Blob Storage, který nepodporuje integraci služby Azure Blob Storage.

  • \COPY umožňuje provádět import a export v clusteru, ale vyžaduje přesunutí\kopírování souborů v síti.

Další kroky

Přečtěte si další informace o využití rozšíření pg_azure_storage.