View a markdown version of this page

Membuat datashares - Amazon Redshift

Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog yang diterbitkan pada 30 Juni 2025.

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

Membuat datashares

Dengan Amazon Redshift, Anda dapat berbagi data langsung di seluruh cluster atau AWS akun Amazon Redshift menggunakan berbagi data. Datashare adalah objek produser-konsumen yang Anda gunakan untuk berbagi data langsung dari cluster Amazon Redshift Anda dengan cluster atau akun lain. AWS Membuat berbagi data memungkinkan berbagi data yang aman sambil mempertahankan kontrol atas akses dan memastikan data tetap mutakhir. Bagian berikut memberikan detail tentang membuat berbagi data dan menambahkan objek database seperti skema, tabel, dan tampilan untuk berbagi data langsung dengan aman.

Buat datashare

Datashare adalah wadah logis objek database, izin, dan konsumen. Konsumen adalah cluster yang disediakan Amazon Redshift atau ruang nama Amazon Redshift Serverless di akun Anda dan lainnya. Akun AWS Setiap datashare dikaitkan dengan database yang dibuat dan hanya objek dari database itu yang dapat ditambahkan. Sebagai administrator produsen, Anda dapat membuat data share di konsol dan dengan SQL dengan mengikuti salah satu prosedur di bawah ini.

Console

Di konsol, Anda dapat membuat data share dari tab Datashares di halaman detail cluster atau namespace. Setelah datashare dibuat, Anda dapat membuat database dari datashare pada konsumen sebagai administrator konsumen.

  1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon Redshift di https://console.aws.amazon.com/redshiftv2/.

  2. Pada menu navigasi, pilih Cluster, lalu pilih cluster Anda. Halaman detail cluster muncul.

  3. Di halaman detail cluster atau namespace, dari tab Datashares, di bagian Datashares, sambungkan ke database jika Anda tidak memiliki koneksi database. Di bagian Datashares yang dibuat di akun saya, pilih Buat datashare. Halaman Buat datashare muncul.

  4. Pilih Buat datashare. Anda hanya dapat membuat datashare dari database lokal. Jika Anda belum terhubung ke database, halaman Connect to database akan muncul. Ikuti langkah-langkah Menghubungkan ke basis data untuk terhubung ke database. Jika ada koneksi baru-baru ini, halaman Buat datashare muncul.

  5. Di bagian informasi Datashare, pilih salah satu dari yang berikut ini:

    • Pilih Datashare untuk membuat berbagi data untuk berbagi data untuk tujuan baca atau tulis di berbagai gudang data Amazon Redshift (cluster yang disediakan atau titik akhir Tanpa Server) atau di gudang data yang sama atau berbeda. Akun AWS Akun AWS

    • Pilih AWS Data Exchange datashare untuk membuat data share untuk melisensikan data Anda. AWS Data Exchange

  6. Tentukan nilai untuk nama Datashare, Nama Database, dan Akses publik. Saat Anda mengubah nama database, buat koneksi database baru.

  7. Tambahkan objek ke datashare Anda menggunakan bagian Izin yang dic akup atau Izin Lang sung. Untuk menambahkan objek ke datashare, lihat. Membuat datashare di Amazon Redshift

  8. Di bagian Konsumen data, Anda dapat memilih untuk mempublikasikan ke Amazon Redshift, atau mempublikasikan ke AWS Glue Data Catalog, yang memulai proses berbagi data dengan Lake Formation. Menerbitkan datashare Anda ke Amazon Redshift berarti berbagi data Anda dengan namespace lain atau akun Amazon Redshift yang bertindak sebagai konsumen.

    catatan

    Setelah datashare dibuat, Anda tidak dapat mengedit konfigurasi untuk dipublikasikan ke opsi lain.

  9. Pilih Buat datashare.

SQL

Perintah berikut membuat datashare:

CREATE DATASHARE salesshare;

Pada saat pembuatan datashare, setiap datashare dikaitkan dengan database. Hanya objek dari database itu yang dapat dibagikan di datashare itu. Beberapa data share dapat dibuat pada database yang sama dengan perincian objek yang sama atau berbeda. Tidak ada batasan jumlah data share yang dapat dibuat oleh cluster. Anda juga dapat menggunakan konsol Amazon Redshift untuk membuat berbagi data. Untuk informasi selengkapnya, lihat BUAT DATASHARE.

Anda juga dapat mengontrol pembatasan keamanan ke datashare selama pembuatan. Contoh berikut menunjukkan bahwa konsumen dengan akses IP publik diizinkan untuk membaca datashare.

CREATE DATASHARE my_datashare [PUBLICACCESSIBLE = TRUE];

Menyetel PUBLICACCESSIBLE = TRUE memungkinkan konsumen untuk menanyakan data Anda dari cluster yang dapat diakses publik dan kelompok kerja yang disediakan. Tinggalkan ini atau secara eksplisit atur ke false jika Anda tidak ingin mengizinkannya.

