Cuplikan dan cadangan Amazon Redshift - Amazon Redshift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Cuplikan dan cadangan Amazon Redshift

Snapshot adalah point-in-time backup dari sebuah cluster. Ada dua jenis snapshot: otomatis dan manual. Amazon Redshift menyimpan snapshot ini secara internal di Amazon S3 dengan menggunakan koneksi Secure Sockets Layer () terenkripsi. SSL

Amazon Redshift secara otomatis mengambil snapshot tambahan yang melacak perubahan pada cluster sejak snapshot otomatis sebelumnya. Snapshot otomatis menyimpan semua data yang diperlukan untuk memulihkan cluster dari snapshot. Anda dapat membuat jadwal snapshot untuk mengontrol kapan snapshot otomatis diambil, atau Anda dapat mengambil snapshot manual kapan saja.

Saat memulihkan dari snapshot, Amazon Redshift membuat cluster baru dan membuat klaster baru tersedia sebelum semua data dimuat, sehingga Anda dapat segera mulai menanyakan klaster baru. Cluster mengalirkan data sesuai permintaan dari snapshot sebagai respons terhadap kueri aktif, lalu memuat data yang tersisa di latar belakang.

Saat meluncurkan cluster, Anda dapat mengatur periode retensi untuk snapshot otomatis dan manual. Anda dapat mengubah periode retensi default untuk snapshot otomatis dan manual dengan memodifikasi cluster. Anda dapat mengubah periode retensi untuk snapshot manual saat membuat snapshot atau dengan memodifikasi snapshot.

Anda dapat memantau kemajuan snapshot dengan melihat detail snapshot di AWS Management Console, atau describe-cluster-snapshotsdengan memanggil CLI atau DescribeClusterSnapshotsAPItindakan. Untuk snapshot yang sedang berlangsung, ini menampilkan informasi seperti ukuran snapshot tambahan, kecepatan transfer, waktu yang telah berlalu, dan perkiraan waktu yang tersisa.

Untuk memastikan bahwa cadangan Anda selalu tersedia untuk klaster Anda, Amazon Redshift menyimpan snapshot dalam bucket Amazon S3 yang dikelola secara internal yang dikelola oleh Amazon Redshift. Untuk mengelola biaya penyimpanan, evaluasi berapa hari Anda perlu menyimpan snapshot otomatis dan mengonfigurasi periode retensi yang sesuai. Hapus snapshot manual yang tidak lagi Anda butuhkan. Untuk informasi selengkapnya tentang biaya penyimpanan cadangan, lihat halaman harga Amazon Redshift.

Bekerja dengan snapshot dan backup di Amazon Redshift Serverless

Amazon Redshift Tanpa Server, seperti kluster yang disediakan, memungkinkan Anda mengambil cadangan sebagai point-in-time representasi objek dan data di namespace. Ada dua jenis cadangan di Amazon Redshift Serverless: snapshot yang dibuat secara manual dan titik pemulihan yang dibuat Amazon Redshift Serverless secara otomatis. Anda dapat menemukan informasi lebih lanjut tentang bekerja dengan snapshot untuk Amazon Redshift Tanpa Server di Snapshots dan titik pemulihan.

Anda juga dapat memulihkan snapshot dari klaster yang disediakan ke namespace tanpa server. Untuk informasi selengkapnya, lihat Memulihkan namespace tanpa server dari snapshot.

Snapshot otomatis

Saat snapshot otomatis diaktifkan untuk klaster, Amazon Redshift secara berkala mengambil snapshot dari cluster tersebut. Secara default Amazon Redshift mengambil snapshot setiap delapan jam atau mengikuti setiap 5 GB per node perubahan data, atau mana yang lebih dulu. Jika data Anda lebih besar dari 5 GB* jumlah node, jumlah waktu terpendek di antara pembuatan snapshot otomatis adalah 15 menit. Atau, Anda dapat membuat jadwal snapshot untuk mengontrol saat snapshot otomatis diambil. Jika Anda menggunakan jadwal khusus, jumlah waktu minimum antara snapshot otomatis adalah satu jam. Snapshot otomatis diaktifkan secara default saat Anda membuat cluster.

Snapshot otomatis dihapus pada akhir periode retensi. Periode retensi default adalah satu hari, tetapi Anda dapat memodifikasinya dengan menggunakan konsol Amazon Redshift atau secara terprogram dengan menggunakan Amazon Redshift atau. API CLI

Untuk menonaktifkan snapshot otomatis, atur periode retensi ke nol. Jika Anda menonaktifkan snapshot otomatis, Amazon Redshift berhenti mengambil snapshot dan menghapus snapshot otomatis yang ada untuk cluster. Anda tidak dapat menonaktifkan snapshot otomatis untuk tipe RA3 node. Anda dapat mengatur periode retensi otomatis tipe RA3 node dari 1—35 hari.

