Polecenie COPY w usłudze Azure Cosmos DB for PostgreSQL
Polecenie COPY służy do przenoszenia danych między plikami i tabelami bazy danych. COPY
to polecenie oparte na serwerze, które wymaga dostępu do dysku, zwykle ograniczone do administratorów serwera. Jednak usługa Azure Cosmos DB for PostgreSQL działa jako rozwiązanie Typu platforma jako usługa (PaaS), co oznacza, że użytkownicy nie otrzymują uprawnień administratora. COPY
polecenie nie jest zatem w pełni obsługiwane na platformie.
Alternatywnie jest \COPY
to polecenie dostępne w psql
i innych interfejsach klienta, które ułatwia bezpośrednią interakcję z lokalnym systemem plików maszyny, na której jest wykonywany.
Obsługa usługi Azure Blob Storage
Rozszerzenie pg_azure_storage
pozwala wyeliminować ograniczenie dostępu do dysku, wykorzystując usługę Azure Blob Storage jako źródło danych. Po włączeniu rozszerzenie rozszerza również wbudowane COPY
polecenie dzięki obsłudze usługi Azure Blob Storage.
Załaduj dane do github_users
tabeli przy użyciu COPY
polecenia :
COPY github_users
FROM 'https://pgquickstart.blob.core.windows.net/github/users.csv.gz';
Obecnie rozszerzenie obsługuje następujące formaty plików:
format | opis |
---|---|
CSV | Format wartości rozdzielanych przecinkami używany przez kopię bazy danych PostgreSQL |
tsv | Wartości rozdzielane tabulatorami, domyślny format KOPIOWANIa postgreSQL |
dane binarne | Format kopiowania danych binarnych PostgreSQL |
text | Plik zawierający pojedynczą wartość tekstową (na przykład duży kod JSON lub XML) |
Uwaga
Składnia i obsługiwane opcje pozostają podobnie do polecenia Postgres Native COPY z następującymi wyjątkami:
FREEZE [ boolean ]
HEADER MATCH
COPY TO
składnia nie jest jeszcze obsługiwana.\COPY
jest opartympsql
na poleceniu i nie obsługuje integracji usługi Azure Blob Storage.\COPY
program zezwala na wykonywanie importu\eksportu w klastrze, ale wymaga przenoszenia\kopiowania plików w sieci.
Następne kroki
Dowiedz się więcej na temat użycia rozszerzenia pg_azure_storage.