Anda dapat memodifikasi properti tentang jenis konsumen setelah Anda membuat datashare. Misalnya, Anda dapat menentukan bahwa cluster yang ingin menggunakan data dari datashare tertentu tidak dapat diakses publik. Kueri dari cluster konsumen yang tidak memenuhi batasan keamanan yang ditentukan dalam datashare ditolak saat runtime kueri. Untuk informasi selengkapnya, lihat ALTER DATA.

Tambahkan objek datashare ke datashares

Anda dapat menambahkan objek database dari berbagai jenis pada konsol dan dengan SQL dengan mengikuti salah satu prosedur di bawah ini.

Console

Anda dapat menambahkan objek ke datashare Anda menggunakan izin terc akup atau bagian izin langsung. Pilih Berikan izin terlingkup atau Ber ikan izin langsung untuk menambahkan objek. Pilih tombol Tambah untuk menambahkan objek. Dialog muncul. Lakukan langkah-langkah berikut ini:

  1. Jika Anda memilih Ber ikan izin bercakupan, halaman Berikan izin cakupan akan muncul di mana Anda dapat memberikan izin cakupan baik di tingkat database atau skema. Berbagi data dengan izin cakupan memiliki izin yang ditentukan pada semua objek saat ini dan yang akan datang dalam database atau skema. Untuk lebih jelasnya lihat,Izin terlingkup.

    1. Selanjutnya, pilih Iz in cakupan database untuk memberikan izin terlingkup di tingkat database. Saat Anda memberikan izin cakupan, izin tersebut berlaku untuk database saat ini saat membuat datashare. Izin ini tidak dapat diberikan ke objek individual dan berlaku untuk objek yang ada dan baru (skema, tabel, tampilan, UDF).

    2. Pilih izin cakupan untuk skema, tabel atau tampilan atau fungsi yang ditentukan pengguna. Ini berarti semua objek dalam database memiliki izin yang dipilih yang diberikan kepada konsumen. Pilih Grant untuk menyelesaikan pemberian izin bercakupan database.

    3. Kemudian, pilih izin cakupan skema untuk memberikan izin cakupan di tingkat skema. Saat Anda memberikan izin cakupan skema, semua objek yang ditambahkan ke skema memiliki izin datashare yang ditentukan.

    4. Pilih skema yang ingin Anda tambahkan ke datashare dari dropdown. Anda hanya dapat memilih satu skema pada satu waktu. Kemudian, pilih izin langsung yang ingin Anda berikan pada skema yang dipilih.

    5. Pilih izin cakupan untuk objek skema Anda seperti tabel, tampilan, dan fungsi yang ditentukan pengguna. Izin diberikan pada semua objek yang cocok dalam skema. Ini bisa berupa objek yang ada atau yang ditambahkan di masa mendatang. Saat diterapkan, Anda tidak dapat menghapus izin dari objek tanpa mencabut izin cakupan.

    6. Pilih Grant untuk menyelesaikan pemberian izin bercakupan skema.

  2. Jika Anda memilih Berikan izin langsung, halaman Berikan izin langsung muncul di mana Anda dapat memberikan izin langsung pada setiap tingkat objek seperti skema, tabel, tampilan, atau fungsi yang ditentukan pengguna. Untuk memberikan izin langsung, Anda harus terlebih dahulu menambahkan skema yang relevan ke datashare.

    1. Selanjutnya, pilih Berikan izin langsung ke skema untuk menerapkan izin langsung pada skema tertentu. Kemudian, pilih izin skema untuk objek skema Anda seperti tabel, tampilan, dan fungsi yang ditentukan pengguna dan pilih skema yang ingin Anda tambahkan ke datashare. Pilih Grant untuk menyelesaikan penambahan skema ke datashare.

    2. Setelah Anda memiliki skema yang ditambahkan ke datashare Anda, Anda dapat melanjutkan dengan menambahkan izin langsung untuk objek skema Anda. Pilih Berikan izin langsung lagi. Halaman Beri izin langsung muncul. Kemudian, arahkan ke tab izin langsung untuk objek skema.

    3. Pilih Berikan izin langsung ke tabel dan tampilan untuk memberikan izin langsung tingkat objek pada objek ini. Pilih izin langsung yang diperlukan dan objek yang diperlukan dari daftar. Gunakan bidang pencarian untuk menemukan objek datashare. Pilih Grant untuk menyelesaikan penambahan tabel dan tampilan ke datashare.

    4. Pilih Berikan izin langsung ke fungsi yang ditentukan pengguna untuk memberikan izin langsung tingkat objek pada fungsi yang ditentukan pengguna. Pilih izin langsung yang diperlukan dan objek yang diperlukan dari daftar. Gunakan bidang pencarian untuk menemukan objek datashare. Pilih Grant untuk menyelesaikan penambahan fungsi yang ditentukan pengguna ke datashare.

  3. Anda juga dapat memilih apakah Anda ingin menambahkan objek masa depan. Ketika Anda memilih untuk menyertakan objek datashare yang ditambahkan ke skema, itu berarti bahwa objek yang ditambahkan ke skema ditambahkan ke datashare secara otomatis.

  4. Pilih Tambah untuk menyelesaikan bagian dan menambahkan objek. Mereka terdaftar di bawah objek Datashare.

  5. Setelah menambahkan objek, Anda dapat memilih objek individual dan mengedit izin mereka. Jika Anda memilih skema, dialog muncul yang menanyakan apakah Anda ingin menambahkan izin yang dicakup. Ini membuatnya sehingga setiap objek yang ada atau ditambahkan ke skema memiliki kumpulan izin yang telah dipilih sebelumnya, sesuai untuk jenis objek. Misalnya, administrator dapat mengatur bahwa semua tabel yang ditambahkan memiliki izin SELECT dan UPDATE, misalnya.

  6. Semua objek datashare terdaftar di bawah bagian Izin terc akup atau Izin Lang sung.

  7. Di bagian Konsumen data, Anda dapat menambahkan ruang nama atau menambahkan AWS akun sebagai konsumen datashare.

  8. Pilih Buat datashare untuk menyimpan perubahan Anda.