Hanya Amazon Redshift yang dapat menghapus snapshot otomatis; Anda tidak dapat menghapusnya secara manual. Amazon Redshift menghapus snapshot otomatis di akhir periode retensi snapshot, saat Anda menonaktifkan snapshot otomatis untuk klaster, atau saat Anda menghapus klaster. Amazon Redshift mempertahankan snapshot otomatis terbaru hingga Anda menonaktifkan snapshot otomatis atau menghapus cluster.

Jika Anda ingin menyimpan snapshot otomatis untuk jangka waktu yang lebih lama, Anda dapat membuat salinannya sebagai snapshot manual. Snapshot otomatis dipertahankan hingga akhir periode retensi, tetapi snapshot manual yang sesuai dipertahankan hingga Anda menghapusnya secara manual atau hingga akhir periode retensi.

Jadwal snapshot otomatis

Untuk mengontrol secara tepat kapan snapshot diambil, Anda dapat membuat jadwal snapshot dan melampirkannya ke satu atau lebih cluster. Saat Anda mengubah jadwal snapshot, jadwal diubah untuk semua cluster terkait. Jika klaster tidak memiliki jadwal snapshot terlampir, cluster menggunakan jadwal snapshot otomatis default.

Jadwal snapshot adalah seperangkat aturan jadwal. Anda dapat menentukan aturan jadwal sederhana berdasarkan interval tertentu, seperti setiap 8 jam atau setiap 12 jam. Anda juga dapat menambahkan aturan untuk mengambil foto pada hari-hari tertentu dalam seminggu, pada waktu tertentu, atau selama periode tertentu. Aturan juga dapat didefinisikan menggunakan ekspresi cron mirip Unix.

Format jadwal snapshot

Di konsol Amazon Redshift, Anda dapat membuat jadwal snapshot. Kemudian, Anda dapat melampirkan jadwal ke cluster untuk memicu pembuatan snapshot sistem. Jadwal dapat dilampirkan ke beberapa cluster, dan Anda dapat membuat beberapa definisi cron dalam jadwal untuk memicu snapshot.

Anda dapat menentukan jadwal untuk snapshot Anda menggunakan sintaks cron. Definisi jadwal ini menggunakan sintaks cron mirip Unix yang dimodifikasi. Anda menentukan waktu di Waktu universal terkoordinasi (UTC). Anda dapat membuat jadwal dengan frekuensi maksimum satu jam dan presisi minimum satu menit.

Ekspresi cron yang dimodifikasi Amazon Redshift memiliki 3 bidang wajib, yang dipisahkan oleh spasi putih.

Sintaksis

cron(Minutes Hours Day-of-month Month Day-of-week Year)
Bidang Nilai-nilai Wildcard

Menit

0–59

, - * /

Jam

0–23

, - * /

D ay-of-month

1–31

, - * ? / L W

Bulan

1—12 atau - JAN DEC

, - * /

D ay-of-week

1—7 atau - SUN SAT

, - * ? L #

Tahun

1970–2199

, - * /

Wildcard
  • Wildcard , (koma) mencakup nilai tambahan. Di Day-of-week lapangan, MON,WED,FRI akan mencakup Senin, Rabu, dan Jumat. Nilai total dibatasi hingga 24 per bidang.

  • Wildcard - (tanda hubung) menentukan rentang. Di Hour lapangan, 1-15 akan mencakup jam 1 hingga 15 dari hari yang ditentukan.

  • Wildcard * (bintang) mencakup semua nilai di bidang. Di kolom Hours, * akan mencakup setiap jam.

  • Wildcard / (garis miring) menentukan tambahan. Di Hours lapangan, Anda bisa masuk 1/10 untuk menentukan setiap jam ke-10, mulai dari jam pertama hari itu (misalnya, 01:00, 11:00, dan 21:00).

  • Wildcard ? (tanda tanya) menentukan satu atau yang lain. Di Day-of-month lapangan Anda bisa masuk 7, dan jika Anda tidak peduli hari apa dalam minggu ketujuh, Anda bisa masuk? di ay-of-week bidang D.

  • Wildcard L di kolom Day-of-month atau Day-of-week menentukan hari terakhir pada bulan atau minggu.

  • Wildcard W di kolom Day-of-month menentukan hari kerja. Di kolom Day-of-month, 3W menentukan hari kerja yang paling dekat dengan pekan ketiga di bulan itu.

  • Wildcard # di ay-of-week bidang D menentukan contoh tertentu dari hari yang ditentukan dalam seminggu dalam sebulan. Sebagai contoh, 3#2 akan menjadi hari Selasa kedua setiap bulan: 3 mengacu pada hari Selasa karena itu adalah hari ketiga setiap minggu, dan 2 mengacu pada hari kedua dari jenis tersebut dalam bulan tersebut.

    catatan

    Jika Anda menggunakan karakter '#', Anda hanya dapat menentukan satu ekspresi di day-of-week bidang. Misalnya, “3 #1 ,6 #3" tidak valid karena ditafsirkan sebagai dua ekspresi.

