Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengekspor data dari klaster DB Aurora PostgreSQL ke Amazon S3
Anda dapat mengueri data dari klaster DB Aurora PostgreSQL dan mengekspornya langsung ke file yang disimpan dalam bucket Amazon S3. Untuk melakukannya, instal ekstensi Aurora PostgreSQL aws_s3
terlebih dahulu. Ekstensi ini memberi Anda fungsi yang Anda gunakan untuk mengekspor hasil kueri ke Amazon S3. Berikut ini, Anda dapat mengetahui cara menginstal ekstensi dan cara mengekspor data ke Amazon S3.
Anda dapat mengekspor dari yang disediakan atau Aurora Serverless v2 contoh DB. Langkah-langkah ini tidak didukung untuk Aurora Serverless v1.
catatan
Ekspor lintas akun ke Amazon S3 tidak didukung.
Semua versi Aurora PostgreSQL yang tersedia saat ini mendukung ekspor data ke Amazon Simple Storage Service. Untuk informasi versi terperinci, lihat Pembaruan Amazon Aurora PostgreSQL dalam Catatan Rilis untuk Aurora PostgreSQL.
Jika Anda belum menyiapkan bucket untuk ekspor, lihat topik berikut, Panduan Pengguna Amazon Simple Storage Service.
Secara default, data yang diekspor dari Aurora PostgreSQL ke Amazon S3 menggunakan enkripsi sisi server dengan. Kunci yang dikelola AWS Anda dapat menggunakan kunci terkelola pelanggan yang telah Anda buat. Jika Anda menggunakan enkripsi bucket, bucket Amazon S3 harus dienkripsi dengan AWS Key Management Service (AWS KMS) key (SSE-KMS). Saat ini, bucket yang dienkripsi dengan kunci terkelola Amazon S3 (SSE-S3) tidak didukung.
catatan
Anda dapat menyimpan data snapshot cluster DB dan DB ke Amazon S3 menggunakan AWS Management Console AWS CLI,, atau Amazon RDS API. Untuk informasi selengkapnya, lihat Mengekspor data snapshot klaster DB ke Amazon S3.
Topik
Menginstal ekstensi aws_s3
Sebelum Anda dapat menggunakan Amazon Simple Storage Service dengan klaster DB Aurora PostgreSQL, Anda perlu menginstal ekstensi aws_s3
. Ekstensi ini memberikan fungsi untuk mengekspor data dari instans penulis klaster DB Aurora PostgreSQL ke bucket Amazon S3. Ini juga menyediakan fungsi untuk mengimpor data dari Amazon S3. Untuk informasi selengkapnya, lihat Mengimpor data dari Amazon S3 ke klaster DB Aurora PostgreSQL. Ekstensi aws_s3
bergantung pada beberapa fungsi pembantu dalam ekstensi aws_commons
, yang diinstal secara otomatis bila diperlukan.
Untuk menginstal ekstensi aws_s3
Gunakan psql (atau pgAdmin) untuk terhubung ke instans penulis klaster DB Aurora PostgreSQL sebagai pengguna yang memiliki hak istimewa
rds_superuser
. Jika Anda menyimpan nama default selama proses penyiapan, Anda terhubung sebagaipostgres
.psql --host=
111122223333
.aws-region
.rds.amazonaws.com --port=5432 --username=postgres --passwordUntuk menginstal ekstensi, jalankan perintah berikut.
postgres=>
CREATE EXTENSION aws_s3 CASCADE;NOTICE: installing required extension "aws_commons" CREATE EXTENSION
Untuk memverifikasi bahwa ekstensi sudah diinstal, Anda dapat menggunakan metacommand psql
\dx
.postgres=>
\dxList of installed extensions Name | Version | Schema | Description -------------+---------+------------+--------------------------------------------- aws_commons | 1.2 | public | Common data types across AWS services aws_s3 | 1.1 | public | AWS S3 extension for importing data from S3 plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language (3 rows)
Fungsi untuk mengimpor data dari Amazon S3 dan mengekspor data ke Amazon S3 kini dapat digunakan.
Verifikasi bahwa versi Aurora PostgreSQL Anda mendukung ekspor ke Amazon S3
Anda dapat memverifikasi bahwa versi RDS for PostgreSQL Anda mendukung ekspor ke Amazon S3 dengan menggunakan perintah describe-db-engine-versions
. Contoh berikut memeriksa untuk melihat apakah versi 10.14 dapat mengekspor ke Amazon S3.
aws rds describe-db-engine-versions --region us-east-1 \ --engine aurora-postgresql --engine-version 10.14 | grep s3Export
Jika output-nya menyertakan string "s3Export"
, berarti mesinnya mendukung ekspor Amazon S3. Jika tidak, mesin tidak mendukungnya.
Ikhtisar ekspor data ke Amazon S3
Untuk mengekspor data yang disimpan dalam basis data Aurora PostgreSQL ke bucket Amazon S3, gunakan prosedur berikut.
Untuk mengekspor data Aurora PostgreSQL ke S3
-
Identifikasi jalur file Amazon S3 yang akan digunakan untuk mengekspor data. Untuk detail tentang proses ini, lihat Menentukan jalur file Amazon S3 tujuan ekspor.
-
Berikan izin untuk mengakses bucket Amazon S3.
Untuk mengekspor data ke file Amazon S3, beri klaster DB Aurora PostgreSQL izin untuk mengakses bucket Amazon S3 yang akan digunakan untuk penyimpanan data yang diekspor. Berikut adalah langkah-langkahnya:
-
Buat kebijakan IAM yang memberikan akses ke bucket Amazon S3 tempat tujuan ekspor.
-
Buat peran IAM.
-
Lampirkan kebijakan yang Anda buat ke peran yang Anda buat.
-
Tambahkan peran IAM ini ke klaster DB .
Untuk detail tentang proses ini, lihat Menyiapkan akses ke bucket Amazon S3.
-
-
Identifikasi kueri basis data untuk mendapatkan data. Ekspor data kueri dengan memanggil fungsi
aws_s3.query_export_to_s3
.Setelah menyelesaikan tugas persiapan sebelumnya, gunakan fungsi aws_s3.query_export_to_s3 untuk mengekspor hasil kueri ke Amazon S3. Untuk detail tentang proses ini, lihat Mengekspor data kueri menggunakan fungsi aws_s3.query_export_to_s3.
Menentukan jalur file Amazon S3 tujuan ekspor
Tentukan informasi berikut untuk mengidentifikasi lokasi di Amazon S3 tempat Anda ingin mengekspor data:
-
Nama bucket – Bucket adalah kontainer untuk objek atau file Amazon S3.
Untuk informasi selengkapnya tentang menyimpan data dengan Amazon S3, lihat Membuat bucket dan Bekerja dengan objek di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
-
Jalur file – Jalur file mengidentifikasi tempat penyimpanan data yang diekspor dalam bucket Amazon S3. Jalur file terdiri atas:
-
Awalan jalur opsional yang mengidentifikasi jalur folder virtual.
-
Awalan file yang mengidentifikasi satu atau beberapa file yang akan disimpan. Ekspor yang lebih besar disimpan dalam beberapa file, masing-masing berukuran maksimum sekitar 6 GB. Nama file tambahan memiliki awalan file yang sama, tetapi dengan penambahan
_part
.XX
mewakili 2, lalu 3, dan seterusnya.XX
Misalnya, jalur file dengan folder
exports
dan awalan filequery-1-export
adalah/exports/query-1-export
. -
-
AWS Wilayah (opsional) - AWS Wilayah tempat bucket Amazon S3 berada.
catatan
Saat ini, AWS Wilayah harus sama dengan wilayah DB cluster DB yang mengekspor.
Untuk daftar nama AWS Wilayah dan nilai terkait, lihatWilayah dan Zona Ketersediaan.
Untuk menyimpan informasi file Amazon S3 tentang lokasi penyimpanan file yang diekspor, Anda dapat menggunakan fungsi aws_commons.create_s3_uri untuk membuat struktur komposit aws_commons._s3_uri_1
sebagai berikut.
psql=> SELECT aws_commons.create_s3_uri( '
amzn-s3-demo-bucket
', 'sample-filepath', 'us-west-2' ) AS s3_uri_1 \gset
Kemudian, berikan nilai s3_uri_1
ini sebagai parameter untuk memanggil fungsi aws_s3.query_export_to_s3. Sebagai contoh, lihat Mengekspor data kueri menggunakan fungsi aws_s3.query_export_to_s3.