Setelah Anda membuat datashare, itu muncul dalam daftar di bawah Datashares yang dibuat di namespace saya. Jika Anda memilih datashare dari daftar, Anda dapat melihat konsumen, objeknya, dan properti lainnya.

SQL

Dengan SQL, pemilik datashare harus memberikan USAGE pada skema yang ingin mereka tambahkan ke datashare. GRANT digunakan untuk memberikan berbagai tindakan pada skema, termasuk CREATE dan USAGE. Skema menyimpan objek bersama:

CREATE SCHEMA myshared_schema1; CREATE SCHEMA myshared_schema2; GRANT USAGE ON SCHEMA myshared_schema1 TO DATASHARE my_datashare; GRANT CREATE, USAGE ON SCHEMA myshared_schema2 TO DATASHARE my_datashare;

Atau, administrator dapat terus menjalankan perintah ALTER untuk menambahkan skema ke datashare. Hanya izin USAGE yang diberikan ketika skema ditambahkan dengan cara ini.

ALTER DATASHARE my_datashare ADD SCHEMA myshared_schema1;

Setelah administrator menambahkan skema, mereka dapat memberikan izin datashare pada objek dalam skema. Ini bisa berupa izin baca dan tulis. Sampel GRANT ALL menunjukkan cara memberikan semua izin.

GRANT SELECT, INSERT ON TABLE myshared_schema1.table1, myshared_schema1.table2, myshared_schema2.table1 TO DATASHARE my_datashare; GRANT ALL ON TABLE myshared_schema1.table4 TO DATASHARE my_datashare;

Anda dapat terus menjalankan perintah seperti ALTER DATASHARE untuk menambahkan tabel. Ketika Anda melakukannya, hanya izin SELECT yang diberikan pada objek yang ditambahkan.

ALTER DATASHARE my_datashare ADD TABLE myshared_schema1.table1, myshared_schema1.table2, myshared_schema2.table1;

Anda dapat memberikan izin cakupan ke datashare pada semua objek jenis dalam database atau skema. Berbagi data dengan izin cakupan memiliki izin yang ditentukan pada semua objek saat ini dan yang akan datang dalam database atau skema.

Anda dapat melihat cakupan izin cakupan tingkat database di. SVV_DATABASE_HAK ISTIMEWA Anda dapat melihat cakupan izin cakupan tingkat skema di. SVV_SCHEMA_HAK ISTIMEWA

Berikut ini adalah sintaks untuk memberikan izin cakupan untuk berbagi data. Untuk informasi selengkapnya tentang izin bercakupan, lihatIzin terlingkup.

GRANT { CREATE | USAGE | ALTER | DROP } [,...] | ALL [ PRIVILEGES ] }FOR SCHEMAS IN DATABASE db_name TO DATASHARE { datashare_name} GRANT { { SELECT | INSERT | UPDATE | DELETE | DROP | ALTER | TRUNCATE | REFERENCES } [, ...] } | ALL [PRIVILEGES] } }FOR TABLES IN {SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name } TO DATASHARE { datashare_name} GRANT { EXECUTE | ALL [ PRIVILEGES ] }FOR FUNCTIONS IN {SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name } TO DATASHARE { datashare_name}

Tambahkan konsumen data ke datashares

Anda dapat menambahkan satu atau lebih konsumen data ke datashares. Konsumen data dapat berupa ruang nama yang secara unik mengidentifikasi cluster Amazon Redshift atau. Akun AWS

Anda harus secara eksplisit memilih untuk mematikan atau mengaktifkan berbagi data Anda ke cluster dengan akses publik.

  • Pilih Tambahkan ruang nama ke datashare. Ruang nama adalah pengenal unik global (GUID) untuk cluster Amazon Redshift.

  • Pilih Tambahkan Akun AWS ke datashare. Yang ditentukan Akun AWS harus memiliki izin akses ke datashare.