Batas
  • Anda tidak dapat menentukan kolom Day-of-month dan Day-of-week dalam ekspresi cron yang sama. Jika Anda menentukan sebuah nilai di salah satu kolom, maka Anda harus menggunakan ? (tanda tanya) di kolom yang lain.

  • Jadwal snapshot tidak mendukung frekuensi berikut:

    • Snapshot dijadwalkan lebih sering dari 1 per jam.

    • Snapshot dijadwalkan kurang dari 1 per hari (24 jam).

    Jika Anda memiliki jadwal yang tumpang tindih yang menghasilkan penjadwalan snapshot dalam jendela 1 jam, kesalahan validasi akan terjadi.

Anda dapat membuat jadwal, Anda dapat menggunakan contoh cron berikut.

Menit Jam Hari dalam seminggu Arti

0

14-20/1

TUE

Setiap jam antara jam 2 siang dan 8 malam pada hari Selasa.

0

21

MON-FRI

Setiap malam jam 9 malam Senin-Jumat.

30

0/6

SAT-SUN

Setiap kenaikan 6 jam pada hari Sabtu dan Minggu dimulai pada 30 menit setelah tengah malam (00:30) hari itu. Ini menghasilkan snapshot pada [00:30, 06:30, 12:30, dan 18:30] setiap hari.

30

12/4

*

Setiap kenaikan 4 jam mulai pukul 12:30 setiap hari. Ini memutuskan untuk [12:30, 16:30, 20:30].

Misalnya berjalan sesuai jadwal dengan kenaikan setiap 2 jam mulai pukul 15:15 setiap hari. Ini memutuskan untuk [15:15, 17:15, 19:15, 21:15, 23:15], tentukan:

cron(15 15/2 *)

Anda dapat membuat beberapa definisi jadwal cron dalam sebagai jadwal. Sebagai contoh berikut AWS CLI perintah berisi dua jadwal cron dalam satu jadwal.

create-snapshot-schedule --schedule-identifier "my-test" --schedule-definition "cron(0 17 SAT,SUN)" "cron(0 9,17 MON-FRI)"

Snapshot manual

Anda dapat mengambil snapshot manual kapan saja. Secara default, snapshot manual dipertahankan tanpa batas waktu, bahkan setelah Anda menghapus klaster Anda. Anda dapat menentukan periode retensi saat membuat snapshot manual, atau Anda dapat mengubah periode retensi dengan memodifikasi snapshot. Untuk informasi selengkapnya tentang mengubah periode retensi, lihatMemodifikasi periode retensi snapshot manual.

Jika snapshot dihapus, Anda tidak dapat memulai operasi baru yang mereferensikan snapshot itu. Namun, jika operasi pemulihan sedang berlangsung, operasi pemulihan itu akan berjalan hingga selesai.

Amazon Redshift memiliki kuota yang membatasi jumlah snapshot manual yang dapat Anda buat; kuota ini per AWS akun per AWS Wilayah. Kuota default tercantum diKuota dan batas di Amazon Redshift.

Penyimpanan snapshot

Karena snapshot menimbulkan biaya penyimpanan, penting bagi Anda untuk menghapusnya saat Anda tidak lagi membutuhkannya. Amazon Redshift menghapus snapshot otomatis dan manual di akhir periode retensi snapshot masing-masing. Anda juga dapat menghapus snapshot manual menggunakan AWS Management Console atau dengan batch-delete-cluster-snapshotsCLIperintah.

Anda dapat mengubah periode retensi untuk snapshot manual dengan memodifikasi pengaturan snapshot manual.

Anda bisa mendapatkan informasi tentang berapa banyak penyimpanan yang dikonsumsi snapshot Anda menggunakan Amazon Redshift Console atau menggunakan perintah deskripsi-penyimpanan. CLI

Tidak termasuk tabel dari snapshot

Secara default, semua tabel permanen yang ditentukan pengguna disertakan dalam snapshot. Jika tabel, seperti tabel pementasan, tidak perlu dicadangkan, Anda dapat secara signifikan mengurangi waktu yang dibutuhkan untuk membuat snapshot dan memulihkan dari snapshot. Anda juga mengurangi ruang penyimpanan di Amazon S3 dengan menggunakan tabel tanpa cadangan. Untuk membuat tabel tanpa cadangan, sertakan parameter BACKUP NO saat Anda membuat tabel. Untuk informasi selengkapnya, lihat CREATETABLEdan CREATETABLEAS di Panduan Pengembang Database Amazon Redshift.