

 Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai Patch 198. Python yang ada UDFs akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Memulai berbagi data read-only dengan antarmuka SQL
<a name="getting-started-datashare-sql"></a>

Dengan Amazon Redshift, Anda dapat berbagi data dengan aman di seluruh klaster Amazon Redshift, memungkinkan konsumen data untuk menanyakan dan mengakses data langsung tanpa menyalin atau mereplikasinya. Berbagi data memungkinkan Anda membuat dan mengonfigurasi datashares, yang merupakan objek sisi produsen yang mereferensikan objek database yang ingin Anda bagikan.

Anda dapat membagikan data untuk tujuan baca di berbagai kluster Amazon Redshift di dalam atau di seluruh Akun AWS, atau di seberang. Wilayah AWS

**Topics**
+ [Berbagi akses baca ke data dalam Akun AWS](within-account.md)
+ [Bekerja dengan tampilan di berbagi data Amazon Redshift](datashare-views.md)
+ [Menambahkan tabel data lake ke datashare](create-datashare-external-views.md)
+ [Berbagi data di seluruh Akun AWS](across-account.md)
+ [Berbagi data di seluruh Wilayah AWS](across-region.md)
+ [Berbagi data Amazon Redshift berlisensi di AWS Data Exchange](adx-getting-started.md)
+ [Memulai dengan AWS Lake Formation datashares -managed](lf-getting-started.md)

# Berbagi akses baca ke data dalam Akun AWS
<a name="within-account"></a>

Dengan Amazon Redshift, Anda dapat berbagi akses baca ke data di berbagai pengguna database atau grup dalam akun yang sama AWS . Fitur ini memungkinkan Anda untuk mengontrol hak akses data pada tingkat terperinci, memastikan bahwa hanya pengguna atau grup yang berwenang yang dapat membaca kumpulan data tertentu. 

## Bagikan data untuk tujuan baca sebagai administrator produsen atau pemilik basis data
<a name="share-producer"></a>

1. Buat datashares di cluster Anda. Untuk informasi selengkapnya, lihat [BUAT DATASHARE](r_CREATE_DATASHARE.md).

   ```
   CREATE DATASHARE salesshare;
   ```

   Superuser cluster dan pemilik database dapat membuat datashares. Setiap datashare dikaitkan dengan database selama pembuatan. Hanya objek dari database yang dapat dibagikan dalam datashare itu. Beberapa datashares dapat dibuat pada database yang sama dengan granularitas objek yang sama atau berbeda. Tidak ada batasan jumlah datashares yang dapat dibuat oleh cluster.

   Anda juga dapat menggunakan konsol Amazon Redshift untuk membuat datashares. Untuk informasi selengkapnya, lihat [Buat datashare](datashare-creation.md#create-datashare-console).

1. Delegasikan izin untuk beroperasi di datashare. Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

   Contoh berikut memberikan izin untuk `dbuser` aktif. `salesshare`

   ```
   GRANT ALTER, SHARE ON DATASHARE salesshare TO dbuser;
   ```

   Superuser cluster dan pemilik datashare dapat memberikan atau mencabut izin modifikasi pada datashare kepada pengguna tambahan.

1. Tambahkan objek ke atau hapus objek dari datashares. Untuk menambahkan objek ke datashare, tambahkan skema sebelum menambahkan objek. Saat Anda menambahkan skema, Amazon Redshift tidak menambahkan semua objek di bawahnya. Pastikan untuk menambahkan ini secara eksplisit. Untuk informasi selengkapnya, lihat [MENGUBAH DATASHARE](r_ALTER_DATASHARE.md).

   ```
   ALTER DATASHARE salesshare ADD SCHEMA PUBLIC;
   ALTER DATASHARE salesshare ADD TABLE public.tickit_sales_redshift;
   ALTER DATASHARE salesshare ADD ALL TABLES IN SCHEMA PUBLIC;
   ```

   Anda juga dapat menambahkan tampilan ke datashare.

   ```
   CREATE VIEW public.sales_data_summary_view AS SELECT * FROM public.tickit_sales_redshift;
   ALTER DATASHARE salesshare ADD VIEW public.sales_data_summary_view;
   ```

   Gunakan ALTER DATASHARE untuk berbagi skema, dan tabel, tampilan, dan fungsi dalam skema tertentu. Superusers, pemilik datashare, atau pengguna yang memiliki ALTER atau ALL izin pada datashare dapat mengubah datashare untuk menambahkan objek ke atau menghapus objek dari itu. Pengguna harus memiliki izin untuk menambah atau menghapus objek dari datashare. Pengguna juga harus menjadi pemilik objek atau memiliki izin SELECT, USE, atau SEMUA pada objek.

   Anda juga dapat menggunakan GRANT untuk menambahkan objek ke datashare. Contoh ini menunjukkan bagaimana:

   ```
   GRANT SELECT ON TABLE public.tickit_sales_redshift TO DATASHARE salesshare;
   ```

   Sintaks ini secara fungsional setara dengan. `ALTER DATASHARE salesshare ADD TABLE public.tickit_sales_redshift;`

   Gunakan klausa INCLUDENEW untuk menambahkan tabel baru, tampilan, atau fungsi yang ditentukan pengguna SQL (UDFs) yang dibuat dalam skema tertentu ke datashare. Hanya pengguna super yang dapat mengubah properti ini untuk setiap pasangan skema rangkaian data.

   ```
   ALTER DATASHARE salesshare ADD SCHEMA PUBLIC;
   ALTER DATASHARE salesshare SET INCLUDENEW = TRUE FOR SCHEMA PUBLIC;
   ```

   Anda juga dapat menggunakan konsol Amazon Redshift untuk menambah atau menghapus objek dari datashares. Lihat informasi selengkapnya di [Tambahkan objek datashare ke datashares](datashare-creation.md#add-datashare-object-console), [Menghapus objek datashare dari datashares](manage-datashare-existing-console.md#remove-datashare-object-console), dan [Mengedit datashares yang dibuat di akun Anda](manage-datashare-existing-console.md#edit-datashare-console).

1. Tambahkan konsumen ke atau hapus konsumen dari datashares. Contoh berikut menambahkan namespace konsumen ke. `salesshare` Namespace adalah namespace global unique identifier (GUID) dari cluster konsumen di akun. Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

   ```
   GRANT USAGE ON DATASHARE salesshare TO NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   ```

   Anda hanya dapat memberikan izin kepada satu konsumen datashare dalam pernyataan GRANT.

   Superuser cluster dan pemilik objek datashare atau pengguna yang memiliki izin SHARE pada datashare dapat menambahkan konsumen ke atau menghapus konsumen dari datashare. Untuk melakukannya, mereka menggunakan PENGGUNAAN HIBAH atau MENCABUT PENGGUNAAN.

   Untuk menemukan namespace cluster yang Anda lihat saat ini, Anda dapat menggunakan perintah SELECT CURRENT\$1NAMESPACE. Untuk menemukan namespace dari cluster yang berbeda dalam hal yang sama Akun AWS, buka halaman detail klaster konsol Amazon Redshift. Di halaman itu, temukan bidang namespace yang baru ditambahkan.

   Anda juga dapat menggunakan konsol Amazon Redshift untuk menambah atau menghapus data konsumen untuk datashares. Untuk informasi selengkapnya, lihat [Tambahkan konsumen data ke datashares](datashare-creation.md#add-data-consumer-console) dan [Menghapus konsumen data dari datashares](manage-datashare-existing-console.md#remove-data-consumer-console).

1. (Opsional) Tambahkan batasan keamanan ke datashare. Contoh berikut menunjukkan bahwa cluster konsumen dengan akses IP publik diizinkan untuk membaca datashare. Untuk informasi selengkapnya, lihat [MENGUBAH DATASHARE](r_ALTER_DATASHARE.md).

   ```
   ALTER DATASHARE salesshare SET PUBLICACCESSIBLE = TRUE;
   ```

   Anda dapat memodifikasi properti tentang jenis konsumen setelah pembuatan datashare. Misalnya, Anda dapat menentukan bahwa cluster yang ingin menggunakan data dari datashare tertentu tidak dapat diakses publik. Kueri dari kluster konsumen yang tidak memenuhi batasan keamanan yang ditentukan dalam datashare ditolak saat runtime kueri.

   Anda juga dapat menggunakan konsol Amazon Redshift untuk mengedit datashares. Untuk informasi selengkapnya, lihat [Mengedit datashares yang dibuat di akun Anda](manage-datashare-existing-console.md#edit-datashare-console).

1. Daftar datashares yang dibuat di cluster dan melihat ke dalam isi datashare.

   Contoh berikut menampilkan informasi dari datashare bernama. `salesshare` 

   ```
   DESC DATASHARE salesshare;
                  
    producer_account  |          producer_namespace          | share_type | share_name | object_type |           object_name          |   include_new
   -------------------+--------------------------------------+------------+------------+-------------+--------------------------------+-------------------
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_users_redshift   |   
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_venue_redshift   |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_category_redshift|
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_date_redshift    |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_event_redshift   |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_listing_redshift |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_sales_redshift   |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | schema      | public                         |  t
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | view        | public.sales_data_summary_view |
   ```

   Contoh berikut menampilkan datashares keluar dalam cluster produser.

   ```
   SHOW DATASHARES LIKE 'sales%';
   ```

   Output-nya akan terlihat serupa dengan yang berikut ini.

   ```
   share_name | share_owner  | source_database | consumer_database | share_type |     createdate      | is_publicaccessible  | share_acl | producer_account |          producer_namespace 
   -----------+--------------+-----------------+-------------------+------------+---------------------+----------------------+-----------+------------------+---------------------------------------
   salesshare |    100       | dev             |                   |  OUTBOUND  | 2020-12-09 02:27:08 |          True        |           |   123456789012   | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d
   ```

   Untuk informasi selengkapnya, lihat [DESC DATASHARE](r_DESC_DATASHARE.md) dan [TAMPILKAN DATASHARES](r_SHOW_DATASHARES.md). 

   Anda juga dapat menggunakan[SVV\$1DATASHARES](r_SVV_DATASHARES.md),[SVV\$1DATASHARE\$1CONSUMER](r_SVV_DATASHARE_CONSUMERS.md), dan [SVV\$1DATASHARE\$1OBJECTS](r_SVV_DATASHARE_OBJECTS.md) untuk melihat datashares, objek dalam datashare, dan konsumen datashare.

1. Jatuhkan datashares. Untuk informasi selengkapnya, lihat [JATUHKAN DATASHARE](r_DROP_DATASHARE.md).

   Anda dapat menghapus objek datashare kapan saja menggunakan. [JATUHKAN DATASHARE](r_DROP_DATASHARE.md) Superuser cluster dan pemilik datashare dapat menjatuhkan datashares.

   Contoh berikut menjatuhkan datashare bernama. `salesshare`

   ```
   DROP DATASHARE salesshare;
   ```

   Anda juga dapat menggunakan konsol Amazon Redshift untuk menghapus datashares. Untuk informasi selengkapnya, lihat [Menghapus datashare yang dibuat di akun Anda](manage-datashare-existing-console.md#delete-datashare-console).

1. Gunakan ALTER DATASHARE untuk menghapus objek dari datashares kapan saja dari datashare. Gunakan REVOKE USE ON untuk mencabut izin pada datashare kepada konsumen tertentu. Ini mencabut izin PENGGUNAAN pada objek dalam datashare dan langsung menghentikan akses ke semua cluster konsumen. Daftar datashares dan kueri metadata, seperti daftar database dan tabel, tidak mengembalikan objek bersama setelah akses dicabut.

   ```
   ALTER DATASHARE salesshare REMOVE TABLE public.tickit_sales_redshift;
   ```

   Anda juga dapat menggunakan konsol Amazon Redshift untuk mengedit datashares. Untuk informasi selengkapnya, lihat [Mengedit datashares yang dibuat di akun Anda](manage-datashare-existing-console.md#edit-datashare-console).

1. Cabut akses ke datashare dari ruang nama jika Anda tidak ingin berbagi data dengan konsumen lagi.

   ```
   REVOKE USAGE ON DATASHARE salesshare FROM NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   ```

   Anda juga dapat menggunakan konsol Amazon Redshift untuk mengedit datashares. Untuk informasi selengkapnya, lihat [Mengedit datashares yang dibuat di akun Anda](manage-datashare-existing-console.md#edit-datashare-console).

## Bagikan data untuk tujuan baca sebagai administrator konsumen
<a name="share-consumer"></a>

1. Buat daftar datashares yang tersedia untuk Anda dan lihat konten datashares. Untuk informasi selengkapnya, lihat [DESC DATASHARE](r_DESC_DATASHARE.md) dan [TAMPILKAN DATASHARES](r_SHOW_DATASHARES.md).

   Contoh berikut menampilkan informasi datashares inbound dari namespace produsen tertentu. Ketika Anda menjalankan DESC DATASHARE sebagai administrator konsumen, Anda harus menentukan opsi NAMESPACE untuk melihat datashares masuk. 

   ```
   DESC DATASHARE salesshare OF NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   
   
    producer_account  |          producer_namespace          | share_type | share_name | object_type |           object_name           |   include_new
   -------------------+--------------------------------------+------------+------------+-------------+---------------------------------+------------------
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_users_redshift    |     
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_venue_redshift    |     
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_category_redshift |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_date_redshift     |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_event_redshift    |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_listing_redshift  |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_sales_redshift    |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | schema      | public                          |    
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | view        | public.sales_data_summary_view  |
   ```

   Hanya superuser cluster yang bisa melakukan ini. Anda juga dapat menggunakan SVV\$1DATASHARES untuk melihat datashares dan SVV\$1DATASHARE\$1OBJECTS untuk melihat objek dalam datashare.

   Contoh berikut menampilkan datashares masuk dalam cluster konsumen.

   ```
   SHOW DATASHARES LIKE 'sales%';
   
   
    share_name | share_owner | source_database | consumer_database | share_type | createdate | is_publicaccessible | share_acl | producer_account |          producer_namespace
   ------------+-------------+-----------------+-------------------+------------+------------+---------------------+-----------+------------------+--------------------------------------
    salesshare |             |                 |                   | INBOUND    |            |         t           |           |   123456789012   | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d
   ```

1. Sebagai superuser database, Anda dapat membuat database lokal yang merujuk ke datashares. Untuk informasi selengkapnya, lihat [BUAT BASIS DATA](r_CREATE_DATABASE.md).

   ```
   CREATE DATABASE sales_db FROM DATASHARE salesshare OF NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   ```

   Jika Anda ingin kontrol lebih terperinci atas akses ke objek dalam database lokal, gunakan klausa WITH PERMISSIONS saat membuat database. Ini memungkinkan Anda memberikan izin tingkat objek untuk objek dalam database pada langkah 4. 

   ```
   CREATE DATABASE sales_db WITH PERMISSIONS FROM DATASHARE salesshare OF NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   ```

   Anda dapat melihat database yang Anda buat dari datashare dengan menanyakan tampilan. [SVV\$1REDSHIFT\$1DATABASES](r_SVV_REDSHIFT_DATABASES.md) Anda dapat terhubung ke database ini secara langsung, atau Anda dapat terhubung ke database lokal di cluster konsumen Anda dan melakukan kueri lintas basis data untuk menanyakan data dari database datashare. Anda tidak dapat membuat datashare di atas objek database yang dibuat dari datashare yang ada. Namun, Anda dapat menyalin data ke tabel terpisah di cluster konsumen, melakukan pemrosesan apa pun yang diperlukan, dan kemudian membagikan objek baru yang dibuat.

   Anda juga dapat menggunakan konsol Amazon Redshift untuk membuat database dari datashares. Untuk informasi selengkapnya, lihat [Membuat database dari datashares](query-datashare-console.md#create-database-from-datashare-console).

1. (Opsional) Buat skema eksternal untuk merujuk dan menetapkan izin granular ke skema tertentu dalam database konsumen yang diimpor di cluster konsumen. Untuk informasi selengkapnya, lihat [BUAT SKEMA EKSTERNAL](r_CREATE_EXTERNAL_SCHEMA.md).

   ```
   CREATE EXTERNAL SCHEMA sales_schema FROM REDSHIFT DATABASE 'sales_db' SCHEMA 'public';
   ```

1. Berikan izin pada database dan referensi skema yang dibuat dari datashares kepada pengguna dan peran dalam cluster konsumen sesuai kebutuhan. Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

   ```
   GRANT USAGE ON DATABASE sales_db TO Bob;
   ```

   ```
   GRANT USAGE ON SCHEMA sales_schema TO ROLE Analyst_role;
   ```

   Jika Anda membuat database tanpa DENGAN IZIN, Anda hanya dapat menetapkan izin pada seluruh database yang dibuat dari datashare ke pengguna dan peran Anda. Dalam beberapa kasus, Anda memerlukan kontrol halus pada subset objek database yang dibuat dari datashare. Jika demikian, Anda dapat membuat referensi skema eksternal yang menunjuk ke skema tertentu dalam database (seperti yang dijelaskan pada langkah sebelumnya) dan memberikan izin granular pada tingkat skema. 

   Anda juga dapat membuat tampilan pengikatan akhir di atas objek bersama dan menggunakannya untuk menetapkan izin granular. Anda juga dapat mempertimbangkan agar cluster produsen membuat datashares tambahan untuk Anda dengan perincian yang diperlukan. 

   Jika Anda membuat database dengan DENGAN IZIN di langkah 2, Anda harus menetapkan izin tingkat objek untuk objek dalam database bersama. Pengguna dengan hanya izin PENGGUNAAN tidak dapat mengakses objek apa pun dalam database yang dibuat dengan IZIN DENGAN IZIN sampai mereka diberikan izin tingkat objek tambahan..

   ```
   GRANT SELECT ON sales_db.public.tickit_sales_redshift to Bob;
   ```

1. Kueri data dalam objek bersama di datashares.

   Pengguna dan peran dengan izin pada basis data dan skema konsumen pada kluster konsumen dapat menjelajahi dan menavigasi metadata objek yang dibagikan. Mereka juga dapat menjelajahi dan menavigasi objek lokal di cluster konsumen. Untuk melakukan ini, mereka menggunakan driver JDBC atau ODBC atau tampilan SVV\$1ALL dan SVV\$1REDSHIFT.

   Cluster produser mungkin memiliki banyak skema dalam database, tabel, dan tampilan dalam setiap skema. Pengguna di sisi konsumen hanya dapat melihat subset objek yang tersedia melalui datashare. Pengguna ini tidak dapat melihat seluruh metadata dari cluster produsen. Pendekatan ini membantu memberikan kontrol keamanan metadata granular dengan berbagi data.

   Anda terus terhubung ke database cluster lokal. Tapi sekarang, Anda juga dapat membaca dari database dan skema yang dibuat dari datashare menggunakan notasi database.schema.table tiga bagian. Anda dapat melakukan kueri yang menjangkau setiap dan semua database yang terlihat oleh Anda. Ini bisa berupa database lokal pada cluster atau database yang dibuat dari datashares. Cluster konsumen tidak dapat terhubung ke database yang dibuat dari datashares.

   Anda dapat mengakses data menggunakan kualifikasi penuh. Untuk informasi selengkapnya, lihat [Contoh kueri lintas basis data](cross-database_example.md).

   ```
   SELECT * FROM sales_db.public.tickit_sales_redshift ORDER BY 1,2 LIMIT 5;
   
    salesid | listid | sellerid | buyerid | eventid | dateid | qtysold | pricepaid | commission |      saletime
   ---------+--------+----------+---------+---------+--------+---------+-----------+------------+---------------------
          1 |      1 |    36861 |   21191 |    7872 |   1875 |       4 |    728.00 |     109.20 | 2008-02-18 02:36:48
          2 |      4 |     8117 |   11498 |    4337 |   1983 |       2 |     76.00 |      11.40 | 2008-06-06 05:00:16
          3 |      5 |     1616 |   17433 |    8647 |   1983 |       2 |    350.00 |      52.50 | 2008-06-06 08:26:17
          4 |      5 |     1616 |   19715 |    8647 |   1986 |       1 |    175.00 |      26.25 | 2008-06-09 08:38:52
          5 |      6 |    47402 |   14115 |    8240 |   2069 |       2 |    154.00 |      23.10 | 2008-08-31 09:17:02
   ```

   Anda hanya dapat menggunakan pernyataan SELECT pada objek bersama. Namun, Anda dapat membuat tabel di cluster konsumen dengan menanyakan data dari objek bersama di database lokal yang berbeda.

   Selain kueri, konsumen dapat membuat tampilan pada objek bersama. Hanya tampilan yang mengikat akhir atau tampilan terwujud yang didukung. Amazon Redshift tidak mendukung tampilan reguler pada data bersama. Tampilan yang dibuat konsumen dapat menjangkau beberapa database lokal atau database yang dibuat dari datashares. Untuk informasi selengkapnya, lihat [CREATE VIEW](r_CREATE_VIEW.md).

   ```
   // Connect to a local cluster database
                  
   // Create a view on shared objects and access it. 
   CREATE VIEW sales_data 
   AS SELECT * 
   FROM sales_db.public.tickit_sales_redshift 
   WITH NO SCHEMA BINDING;
   
   SELECT * FROM sales_data;
   ```

# Bekerja dengan tampilan di berbagi data Amazon Redshift
<a name="datashare-views"></a>

Kluster produser dapat berbagi tampilan reguler, pengikatan terlambat, dan terwujud. Saat berbagi tampilan reguler yang mengikat akhir, atau tampilan terwujud, Anda tidak perlu membagikan tabel dasar. Tabel berikut menunjukkan bagaimana tampilan didukung dengan berbagi data.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/datashare-views.html)

Kueri berikut menunjukkan output dari tampilan reguler yang didukung dengan berbagi data. Untuk informasi tentang definisi tampilan reguler, lihat[CREATE VIEW](r_CREATE_VIEW.md).

```
SELECT * FROM tickit_db.public.myevent_regular_vw 
ORDER BY eventid LIMIT 5;

   eventid  |  eventname
  ----------+-------------
     3835   | LeAnn Rimes
     3967   | LeAnn Rimes
     4856   | LeAnn Rimes
     4948   | LeAnn Rimes     
     5131   | LeAnn Rimes
```

Kueri berikut menunjukkan output dari tampilan pengikatan akhir yang didukung dengan berbagi data. Untuk informasi tentang definisi tampilan pengikatan akhir, lihat. [CREATE VIEW](r_CREATE_VIEW.md)

```
SELECT * FROM tickit_db.public.event_lbv 
ORDER BY eventid LIMIT 5;
         
 eventid | venueid | catid | dateid |          eventname           |      starttime
 --------+---------+-------+--------+------------------------------+---------------------
     1   |   305   |   8   |  1851  |        Gotterdammerung       | 2008-01-25 14:30:00
     2   |   306   |   8   |  2114  |           Boris Godunov      | 2008-10-15 20:00:00
     3   |   302   |   8   |  1935  |              Salome          | 2008-04-19 14:30:00
     4   |   309   |   8   |  2090  |  La Cenerentola (Cinderella) | 2008-09-21 14:30:00
     5   |   302   |   8   |  1982  |          Il Trovatore        | 2008-06-05 19:00:00
```

Kueri berikut menunjukkan output dari tampilan terwujud yang didukung dengan berbagi data. Untuk informasi tentang definisi tampilan terwujud, lihat[BUAT TAMPILAN TERWUJUD](materialized-view-create-sql-command.md).

```
SELECT * FROM tickit_db.public.tickets_mv;

  catgroup | qtysold
 ----------+---------
  Concerts | 195444
    Shows  | 149905
```

Anda dapat mempertahankan tabel umum di semua penyewa dalam klaster produsen. Anda juga dapat membagikan subset data yang difilter berdasarkan kolom dimensi, seperti `tenant_id` (`account_id`atau`namespace_id`), ke kluster konsumen. Untuk melakukan ini, Anda dapat menentukan tampilan pada tabel dasar dengan filter pada kolom ID ini, misalnya`current_aws_account = tenant_id`. Di sisi konsumen, saat Anda menanyakan tampilan, Anda hanya melihat baris yang memenuhi syarat untuk akun Anda. Untuk melakukan ini, Anda dapat menggunakan fungsi `current_aws_account` konteks Amazon Redshift dan. `current_namespace`

Kueri berikut mengembalikan ID akun tempat klaster Amazon Redshift saat ini berada. Anda dapat menjalankan kueri ini jika Anda terhubung ke Amazon Redshift.

```
select current_user, current_aws_account;

current_user | current_aws_account
-------------+--------------------
dwuser       |    111111111111
(1row)
```

Kueri berikut mengembalikan namespace dari cluster Amazon Redshift saat ini. Anda dapat menjalankan kueri ini jika Anda terhubung ke database.

```
select current_user, current_namespace; 

current_user | current_namespace
-------------+--------------------------------------
dwuser       | 86b5169f-01dc-4a6f-9fbb-e2e24359e9a8
(1 row)
```

## Penyegaran tambahan untuk tampilan terwujud dalam datashare
<a name="mv_incremental_datashare"></a>

 Amazon Redshift mendukung penyegaran inkremental untuk tampilan terwujud dalam data konsumen saat tabel dasar atau tampilan terwujud dibagikan. Penyegaran tambahan adalah operasi di mana Amazon Redshift mengidentifikasi perubahan pada tabel dasar atau tabel yang terjadi setelah penyegaran sebelumnya dan hanya memperbarui catatan terkait dalam tampilan terwujud. Untuk informasi selengkapnya tentang perilaku ini, lihat [MEMBUAT TAMPILAN TERWUJUD](https://docs.aws.amazon.com/redshift/latest/dg/materialized-view-create-sql-command.html#mv_CREATE_MARTERIALIZED_VIEW_datashare). 

# Menambahkan tabel data lake ke datashare
<a name="create-datashare-external-views"></a>

Dengan datashare, *produsen* data dapat dengan aman berbagi objek database dengan perincian halus, seperti skema dan tabel, dengan *konsumen di akun yang sama AWS atau di akun* yang berbeda. Produsen juga dapat berbagi objek di seluruh wilayah. Topik ini menjelaskan cara menambahkan objek dari data lake, khususnya, dari katalog AWS Glue data, ke datashare. Ini mencakup dua kasus penggunaan:
+ *Menambahkan tampilan pengikatan akhir ke datashare yang mereferensikan tabel dari danau data* — Ini nyaman bagi konsumen, karena konfigurasi awal, seperti mendefinisikan izin pada data sumber eksternal, misalnya dengan Lake Formation, kemungkinan sudah selesai. Manfaat tambahan adalah tampilan yang ditambahkan ke datashare dapat menggabungkan tabel dari danau data dengan tabel asli Redshift.
+ *Menambahkan tabel dari skema eksternal ke datashare secara langsung* — Ini membuat objek dari data lake tersedia bagi konsumen tanpa lapisan atau logika tambahan. Konsumen dapat menanyakan tabel atau menggabungkannya dengan tabel pada konsumen.

Kasus ini berlaku setelah Anda mereferensikan tabel dari katalog AWS data di Redshift menggunakan [CREATE EXTERNAL](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_SCHEMA.html) SCHEMA. Tabel apa pun dari katalog AWS data dapat menjadi sumbernya.

**catatan**  
Tabel data lake yang Anda tambahkan ke datashare dapat menyertakan tabel yang terdaftar dengan Lake Formation dan tabel katalog AWS Glue data.

## Buat skema eksternal dan tabel eksternal
<a name="create-datashare-console-external-prelim"></a>

Anda membuat skema eksternal dan tabel eksternal untuk menambahkannya ke datashare di bagian berikut. Ini adalah langkah awal. Jika Anda sudah melakukan ini, Anda dapat melewati bagian ini.

1. Pada produsen, buat skema eksternal yang mereferensikan data lake data yang disimpan di Amazon S3. Skema eksternal mereferensikan Katalog Data AWS Glue. Peran dan wilayah dalam sampel adalah contoh:

   ```
   CREATE EXTERNAL SCHEMA external_schema_name FROM DATA CATALOG
   DATABASE 'glue_database_name'
   IAM_ROLE 'arn:aws:iam::123456789012:role/sample-role'
   REGION 'us-east-1';
   ```

1. Buat tabel data lake dalam skema eksternal.

   ```
   CREATE EXTERNAL TABLE external_schema_name.sales(
   salesid INTEGER,
   sellerid INTEGER,
   buyerid INTEGER,
   saledate DATE,
   pricepaid DECIMAL(8,2))
   ROW FORMAT delimited
   FIELDS TERMINATED BY '\t'
   STORED AS textfile
   LOCATION 's3://redshift-downloads/tickit/spectrum/sales/';
   ```

   Sampel termasuk`LOCATION`. Itu harus dalam formulir`s3://{bucket_name}/{folder}/`, di mana folder ditentukan. Folder harus memiliki panjang setidaknya satu karakter. Anda dapat secara opsional menyertakan subfolder. Untuk melihat contoh tambahan untuk membuat tabel di data lake, lihat [Contoh](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_TABLE_examples.html) untuk MEMBUAT TABEL EKSTERNAL.
**catatan**  
Berbagi hanya didukung untuk tabel di mana peran IAM pada produser memiliki akses SELECT di atas meja.

## Tambahkan tampilan pengikatan akhir yang mereferensikan tabel data lake ke datashare
<a name="create-datashare-console-external-views-how-to"></a>

Saat Anda membuat tabel berdasarkan skema eksternal dari katalog AWS data, dan Anda ingin menambahkannya ke datashare, cara paling umum untuk melakukannya adalah dengan menambahkan tampilan pengikatan akhir Redshift yang mereferensikan tabel yang Anda buat, yang berisi data dari data lake. Prosedur berikut menunjukkan langkah-langkahnya:

1. Buat tampilan pengikatan akhir yang mereferensikan tabel eksternal yang Anda buat sebelumnya:

   ```
   CREATE VIEW lbv AS 
   select * from external_schema_name.sales, other_schema.t1
   WITH NO SCHEMA BINDING;
   ```

1. Tambahkan skema tampilan ke datashare. Ini adalah skema lokal yang berisi tampilan pengikatan akhir. 

   ```
   ALTER DATASHARE dsx_datashare ADD SCHEMA public;
   ```

1. Tambahkan skema yang berisi tabel yang direferensikan oleh tampilan pengikatan akhir ke datashare. Menambahkan skema diperlukan untuk setiap tabel dasar yang direferensikan dalam tampilan yang ditambahkan ke datashare, apakah skema berisi objek database lokal atau objek dari danau data. Perhatikan bahwa Anda harus menambahkan skema ini sebelum menambahkan tampilan pengikatan akhir.

   ```
   ALTER DATASHARE dsx_datashare ADD SCHEMA external_schema_name;
   ALTER DATASHARE dsx_datashare ADD SCHEMA other_schema;
   ```

1. Tambahkan tampilan ke datashare, menggunakan perintah SQL. Perhatikan bahwa nama tabel menyertakan awalan skema.

   ```
   ALTER DATASHARE my_datashare ADD TABLE public.lbv;
   ```

1. Konfirmasikan bahwa tampilan dan skema berhasil ditambahkan ke datashare:

   ```
   SELECT * FROM svv_datashare_objects WHERE share_name = 'my_datashare';
   ```

1. Administrator konsumen membuat database dari datashare dan kemudian memberikan penggunaan kepada pengguna konsumen.

Setelah Anda menyelesaikan langkah-langkahnya, pengguna konsumen database dengan akses ke tampilan datashare dapat melakukan kueri data.

## Tambahkan tabel data lake langsung ke datashare
<a name="create-datashare-console-external-views-add-spectrum"></a>

Menambahkan tabel dalam skema eksternal ke datashare mirip dengan menambahkan tampilan. Ini berfungsi dengan baik untuk kasus di mana konsumen ingin menanyakan tabel data lake dalam keadaan aslinya, atau jika konsumen ingin menggabungkannya ke tabel di gudang data konsumen. Langkah-langkah berikut menunjukkan cara menambahkan tabel data lake ke datashare, menggunakan SQL.

1. Buat skema eksternal dan tabel eksternal, seperti yang dijelaskan di bagian pertama topik ini.

1. 

   Temukan tabel yang ada di skema eksternal, untuk mengonfirmasi bahwa tabel yang Anda buat tersedia:

   ```
   SELECT * FROM svv_external_tables WHERE schemaname = 'external_schema_name';
   ```

1. Tambahkan skema eksternal ke datashare:

   ```
   ALTER DATASHARE my_datashare ADD SCHEMA external_schema_name;
   ```

1. Tambahkan tabel eksternal ke datashare. Perhatikan bahwa nama tabel menyertakan awalan skema:

   ```
   ALTER DATASHARE my_datashare ADD TABLE external_schema_name.sales;
   ```

1. Konfirmasikan bahwa tabel berhasil ditambahkan ke datashare:

   ```
   SELECT * FROM svv_datashare_objects WHERE share_name = 'my_datashare';
   ```

   Untuk instruksi lebih detail, lihat [Berbagi akses baca ke data dalam AWS akun](https://docs.aws.amazon.com/redshift/latest/dg/within-account.html).

1. Pada konsumen, yang merupakan database yang menerima data bersama, administrator mengaitkan datashare untuk membuat tabel bersama tersedia bagi pengguna untuk kueri. Untuk informasi selengkapnya mengenai cara melakukan langkah ini, lihat [Mengelola datashares dari akun lain sebagai konsumen](manage-datashare-other-console.html).

Setelah administrator menyelesaikan langkah-langkah, pengguna database pada konsumen dapat menulis kueri untuk mengambil data dari tabel bersama dan bergabung dengan tabel lain pada konsumen.

## Catatan penggunaan untuk menambahkan objek data lake ke datashare
<a name="create-datashare-console-external-views-considerations"></a>

Ada beberapa item yang perlu diperhatikan saat Anda menggunakan tabel dan tampilan dari data lake di datashare:
+ **Logging with AWS CloudTrail** — Akun produsen data dapat menggunakan AWS CloudTrail log untuk mengaudit saat tabel data lake yang dibagikan melalui datashare diakses:
  + **Menggunakan data log untuk mengontrol akses data** — CloudTrail Log mencatat detail tentang siapa yang mengakses tabel bersama, termasuk produsen dan konsumen data Redshift. Pengidentifikasi tersedia di `ExternalId` bidang di bawah `AssumeRole` CloudTrail log. Pemilik data dapat mengonfigurasi batasan tambahan pada akses data dalam kebijakan IAM melalui tindakan. Untuk informasi selengkapnya tentang menentukan akses data melalui kebijakan, lihat [Akses ke AWS akun yang dimiliki oleh pihak ketiga](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html).
+ **Keamanan dan izin konsumen** — Untuk tabel terdaftar Lake Formation, sumber daya Amazon S3 diamankan oleh Lake Formation dan tersedia menggunakan kredensil yang disediakan oleh Lake Formation.

## Pertimbangan penagihan untuk menambahkan objek data lake ke datashare
<a name="create-datashare-console-external-views-billing"></a>

Berikut ini merinci bagaimana biaya dikaitkan untuk menyimpan dan memindai objek data lake dalam datashare:
+ Ketika konsumen menanyakan objek bersama dari danau data, biaya pemindaian ditagih ke konsumen.
  + Saat konsumen adalah cluster yang disediakan, Redshift menggunakan Redshift Spectrum untuk memindai data Amazon S3. Oleh karena itu, biaya Spectrum ditagihkan ke akun konsumen.
  + Ketika konsumen adalah grup kerja Amazon Redshift Serverless, tidak ada biaya terpisah untuk Spectrum.
+ Biaya Amazon S3 untuk penyimpanan dan operasi, seperti daftar bucket, ditagih ke akun yang memiliki setiap bucket Amazon S3.

Untuk detail tambahan mengenai penagihan Amazon Redshift Tanpa Server, lihat [Penagihan untuk](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-billing.html) Amazon Redshift Tanpa Server. Informasi penagihan dan harga lainnya tersedia dengan harga [Amazon Redshift](https://aws.amazon.com/redshift/pricing/).

# Berbagi data di seluruh Akun AWS
<a name="across-account"></a>

Anda dapat berbagi data untuk tujuan baca di seluruh Akun AWS. Berbagi data di seluruh Akun AWS bekerja sama dengan berbagi data dalam akun. Perbedaannya adalah bahwa ada jabat tangan dua arah yang diperlukan dalam berbagi data. Akun AWS Administrator akun produsen dapat mengotorisasi akun konsumen untuk mengakses datashares atau memilih untuk tidak mengotorisasi akses apa pun. Untuk menggunakan datashare resmi, administrator akun konsumen dapat mengaitkan datashare. Administrator dapat mengaitkan datashare dengan keseluruhan Akun AWS atau dengan cluster tertentu di akun konsumen, atau menolak datashare. Untuk informasi selengkapnya tentang berbagi data dalam akun, lihat[Berbagi akses baca ke data dalam Akun AWS](within-account.md).

Datashare dapat memiliki konsumen data yang merupakan ruang nama di akun yang sama atau berbeda. Akun AWS Anda tidak perlu membuat datashares terpisah untuk berbagi dalam akun dan berbagi lintas akun.

Untuk berbagi data lintas akun, baik produsen maupun cluster konsumen harus dienkripsi.

Saat berbagi data dengan Akun AWS, administrator produsen berbagi dengan Akun AWS sebagai entitas. Administrator konsumen dapat memutuskan namespace mana di akun konsumen yang mendapatkan akses ke datashare.

**Topics**
+ [tindakan administrator produser](producer-cluster-admin.md)
+ [Tindakan administrator akun konsumen](consumer-account-admin.md)
+ [tindakan administrator konsumen](consumer-cluster-admin.md)

# tindakan administrator produser
<a name="producer-cluster-admin"></a>

Dengan Amazon Redshift, Anda dapat melakukan tugas administratif pada kluster produsen untuk mengelola konsumsi data dan pemrosesan pemuatan.

**Jika Anda adalah administrator produser atau pemilik database** - ikuti langkah-langkah berikut:

1. Buat datashares di cluster Anda dan tambahkan objek datashare ke datashares. Untuk langkah-langkah lebih rinci tentang cara membuat datashares dan menambahkan objek datashare ke datashares, lihat. [Berbagi akses baca ke data dalam Akun AWS](within-account.md) Untuk informasi tentang CREATE DATASHARE dan ALTER DATASHARE, lihat dan. [BUAT DATASHARE](r_CREATE_DATASHARE.md) [MENGUBAH DATASHARE](r_ALTER_DATASHARE.md)

   Contoh berikut menambahkan objek datashare yang berbeda ke datashare. `salesshare`

   ```
   -- Add schema to datashare
   ALTER DATASHARE salesshare ADD SCHEMA PUBLIC;
   
   -- Add table under schema to datashare
   ALTER DATASHARE salesshare ADD TABLE public.tickit_sales_redshift;
   
   -- Add view to datashare 
   ALTER DATASHARE salesshare ADD TABLE public.sales_data_summary_view;
   
   -- Add all existing tables and views under schema to datashare (does not include future table)
   ALTER DATASHARE salesshare ADD ALL TABLES in schema public;
   ```

   Anda juga dapat menggunakan konsol Amazon Redshift untuk membuat atau mengedit datashares. Untuk informasi selengkapnya, lihat [Buat datashare](datashare-creation.md#create-datashare-console) dan [Mengedit datashares yang dibuat di akun Anda](manage-datashare-existing-console.md#edit-datashare-console).

1. Delegasikan izin untuk beroperasi di datashare. Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

   Contoh berikut memberikan izin untuk `dbuser` aktif. `salesshare`

   ```
   GRANT ALTER, SHARE ON DATASHARE salesshare TO dbuser;
   ```

   Superuser cluster dan pemilik datashare dapat memberikan atau mencabut izin modifikasi pada datashare kepada pengguna tambahan.

1. Tambahkan konsumen ke atau hapus konsumen dari datashares. Contoh berikut menambahkan Akun AWS ID ke`salesshare`. Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

   ```
   GRANT USAGE ON DATASHARE salesshare TO ACCOUNT '123456789012';
   ```

   Anda hanya dapat memberikan izin kepada satu konsumen data dalam pernyataan GRANT.

   Superuser cluster dan pemilik objek datashare, atau pengguna yang memiliki izin SHARE pada datashare, dapat menambahkan konsumen ke atau menghapus konsumen dari datashare. Untuk melakukannya, mereka menggunakan PENGGUNAAN HIBAH atau MENCABUT PENGGUNAAN.

   Anda juga dapat menggunakan konsol Amazon Redshift untuk menambah atau menghapus data konsumen untuk datashares. Untuk informasi selengkapnya, lihat [Tambahkan konsumen data ke datashares](datashare-creation.md#add-data-consumer-console) dan [Menghapus konsumen data dari datashares](manage-datashare-existing-console.md#remove-data-consumer-console).

1. (Opsional) Cabut akses ke datashare dari Akun AWS jika Anda tidak ingin berbagi data dengan konsumen lagi.

   ```
   REVOKE USAGE ON DATASHARE salesshare FROM ACCOUNT '123456789012';
   ```

**Jika Anda seorang administrator akun produser** - ikuti langkah-langkah berikut:

Setelah memberikan penggunaan ke Akun AWS, status datashare adalah. `pending_authorization` Administrator akun produsen harus mengotorisasi datashares menggunakan konsol Amazon Redshift dan memilih konsumen data.

Masuk ke [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/). Kemudian pilih konsumen data mana yang akan diotorisasi untuk mengakses datashares atau untuk menghapus otorisasi dari. Konsumen data resmi menerima pemberitahuan untuk mengambil tindakan pada datashares. Jika Anda menambahkan namespace sebagai konsumen data, Anda tidak perlu melakukan otorisasi. Setelah konsumen data diotorisasi, mereka dapat mengakses objek datashare dan membuat database konsumen untuk menanyakan data. Untuk informasi selengkapnya, lihat [Mengotorisasi atau menghapus otorisasi dari datashare](authorize-datashare-console.md).

## Berbagi izin menulis ke data di seluruh akun
<a name="within-account-multi-warehouse-consumer-associate"></a>

Dengan Amazon Redshift, Anda dapat berbagi data di seluruh AWS akun dan memberikan izin menulis, memungkinkan kolaborasi dan berbagi data antar tim atau organisasi. Berbagi data lintas akun memungkinkan Anda membuat akun penyedia data yang membuat dan mengelola basis data, skema, dan tabel, yang kemudian dapat dibagikan dengan aman dengan akun konsumen data. Bagian berikut menunjukkan proses mengonfigurasi berbagi data lintas akun dan memberikan akses tulis di Amazon Redshift.

# Tindakan administrator akun konsumen
<a name="consumer-account-admin"></a>

Dengan Amazon Redshift, Anda dapat mengelola akun konsumen dan mengontrol akses mereka ke sumber daya pergudangan data Anda.

**Jika Anda seorang administrator akun konsumen** — ikuti langkah-langkah berikut:

Untuk mengaitkan satu atau beberapa rangkaian data yang dibagikan dari akun lain dengan seluruh Akun AWS atau ruang nama tertentu di akun, gunakan konsol Amazon Redshift.

Masuk ke [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/). Kemudian, kaitkan satu atau beberapa datashares yang dibagikan dari akun lain dengan seluruh Akun AWS atau ruang nama tertentu di akun Anda. Untuk informasi selengkapnya, lihat [Mengaitkan datashare dari yang berbeda Akun AWS di Amazon Redshift](writes-associating.md).

Setelah ruang nama Akun AWS atau spesifik dikaitkan, datashares menjadi tersedia untuk dikonsumsi. Anda juga dapat mengubah asosiasi datashare kapan saja. Saat mengubah asosiasi dari ruang nama individual ke ruang nama Akun AWS, Amazon Redshift menimpa ruang nama dengan informasi tersebut. Akun AWS Saat mengubah asosiasi dari ruang nama Akun AWS ke ruang nama tertentu, Amazon Redshift menimpa Akun AWS informasi dengan informasi namespace. Semua ruang nama di akun mendapatkan akses ke data.

# tindakan administrator konsumen
<a name="consumer-cluster-admin"></a>

Dengan Amazon Redshift, Anda dapat melakukan tugas administratif pada kluster konsumen untuk mengelola konsumsi data dan pemrosesan pemuatan.

**Jika Anda seorang administrator konsumen** - ikuti langkah-langkah berikut:

1. Buat daftar datashares yang tersedia untuk Anda dan lihat konten datashares. Konten datashares hanya tersedia ketika administrator produsen telah mengotorisasi datashares dan administrator konsumen telah menerima dan mengaitkan datashares. Untuk informasi selengkapnya, lihat [DESC DATASHARE](r_DESC_DATASHARE.md) dan [TAMPILKAN DATASHARES](r_SHOW_DATASHARES.md).

   Contoh berikut menampilkan informasi datashares inbound dari namespace produsen tertentu. Ketika Anda menjalankan DESC DATAHSARE sebagai administrator konsumen, Anda harus menentukan NAMESPACE dan ID akun untuk melihat datashares masuk. Untuk datashares keluar, tentukan nama datashare.

   ```
   SHOW DATASHARES LIKE 'sales%';
   
   share_name | share_owner | source_database | consumer_database | share_type | createdate | is_publicaccessible | share_acl | producer_account |          producer_namespace
   -----------+-------------+-----------------+-------------------+------------+------------+---------------------+-----------+------------------+---------------------------------------
   salesshare |             |                 |                   | INBOUND    |            |        t            |           | 123456789012    | 'dd8772e1-d792-4fa4-996b-1870577efc0d'
   ```

   ```
   DESC DATASHARE salesshare OF ACCOUNT '123456789012' NAMESPACE 'dd8772e1-d792-4fa4-996b-1870577efc0d';
   
   
    producer_account |          producer_namespace          | share_type | share_name | object_type |           object_name
   ------------------+--------------------------------------+------------+------------+-------------+---------------------------------
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | table       | public.tickit_users_redshift
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | table       | public.tickit_venue_redshift
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | table       | public.tickit_category_redshift
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | table       | public.tickit_date_redshift
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | table       | public.tickit_event_redshift
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | table       | public.tickit_listing_redshift
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | table       | public.tickit_sales_redshift
    123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d | INBOUND    | salesshare | schema      | public
   (8 rows)
   ```

   Hanya superuser cluster yang bisa melakukan ini. Anda juga dapat menggunakan SVV\$1DATASHARES untuk melihat datashares dan SVV\$1DATASHARE\$1OBJECTS untuk melihat objek dalam datashare.

   Contoh berikut menampilkan datashares masuk dalam cluster konsumen.

   ```
   SELECT * FROM SVV_DATASHARES WHERE share_name LIKE 'sales%';
   
   share_name | share_owner | source_database | consumer_database | share_type | createdate | is_publicaccessible | share_acl | producer_account |          producer_namespace
   -----------+-------------+-----------------+-------------------+------------+------------+---------------------+-----------+------------------+---------------------------------------
   salesshare |             |                 |                   | INBOUND    |            |        t            |           | 123456789012      | 'dd8772e1-d792-4fa4-996b-1870577efc0d'
   ```

   ```
   SELECT * FROM SVV_DATASHARE_OBJECTS WHERE share_name LIKE 'sales%';
    share_type | share_name | object_type |           object_name           | producer_account |          producer_namespace
   ------------+------------+-------------+---------------------------------+------------------+--------------------------------------
    INBOUND    | salesshare | table       | public.tickit_users_redshift    | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
    INBOUND    | salesshare | table       | public.tickit_venue_redshift    | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
    INBOUND    | salesshare | table       | public.tickit_category_redshift | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
    INBOUND    | salesshare | table       | public.tickit_date_redshift     | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
    INBOUND    | salesshare | table       | public.tickit_event_redshift    | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
    INBOUND    | salesshare | table       | public.tickit_listing_redshift  | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
    INBOUND    | salesshare | table       | public.tickit_sales_redshift    | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
    INBOUND    | salesshare | schema      | public                          | 123456789012     | dd8772e1-d792-4fa4-996b-1870577efc0d
   (8 rows)
   ```

1. Buat database lokal yang merujuk ke datashares. Tentukan NAMESPACE dan ID akun saat membuat database dari datashare. Untuk informasi selengkapnya, lihat [BUAT BASIS DATA](r_CREATE_DATABASE.md).

   ```
   CREATE DATABASE sales_db FROM DATASHARE salesshare OF ACCOUNT '123456789012' NAMESPACE 'dd8772e1-d792-4fa4-996b-1870577efc0d';
   ```

   Jika Anda ingin kontrol lebih terperinci atas akses ke objek dalam database lokal, gunakan klausa WITH PERMISSIONS saat membuat database. Ini memungkinkan Anda memberikan izin tingkat objek untuk objek dalam database pada langkah 4. 

   ```
   CREATE DATABASE sales_db WITH PERMISSIONS FROM DATASHARE salesshare OF ACCOUNT '123456789012' NAMESPACE 'dd8772e1-d792-4fa4-996b-1870577efc0d';
   ```

   Anda dapat melihat database yang Anda buat dari datashare dengan menanyakan tampilan. [SVV\$1REDSHIFT\$1DATABASES](r_SVV_REDSHIFT_DATABASES.md) Anda dapat terhubung ke database ini secara langsung, atau Anda dapat terhubung ke database lokal di cluster konsumen Anda dan melakukan kueri lintas basis data untuk menanyakan data dari database datashare. Anda tidak dapat membuat datashare di atas objek database yang dibuat dari datashare yang ada. Namun, Anda dapat menyalin data ke tabel terpisah di cluster konsumen, melakukan pemrosesan apa pun yang diperlukan, dan kemudian membagikan objek baru yang dibuat.

1. (Opsional) Buat skema eksternal untuk merujuk dan menetapkan izin granular ke skema tertentu dalam database konsumen yang diimpor di cluster konsumen. Untuk informasi selengkapnya, lihat [BUAT SKEMA EKSTERNAL](r_CREATE_EXTERNAL_SCHEMA.md).

   ```
   CREATE EXTERNAL SCHEMA sales_schema FROM REDSHIFT DATABASE 'sales_db' SCHEMA 'public';
   ```

1. Berikan izin pada database dan referensi skema yang dibuat dari datashares kepada pengguna atau peran dalam cluster konsumen sesuai kebutuhan. Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

   ```
   GRANT USAGE ON DATABASE sales_db TO Bob;
   ```

   ```
   GRANT USAGE ON SCHEMA sales_schema TO ROLE Analyst_role;
   ```

   Jika Anda membuat database tanpa IZIN, Anda hanya dapat menetapkan izin pada seluruh database yang dibuat dari datashare ke pengguna atau peran Anda. Dalam beberapa kasus, Anda memerlukan kontrol halus pada subset objek database yang dibuat dari datashare. Jika demikian, Anda dapat membuat referensi skema eksternal yang menunjuk ke skema tertentu di datashare, seperti yang dijelaskan pada langkah sebelumnya. Anda kemudian dapat memberikan izin granular di tingkat skema. Anda juga dapat membuat tampilan pengikatan akhir di atas objek bersama dan menggunakannya untuk menetapkan izin granular. Anda juga dapat mempertimbangkan agar cluster produsen membuat datashares tambahan untuk Anda dengan perincian yang diperlukan. Anda dapat membuat referensi skema sebanyak mungkin ke database yang dibuat dari datashare yang Anda butuhkan.

   Jika Anda membuat database dengan DENGAN IZIN di langkah 2, Anda harus menetapkan izin tingkat objek untuk objek dalam database bersama. Pengguna dengan hanya izin PENGGUNAAN tidak dapat mengakses objek apa pun dalam database yang dibuat dengan IZIN DENGAN IZIN sampai mereka diberikan izin tingkat objek tambahan..

   ```
   GRANT SELECT ON sales_db.public.tickit_sales_redshift to Bob;
   ```

1. Kueri data dalam objek bersama di datashares.

   Pengguna dan peran dengan izin pada basis data dan skema konsumen pada kluster konsumen dapat menjelajahi dan menavigasi metadata objek yang dibagikan. Mereka juga dapat menjelajahi dan menavigasi objek lokal di cluster konsumen. Untuk melakukan ini, gunakan driver JDBC atau ODBC atau tampilan SVV\$1ALL dan SVV\$1REDSHIFT.

   Cluster produser mungkin memiliki banyak skema dalam database, tabel, dan tampilan dalam setiap skema. Pengguna di sisi konsumen hanya dapat melihat subset objek yang tersedia melalui datashare. Pengguna ini tidak dapat melihat semua metadata dari cluster produsen. Pendekatan ini membantu memberikan kontrol keamanan metadata granular dengan berbagi data.

   Anda terus terhubung ke database cluster lokal. Tapi sekarang, Anda juga dapat membaca dari database dan skema yang dibuat dari datashare menggunakan notasi database.schema.table tiga bagian. Anda dapat melakukan kueri yang menjangkau setiap dan semua database yang terlihat oleh Anda. Ini bisa berupa database lokal pada cluster atau database yang dibuat dari datashares. Cluster konsumen tidak dapat terhubung ke database yang dibuat dari datashares.

   Anda dapat mengakses data menggunakan kualifikasi penuh. Untuk informasi selengkapnya, lihat [Contoh kueri lintas basis data](cross-database_example.md).

   ```
   SELECT * FROM sales_db.public.tickit_sales_redshift;
   ```

   Anda hanya dapat menggunakan pernyataan SELECT pada objek bersama. Namun, Anda dapat membuat tabel di cluster konsumen dengan menanyakan data dari objek bersama di database lokal yang berbeda.

   Selain melakukan kueri, konsumen dapat membuat tampilan pada objek bersama. Hanya tampilan yang mengikat akhir dan tampilan terwujud yang didukung. Amazon Redshift tidak mendukung tampilan reguler pada data bersama. Tampilan yang dibuat konsumen dapat menjangkau beberapa database lokal atau database yang dibuat dari datashares. Untuk informasi selengkapnya, lihat [CREATE VIEW](r_CREATE_VIEW.md).

   ```
   // Connect to a local cluster database
                  
   // Create a view on shared objects and access it. 
   CREATE VIEW sales_data 
   AS SELECT * 
   FROM sales_db.public.tickit_sales_redshift 
   WITH NO SCHEMA BINDING;
   
   SELECT * FROM sales_data;
   ```

# Berbagi data di seluruh Wilayah AWS
<a name="across-region"></a>

Anda dapat berbagi data untuk tujuan baca di seluruh klaster Amazon Redshift di. Wilayah AWS Dengan berbagi data lintas wilayah, Anda dapat berbagi data Wilayah AWS tanpa perlu menyalin data secara manual. Anda tidak perlu membongkar data Anda ke Amazon S3 dan menyalin data ke cluster Amazon Redshift baru atau melakukan salinan snapshot lintas wilayah.

Dengan berbagi data lintas wilayah, Anda dapat berbagi data di seluruh kluster dalam hal yang sama Akun AWS, atau berbeda Akun AWS bahkan ketika klaster berada di Wilayah yang berbeda. Saat berbagi data dengan kluster Amazon Redshift yang sama Akun AWS tetapi berbeda Wilayah AWS, ikuti alur kerja yang sama seperti berbagi data dalam file. Akun AWS Untuk informasi selengkapnya, lihat [Berbagi akses baca ke data dalam Akun AWS](within-account.md).

Jika kluster berbagi data berbeda Akun AWS dan Wilayah AWS, Anda dapat mengikuti alur kerja yang sama seperti berbagi data di seluruh Akun AWS dan menyertakan asosiasi tingkat Region pada cluster konsumen. Berbagi data lintas wilayah mendukung asosiasi datashare dengan seluruh Akun AWS, keseluruhan Wilayah AWS, atau ruang nama tertentu dalam file. Wilayah AWS Untuk informasi selengkapnya tentang berbagi data di seluruh Akun AWS, lihat[Berbagi data di seluruh Akun AWS](across-account.md).

Saat mengkonsumsi data dari Wilayah yang berbeda, konsumen membayar biaya transfer data Lintas Wilayah dari wilayah produsen ke Wilayah konsumen.

Untuk menggunakan datashare, administrator akun konsumen dapat mengaitkan datashare dengan salah satu dari tiga cara berikut.
+ Asosiasi dengan keseluruhan yang Akun AWS mencakup semua Wilayah AWS
+ Asosiasi dengan spesifik Wilayah AWS dalam Akun AWS
+ Asosiasi dengan ruang nama tertentu dalam Wilayah AWS

Ketika administrator memilih keseluruhan Akun AWS, semua ruang nama yang ada dan yang akan datang Wilayah AWS di berbagai akun memiliki akses ke datashares. Administrator akun konsumen juga dapat memilih ruang nama tertentu Wilayah AWS atau dalam Wilayah untuk memberi mereka akses ke datashares.

**Jika Anda adalah administrator produsen atau pemilik database**, buat datashare, tambahkan objek database dan konsumen data ke datashare, dan berikan izin kepada konsumen data. Untuk informasi selengkapnya, lihat [tindakan administrator produser](producer-cluster-admin.md).

**Jika Anda adalah administrator akun produser**, otorisasi rangkaian data menggunakan AWS Command Line Interface (AWS CLI) atau konsol Amazon Redshift dan pilih konsumen data. 

**Jika Anda seorang administrator akun konsumen** — ikuti langkah-langkah berikut:

Untuk mengaitkan satu atau beberapa rangkaian data yang dibagikan dari akun lain ke seluruh Akun AWS atau spesifik Wilayah AWS atau ruang nama Anda dalam, gunakan konsol Amazon Wilayah AWS Redshift. 

Dengan berbagi data lintas wilayah, Anda dapat menambahkan cluster tertentu Wilayah AWS menggunakan konsol AWS Command Line Interface (AWS CLI) atau Amazon Redshift.

Untuk menentukan satu atau beberapa AWS Wilayah, Anda dapat menggunakan perintah `associate-data-share-consumer` CLI dengan opsi opsional`consumer-region`.

Dengan CLI, contoh berikut mengaitkan `Salesshare` dengan keseluruhan Akun AWS dengan opsi. `associate-entire-account` Anda hanya dapat mengasosiasikan satu Wilayah pada satu waktu.

```
aws redshift associate-data-share-consumer
--region {PRODUCER_REGION}
--data-share-arn arn:aws:redshift:{PRODUCER_REGION}:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/Salesshare
--associate-entire-account
```

Contoh berikut mengaitkan `Salesshare` dengan Wilayah Timur AS (Ohio) (`us-east-2`).

```
aws redshift associate-data-share-consumer
--region {PRODUCER_REGION}
--data-share-arn arn:aws:redshift:{PRODUCER_REGION}:0123456789012:datashare:{PRODUCER_CLUSTER_NAMESPACE}/Salesshare
--consumer-region 'us-east-2'
```

Contoh berikut mengaitkan `Salesshare` dengan namespace konsumen tertentu di wilayah Asia Pasifik (Sydney) lainnya Akun AWS (). `ap-southeast-2`

```
aws redshift associate-data-share-consumer
--data-share-arn arn:aws:redshift:{PRODUCER_REGION}:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/Salesshare
--consumer-arn 'arn:aws:redshift:ap-southeast-2:{CONSUMER_ACCOUNT}:namespace:{ConsumerImmutableClusterId}'
```

Anda dapat menggunakan konsol Amazon Redshift untuk mengaitkan datashares dengan seluruh Akun AWS atau spesifik Wilayah AWS atau ruang nama Anda dalam file. Wilayah AWS Untuk melakukan ini, masuk ke [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/). Kemudian kaitkan satu atau lebih datashares yang dibagikan dari akun lain dengan keseluruhan Akun AWS, keseluruhan Wilayah AWS, atau namespace tertentu dalam file. Wilayah AWS Untuk informasi selengkapnya, lihat [Mengaitkan datashare dari yang berbeda Akun AWS di Amazon Redshift](writes-associating.md).

Setelah ruang nama Akun AWS atau spesifik dikaitkan, datashares menjadi tersedia untuk dikonsumsi. Anda juga dapat mengubah asosiasi datashare kapan saja. Saat mengubah asosiasi dari ruang nama individual ke ruang nama Akun AWS, Amazon Redshift menimpa ruang nama dengan informasi tersebut. Akun AWS Saat mengubah asosiasi dari ruang nama Akun AWS ke ruang nama tertentu, Amazon Redshift menimpa Akun AWS informasi dengan informasi namespace. Saat mengubah asosiasi dari keseluruhan Akun AWS ke AWS Wilayah dan ruang nama tertentu, Amazon Redshift menimpa informasi dengan informasi Wilayah Akun AWS dan namespace tertentu.

**Jika Anda seorang administrator konsumen**, Anda dapat membuat database lokal yang merujuk ke datashares dan memberikan izin pada database yang dibuat dari datashares ke pengguna atau peran dalam cluster konsumen sesuai kebutuhan. Anda juga dapat membuat tampilan pada objek bersama dan membuat skema eksternal untuk merujuk dan menetapkan izin granular ke skema tertentu dalam database konsumen yang diimpor di cluster konsumen. Untuk informasi selengkapnya, lihat [tindakan administrator konsumen](consumer-cluster-admin.md).

# Mengelola pengendalian biaya untuk berbagi data lintas wilayah
<a name="cross-region-billing"></a>

Dengan Amazon Redshift, Anda dapat mengelola kontrol biaya untuk berbagi data lintas wilayah dengan mengonfigurasi berbagi data untuk membatasi jumlah data yang ditransfer antar Wilayah. AWS Mengelola kontrol biaya untuk berbagi data lintas wilayah memungkinkan Anda menetapkan batas transfer data, memantau penggunaan transfer data, dan menerima pemberitahuan saat mendekati atau melampaui batas tersebut.

Saat mengkonsumsi data dari Wilayah yang berbeda, konsumen membayar biaya transfer data Lintas Wilayah dari Wilayah produsen ke Wilayah konsumen. Harga transfer data berbeda untuk Wilayah yang berbeda. Biaya didasarkan pada byte data yang dipindai untuk setiap kueri yang berhasil dijalankan. Untuk informasi selengkapnya tentang harga Amazon Redshift, lihat harga [Amazon Redshift](https://aws.amazon.com/redshift/pricing/).

Anda dikenakan biaya untuk jumlah byte, dibulatkan ke megabyte berikutnya, dengan minimum 10MB per kueri. Anda dapat mengatur kontrol biaya pada penggunaan kueri dan melihat jumlah data yang ditransfer per kueri di klaster Anda.

Untuk memantau dan mengontrol penggunaan dan biaya terkait penggunaan berbagi data lintas wilayah, Anda dapat membuat batas penggunaan harian, mingguan, bulanan, dan menentukan tindakan yang dilakukan Amazon Redshift secara otomatis jika batas tersebut tercapai untuk membantu mempertahankan anggaran Anda dengan prediktabilitas.

Bergantung pada batas penggunaan yang Anda tetapkan, tindakan yang dilakukan Amazon Redshift dapat berupa mencatat peristiwa ke tabel sistem, mengirim CloudWatch alarm, dan memberi tahu administrator dengan Amazon SNS, atau menonaktifkan berbagi data lintas wilayah untuk penggunaan lebih lanjut.

Untuk membuat batas penggunaan di konsol Amazon Redshift, pilih **Konfigurasikan batas penggunaan** di bawah **Tindakan** untuk klaster Anda. **Anda dapat memantau tren penggunaan dan mendapatkan peringatan tentang penggunaan yang melebihi batas yang ditentukan dengan CloudWatch metrik yang dibuat secara otomatis dari tab **Performa atau Pemantauan Cluster**.** Anda juga dapat membuat, memodifikasi, dan menghapus batas penggunaan secara terprogram menggunakan AWS CLI atau operasi Amazon Redshift API. 

# Berbagi data Amazon Redshift berlisensi di AWS Data Exchange
<a name="adx-getting-started"></a>

Saat membuat AWS Data Exchange rangkaian data dan menambahkannya ke AWS Data Exchange produk, penyedia dapat melisensikan data di Amazon Redshift yang dapat ditemukan, berlangganan, dan menanyakan data konsumen di up-to-date Amazon Redshift saat mereka memiliki langganan aktif. AWS Data Exchange 

Dengan AWS Data Exchange datashares ditambahkan ke suatu AWS Data Exchange produk, konsumen secara otomatis memiliki akses ke datashares produk ketika langganan mereka dimulai dan mempertahankan akses mereka selama langganan mereka aktif.

**Topics**
+ [Bekerja dengan AWS Data Exchange datashares sebagai produser](adx-getting-started-producer.md)
+ [Bekerja dengan AWS Data Exchange datashares sebagai konsumen](#adx-getting-started-consumer)

# Bekerja dengan AWS Data Exchange datashares sebagai produser
<a name="adx-getting-started-producer"></a>

Dengan Amazon Redshift, Anda dapat berbagi produk data langsung dengan produsen dengan AWS Data Exchange membuat dan mengelola datashares. 

**Jika Anda administrator produser, ikuti langkah-langkah berikut untuk mengelola rangkaian AWS Data Exchange data di konsol Amazon Redshift:**

1. Buat datashares di cluster Anda untuk berbagi data AWS Data Exchange dan memberikan akses AWS Data Exchange ke datashares.

   Superuser cluster dan pemilik database dapat membuat datashares. Setiap datashare dikaitkan dengan database selama pembuatan. Hanya objek dari database yang dapat dibagikan dalam datashare itu. Beberapa datashares dapat dibuat pada database yang sama dengan granularitas objek yang sama atau berbeda. Tidak ada batasan jumlah datashares yang dapat Anda buat di cluster.

   Anda juga dapat menggunakan konsol Amazon Redshift untuk membuat datashares. Untuk informasi selengkapnya, lihat [Buat datashare](datashare-creation.md#create-datashare-console).

   Gunakan opsi MANAGEDBY ADX untuk secara implisit memberikan akses datashare ke saat menjalankan pernyataan CREATE DATASHARE. AWS Data Exchange Ini menunjukkan bahwa AWS Data Exchange mengelola datashare ini. Anda hanya dapat menggunakan opsi ADX MANAGEDBY ketika Anda membuat datashare baru. Anda tidak dapat menggunakan pernyataan ALTER DATASHARE untuk memodifikasi datashare yang ada untuk menambahkan opsi ADX MANAGEDBY. Setelah datashare dibuat dengan opsi ADX MANAGEDBY, hanya AWS Data Exchange dapat mengakses dan mengelola datashare.

   ```
   CREATE DATASHARE salesshare
   [[SET] MANAGEDBY [=] {ADX} ];
   ```

1. Tambahkan objek ke datashares. Administrator produser terus mengelola objek datashare yang tersedia dalam datashare. AWS Data Exchange 

   Untuk menambahkan objek ke datashare, tambahkan skema sebelum menambahkan objek. Saat Anda menambahkan skema, Amazon Redshift tidak menambahkan semua objek di bawahnya. Anda harus menambahkannya secara eksplisit. Untuk informasi selengkapnya, lihat [MENGUBAH DATASHARE](r_ALTER_DATASHARE.md).

   ```
   ALTER DATASHARE salesshare ADD SCHEMA PUBLIC;
   ALTER DATASHARE salesshare ADD TABLE public.tickit_sales_redshift;
   ALTER DATASHARE salesshare ADD ALL TABLES IN SCHEMA PUBLIC;
   ```

   Anda juga dapat menambahkan tampilan ke datashare.

   ```
   CREATE VIEW public.sales_data_summary_view AS SELECT * FROM public.tickit_sales_redshift;
   ALTER DATASHARE salesshare ADD TABLE public.sales_data_summary_view;
   ```

   Gunakan ALTER DATASHARE untuk berbagi skema, dan tabel, tampilan, dan fungsi dalam skema tertentu. Superusers, pemilik datashare, atau pengguna yang memiliki ALTER atau ALL izin pada datashare dapat mengubah datashare untuk menambahkan objek ke atau menghapus objek dari itu. Pengguna harus memiliki izin untuk menambah atau menghapus objek dari datashare. Pengguna juga harus menjadi pemilik objek atau memiliki izin SELECT, USE, atau SEMUA pada objek.

   Gunakan klausa INCLUDENEW untuk menambahkan tabel baru, tampilan, atau fungsi yang ditentukan pengguna SQL (UDFs) yang dibuat dalam skema tertentu ke datashare. Hanya pengguna super yang dapat mengubah properti ini untuk setiap pasangan skema rangkaian data.

   ```
   ALTER DATASHARE salesshare ADD SCHEMA PUBLIC;
   ALTER DATASHARE salesshare SET INCLUDENEW = TRUE FOR SCHEMA PUBLIC;
   ```

   Anda juga dapat menggunakan konsol Amazon Redshift untuk menambah atau menghapus objek dari datashares. Lihat informasi selengkapnya di [Tambahkan objek datashare ke datashares](datashare-creation.md#add-datashare-object-console), [Menghapus objek datashare dari datashares](manage-datashare-existing-console.md#remove-datashare-object-console), dan [Mengedit AWS Data Exchange datashares](manage-adx-datashare-console.md#edit-adx-datashare-console).

1. Untuk mengotorisasi akses ke datashares AWS Data Exchange, lakukan salah satu hal berikut:
   + Secara eksplisit mengotorisasi akses ke datashare AWS Data Exchange dengan menggunakan kata kunci di API. `ADX` `aws redshift authorize-data-share` Hal ini memungkinkan AWS Data Exchange untuk mengenali datashare di akun layanan dan mengelola asosiasi konsumen ke datashare.

     ```
     aws redshift authorize-data-share 
     --data-share-arn arn:aws:redshift:us-east-1:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/salesshare 
     --consumer-identifier ADX
     ```

     Anda dapat menggunakan kunci bersyarat `ConsumerIdentifier` `DeauthorizeDataShare` APIs untuk `AuthorizeDataShare` dan secara eksplisit mengizinkan atau menolak AWS Data Exchange untuk melakukan panggilan ke keduanya APIs dalam kebijakan IAM.

------
#### [ JSON ]

****  

     ```
     {
         "Version":"2012-10-17",		 	 	 
         "Statement": [
             {
                 "Sid": "VisualEditor0",
                 "Effect": "Deny",
                 "Action": [
                     "redshift:AuthorizeDataShare",
                     "redshift:DeauthorizeDataShare"
                 ],
                 "Resource": "*",
                 "Condition": {
                     "StringEqualsIgnoreCase": {
                         "redshift:ConsumerIdentifier": "ADX"
                     }
                 }
             }
         ]
     }
     ```

------
   + Gunakan konsol Amazon Redshift untuk mengotorisasi atau menghapus otorisasi rangkaian data. AWS Data Exchange Untuk informasi selengkapnya, lihat [Mengotorisasi atau menghapus otorisasi dari datashare](authorize-datashare-console.md).
   + Secara opsional, Anda dapat secara implisit mengotorisasi akses ke AWS Data Exchange datashare saat mengimpor datashare ke dalam kumpulan data. AWS Data Exchange 

   Untuk menghapus otorisasi akses ke AWS Data Exchange datashares, gunakan `ADX` kata kunci dalam operasi API. `aws redshift deauthorize-data-share` Dengan melakukan ini, Anda memungkinkan AWS Data Exchange untuk mengenali datashare di akun layanan dan mengelola penghapusan asosiasi dari datashare.

   ```
   aws redshift deauthorize-data-share 
   --data-share-arn arn:aws:redshift:us-east-1:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/salesshare 
   --consumer-identifier ADX
   ```

1. Daftar datashares yang dibuat di cluster dan melihat ke dalam isi datashare.

   Contoh berikut menampilkan informasi dari datashare bernama salesshare. Untuk informasi selengkapnya, lihat [DESC DATASHARE](r_DESC_DATASHARE.md) dan [TAMPILKAN DATASHARES](r_SHOW_DATASHARES.md).

   ```
   DESC DATASHARE salesshare;
                  
    producer_account  |          producer_namespace          | share_type | share_name | object_type |           object_name          |   include_new
   -------------------+--------------------------------------+------------+------------+-------------+--------------------------------+-------------------
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_users_redshift   |   
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_venue_redshift   |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_category_redshift|
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_date_redshift    |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_event_redshift   |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_listing_redshift |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | table       | public.tickit_sales_redshift   |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | schema      | public                         |  t
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND   | salesshare | view        | public.sales_data_summary_view |
   ```

   Contoh berikut menampilkan datashares keluar dalam cluster produser.

   ```
   SHOW DATASHARES LIKE 'sales%';
   ```

   Output-nya akan terlihat serupa dengan yang berikut ini.

   ```
   share_name | share_owner  | source_database | consumer_database | share_type |     createdate      | is_publicaccessible  | share_acl | producer_account |          producer_namespace 
   -----------+--------------+-----------------+-------------------+------------+---------------------+----------------------+-----------+------------------+---------------------------------------
   salesshare |    100       | dev             |                   |  OUTBOUND  | 2020-12-09 02:27:08 |          True        |           |   123456789012   | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d
   ```

   Untuk informasi selengkapnya, lihat [DESC DATASHARE](r_DESC_DATASHARE.md) dan [TAMPILKAN DATASHARES](r_SHOW_DATASHARES.md). 

   Anda juga dapat menggunakan[SVV\$1DATASHARES](r_SVV_DATASHARES.md),[SVV\$1DATASHARE\$1CONSUMER](r_SVV_DATASHARE_CONSUMERS.md), dan [SVV\$1DATASHARE\$1OBJECTS](r_SVV_DATASHARE_OBJECTS.md) untuk melihat datashares, objek dalam datashare, dan konsumen datashare.

1. Jatuhkan datashares. Kami menyarankan agar Anda tidak menghapus AWS Data Exchange datashare yang dibagikan ke orang lain Akun AWS menggunakan pernyataan DROP DATASHARE. Akun-akun tersebut akan kehilangan akses ke datashare. Tindakan ini tidak dapat diubah. Ini mungkin melanggar persyaratan penawaran produk data di AWS Data Exchange. Jika Anda ingin menghapus AWS Data Exchange datashare, lihat. [Catatan penggunaan DROP DATASHARE](r_DROP_DATASHARE.md#r_DROP_DATASHARE_usage)

   Contoh berikut menjatuhkan datashare bernama salesshare.

   ```
   DROP DATASHARE salesshare;
   ERROR:  Drop of ADX-managed datashare salesshare requires session variable datashare_break_glass_session_var to be set to value '620c871f890c49'
   ```

   Untuk memungkinkan menjatuhkan AWS Data Exchange datashare, atur variabel datashare\$1break\$1glass\$1session\$1var dan jalankan pernyataan DROP DATASHARE lagi. Jika Anda ingin menghapus AWS Data Exchange datashare, lihat. [Catatan penggunaan DROP DATASHARE](r_DROP_DATASHARE.md#r_DROP_DATASHARE_usage)

   Anda juga dapat menggunakan konsol Amazon Redshift untuk menghapus datashares. Untuk informasi selengkapnya, lihat [Menghapus AWS Data Exchange datashares yang dibuat di akun Anda](manage-adx-datashare-console.md#delete-adx-datashare-console).

1. Gunakan ALTER DATASHARE untuk menghapus objek dari datashares kapan saja dari datashare. Gunakan REVOKE USE ON untuk mencabut izin pada datashare kepada konsumen tertentu. Ini mencabut izin PENGGUNAAN pada objek dalam datashare dan langsung menghentikan akses ke semua cluster konsumen. Daftar datashares dan kueri metadata, seperti daftar database dan tabel, tidak mengembalikan objek bersama setelah akses dicabut.

   ```
   ALTER DATASHARE salesshare REMOVE TABLE public.tickit_sales_redshift;
   ```

   Anda juga dapat menggunakan konsol Amazon Redshift untuk mengedit datashares. Untuk informasi selengkapnya, lihat [Mengedit AWS Data Exchange datashares](manage-adx-datashare-console.md#edit-adx-datashare-console).

1. Berikan atau cabut PENGGUNAAN HIBAH dari AWS Data Exchange datashares. Anda tidak dapat memberikan atau mencabut PENGGUNAAN GRANT untuk AWS Data Exchange datashare. Contoh berikut menunjukkan kesalahan ketika izin GRANT USAGE diberikan ke untuk datashare yang AWS Data Exchange mengelola. Akun AWS 

   ```
   CREATE DATASHARE salesshare MANAGEDBY ADX;
   ```

   ```
   GRANT USAGE ON DATASHARE salesshare TO ACCOUNT '012345678910';
   ERROR:  Permission denied to add/remove consumer to/from datashare salesshare. Datashare consumers are managed by ADX.
   ```

   Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

**Jika Anda adalah administrator produser, ikuti langkah-langkah berikut untuk membuat dan memublikasikan produk datashare di AWS Data Exchange konsol:**
+ Ketika AWS Data Exchange datashare telah dibuat, produsen membuat dataset baru, mengimpor aset, membuat revisi, dan membuat serta menerbitkan produk baru.

  Gunakan konsol Amazon Redshift untuk membuat kumpulan data. Untuk informasi selengkapnya, lihat [Membuat kumpulan data pada AWS Data Exchange](manage-adx-datashare-console.md#create-dataset-console).

  Untuk informasi selengkapnya, lihat [Menyediakan produk data di AWS Data Exchange](https://docs.aws.amazon.com/data-exchange/latest/userguide/providing-data-sets.html).

## Bekerja dengan AWS Data Exchange datashares sebagai konsumen
<a name="adx-getting-started-consumer"></a>

Dengan Amazon Redshift, Anda dapat mengakses dan menganalisis kumpulan data AWS Data Exchange tanpa harus menyimpan atau mengelola salinan data. 

**Jika Anda seorang konsumen, ikuti langkah-langkah berikut untuk menemukan produk data yang berisi AWS Data Exchange datashares dan kueri data Amazon Redshift:**

1. Di AWS Data Exchange konsol, temukan dan berlangganan produk data yang berisi AWS Data Exchange datashares.

   Setelah langganan dimulai, Anda dapat mengakses data Amazon Redshift berlisensi yang diimpor sebagai aset ke kumpulan data yang berisi rangkaian data. AWS Data Exchange 

   Untuk informasi selengkapnya tentang cara memulai menggunakan produk data yang berisi AWS Data Exchange datashares, lihat [Berlangganan](https://docs.aws.amazon.com/data-exchange/latest/userguide/subscribe-to-data-sets.html) produk data di. AWS Data Exchange

1. Di konsol Amazon Redshift, buat cluster Amazon Redshift, jika diperlukan.

   Untuk informasi tentang cara membuat klaster, lihat [Membuat klaster](https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-console.html#create-cluster).

1. Buat daftar datashares yang tersedia untuk Anda dan lihat konten datashares. Untuk informasi selengkapnya, lihat [DESC DATASHARE](r_DESC_DATASHARE.md) dan [TAMPILKAN DATASHARES](r_SHOW_DATASHARES.md).

   Contoh berikut menampilkan informasi datashares inbound dari namespace produsen tertentu. Ketika Anda menjalankan DESC DATASHARE sebagai administrator konsumen, Anda harus menentukan opsi ACCOUNT dan NAMESPACE untuk melihat datashares masuk. 

   ```
   DESC DATASHARE salesshare of ACCOUNT '123456789012' NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   
    producer_account  |          producer_namespace          | share_type | share_name | object_type |           object_name           |   include_new
   -------------------+--------------------------------------+------------+------------+-------------+---------------------------------+------------------
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_users_redshift    |     
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_venue_redshift    |     
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_category_redshift |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_date_redshift     |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_event_redshift    |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_listing_redshift  |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | table       | public.tickit_sales_redshift    |
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | schema      | public                          |    
    123456789012      | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | INBOUND    | salesshare | view        | public.sales_data_summary_view  |
   ```

   Hanya superuser cluster yang bisa melakukan ini. Anda juga dapat menggunakan SVV\$1DATASHARES untuk melihat datashares dan SVV\$1DATASHARE\$1OBJECTS untuk melihat objek dalam datashare.

   Contoh berikut menampilkan datashares masuk dalam cluster konsumen.

   ```
   SHOW DATASHARES LIKE 'sales%';
   
   
    share_name | share_owner | source_database | consumer_database | share_type | createdate | is_publicaccessible | share_acl | producer_account |          producer_namespace
   ------------+-------------+-----------------+-------------------+------------+------------+---------------------+-----------+------------------+--------------------------------------
    salesshare |             |                 |                   | INBOUND    |            |         t           |           |   123456789012   | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d
   ```

1. Buat database lokal yang merujuk ke datashares. Anda harus menentukan opsi ACCOUNT dan NAMESPACE untuk membuat database lokal untuk datashares. AWS Data Exchange Untuk informasi selengkapnya, lihat [BUAT BASIS DATA](r_CREATE_DATABASE.md).

   ```
   CREATE DATABASE sales_db FROM DATASHARE salesshare OF ACCOUNT '123456789012' NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   ```

   Jika Anda ingin kontrol lebih terperinci atas akses ke objek dalam database lokal, gunakan klausa WITH PERMISSIONS saat membuat database. Ini memungkinkan Anda memberikan izin tingkat objek untuk objek dalam database pada langkah 6. 

   ```
   CREATE DATABASE sales_db WITH PERMISSIONS FROM DATASHARE salesshare OF ACCOUNT '123456789012' NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';
   ```

   Anda dapat melihat database yang Anda buat dari datashare dengan menanyakan tampilan. [SVV\$1REDSHIFT\$1DATABASES](r_SVV_REDSHIFT_DATABASES.md) Anda dapat terhubung ke database ini secara langsung, atau Anda dapat terhubung ke database lokal di cluster konsumen Anda dan melakukan kueri lintas basis data untuk menanyakan data dari database datashare. Anda tidak dapat membuat datashare di atas objek database yang dibuat dari datashare yang ada. Namun, Anda dapat menyalin data ke tabel terpisah di cluster konsumen, melakukan pemrosesan apa pun yang diperlukan, dan kemudian membagikan objek baru yang dibuat.

   Anda juga dapat menggunakan konsol Amazon Redshift untuk membuat database dari datashares. Untuk informasi selengkapnya, lihat [Membuat database dari datashares](query-datashare-console.md#create-database-from-datashare-console).

1. (Opsional) Buat skema eksternal untuk merujuk dan menetapkan izin granular ke skema tertentu dalam database konsumen yang diimpor di cluster konsumen. Untuk informasi selengkapnya, lihat [BUAT SKEMA EKSTERNAL](r_CREATE_EXTERNAL_SCHEMA.md).

   ```
   CREATE EXTERNAL SCHEMA sales_schema FROM REDSHIFT DATABASE 'sales_db' SCHEMA 'public';
   ```

1. Berikan izin pada database dan referensi skema yang dibuat dari datashares kepada pengguna atau peran dalam cluster konsumen sesuai kebutuhan. Untuk informasi selengkapnya, lihat [HIBAH](r_GRANT.md) atau [MENCABUT](r_REVOKE.md).

   ```
   GRANT USAGE ON DATABASE sales_db TO Bob;
   ```

   ```
   GRANT USAGE ON SCHEMA sales_schema TO ROLE Analyst_role;
   ```

    Jika Anda membuat database tanpa DENGAN IZIN, Anda hanya dapat menetapkan izin pada seluruh database yang dibuat dari datashare ke pengguna dan peran Anda. Dalam beberapa kasus, Anda memerlukan kontrol halus pada subset objek database yang dibuat dari datashare. Jika demikian, Anda dapat membuat referensi skema eksternal yang menunjuk ke skema tertentu dalam database (seperti yang dijelaskan pada langkah sebelumnya) dan memberikan izin granular pada tingkat skema. 

   Anda juga dapat membuat tampilan pengikatan akhir di atas objek bersama dan menggunakannya untuk menetapkan izin granular. Anda juga dapat mempertimbangkan agar cluster produsen membuat datashares tambahan untuk Anda dengan perincian yang diperlukan. Anda dapat membuat referensi skema sebanyak mungkin ke database yang dibuat dari datashare yang Anda butuhkan.

   Jika Anda membuat database dengan DENGAN IZIN di langkah 4, Anda harus menetapkan izin tingkat objek untuk objek dalam database bersama. Pengguna dengan hanya izin PENGGUNAAN tidak dapat mengakses objek apa pun dalam database yang dibuat dengan IZIN DENGAN IZIN sampai mereka diberikan izin tingkat objek tambahan..

   ```
   GRANT SELECT ON sales_db.public.tickit_sales_redshift to Bob;
   ```

1. Kueri data dalam objek bersama di datashares.

   Pengguna dan peran dengan izin pada basis data dan skema konsumen pada kluster konsumen dapat menjelajahi dan menavigasi metadata objek yang dibagikan. Mereka juga dapat menjelajahi dan menavigasi objek lokal di cluster konsumen. Untuk melakukan ini, mereka menggunakan driver JDBC atau ODBC, perintah SHOW, atau tampilan SVV\$1ALL dan SVV\$1REDSHIFT.

   Cluster produser mungkin memiliki banyak skema dalam database, tabel, dan tampilan dalam setiap skema. Pengguna di sisi konsumen hanya dapat melihat subset objek yang tersedia melalui datashare. Pengguna ini tidak dapat melihat seluruh metadata dari cluster produsen. Pendekatan ini membantu memberikan kontrol keamanan metadata granular dengan berbagi data.

   Anda terus terhubung ke database cluster lokal. Tapi sekarang, Anda juga dapat membaca dari database dan skema yang dibuat dari datashare menggunakan notasi database.schema.table tiga bagian. Anda dapat melakukan kueri yang menjangkau setiap dan semua database yang terlihat oleh Anda. Ini bisa berupa database lokal pada cluster atau database yang dibuat dari datashares. Atau, Anda dapat langsung terhubung ke basis data konsumen ini dan menjalankan kueri terhadap objek bersama dengan notasi sebagian.

   Anda dapat mengakses data menggunakan kualifikasi penuh. Untuk informasi selengkapnya, lihat [Contoh kueri lintas basis data](cross-database_example.md).

   ```
   SELECT * FROM sales_db.public.tickit_sales_redshift ORDER BY 1,2 LIMIT 5;
   
    salesid | listid | sellerid | buyerid | eventid | dateid | qtysold | pricepaid | commission |      saletime
   ---------+--------+----------+---------+---------+--------+---------+-----------+------------+---------------------
          1 |      1 |    36861 |   21191 |    7872 |   1875 |       4 |    728.00 |     109.20 | 2008-02-18 02:36:48
          2 |      4 |     8117 |   11498 |    4337 |   1983 |       2 |     76.00 |      11.40 | 2008-06-06 05:00:16
          3 |      5 |     1616 |   17433 |    8647 |   1983 |       2 |    350.00 |      52.50 | 2008-06-06 08:26:17
          4 |      5 |     1616 |   19715 |    8647 |   1986 |       1 |    175.00 |      26.25 | 2008-06-09 08:38:52
          5 |      6 |    47402 |   14115 |    8240 |   2069 |       2 |    154.00 |      23.10 | 2008-08-31 09:17:02
   ```

   Anda hanya dapat menggunakan pernyataan SELECT pada objek bersama. Namun, Anda dapat membuat tabel di cluster konsumen dengan menanyakan data dari objek bersama di database lokal yang berbeda.

   Selain kueri, konsumen dapat membuat tampilan pada objek bersama. Hanya tampilan yang mengikat akhir atau tampilan terwujud yang didukung. Amazon Redshift tidak mendukung tampilan reguler pada data bersama. Tampilan yang dibuat konsumen dapat menjangkau beberapa database lokal atau database yang dibuat dari datashares. Untuk informasi selengkapnya, lihat [CREATE VIEW](r_CREATE_VIEW.md).

   ```
   // Connect to a local cluster database
                  
   // Create a view on shared objects and access it. 
   CREATE VIEW sales_data 
   AS SELECT * 
   FROM sales_db.public.tickit_sales_redshift 
   WITH NO SCHEMA BINDING;
   
   SELECT * FROM sales_data;
   ```

# Memulai dengan AWS Lake Formation datashares -managed
<a name="lf-getting-started"></a>

Dengan Amazon Redshift, Anda dapat mengakses dan membagikan data langsung di seluruh AWS akun dan kluster AWS Lake Formation Amazon Redshift melalui rangkaian data yang dikelola. AWS Lake Formation Datashares memungkinkan penyedia data untuk berbagi data langsung dengan aman dari data lake Amazon S3 mereka dengan konsumen mana pun, termasuk akun lain dan AWS kluster Amazon Redshift.

# Bekerja dengan datashares yang dikelola Lake Formation sebagai produsen
<a name="lake-formation-getting-started-producer"></a>

Dengan Amazon Redshift, Anda dapat mengakses dan menganalisis data yang dibagikan melalui AWS Lake Formation datashares. AWS Lake Formation Datashares memungkinkan berbagi data yang aman di seluruh AWS akun dan kluster Amazon Redshift tanpa harus menyalin atau memindahkan data yang mendasarinya.

Berbagi data untuk AWS Lake Formation memungkinkan Anda menentukan AWS Lake Formation izin secara terpusat dari datashares Amazon Redshift dan membatasi akses pengguna ke objek dalam datashare.

Dengan Amazon Redshift, Anda dapat berbagi data langsung dengan aman di seluruh AWS akun dan kluster Amazon Redshift menggunakan AWS Lake Formation rangkaian data yang dikelola sebagai produsen. Data yang dikelola Lake Formation adalah objek yang memungkinkan Anda berbagi data langsung dari klaster Amazon Redshift dengan akun dan layanan lain. AWS 

Sebagai administrator klaster produsen atau grup kerja, ikuti langkah-langkah berikut untuk membagikan datashares ke Lake Formation:

1. Buat datashares di cluster Anda dan otorisasi AWS Lake Formation untuk mengakses datashares.

   Hanya superuser cluster dan pemilik database yang dapat membuat datashares. Setiap datashare dikaitkan dengan database selama pembuatan. Hanya objek dari database yang dapat dibagikan dalam datashare itu. Beberapa datashares dapat dibuat pada database yang sama dengan granularitas objek yang sama atau berbeda. Tidak ada batasan jumlah datashares yang dapat Anda buat di cluster.

   ```
   CREATE DATASHARE salesshare;
   ```

1. Tambahkan objek ke datashare. Cluster produser atau administrator workgroup terus mengelola objek datashare yang tersedia. Untuk menambahkan objek ke datashare, tambahkan skema sebelum menambahkan objek. Saat Anda menambahkan skema, Amazon Redshift tidak menambahkan semua objek di bawahnya. Anda harus menambahkannya secara eksplisit. Untuk informasi lebih lanjut, lihat [MENGUBAH DATASHARE](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_DATASHARE.html). 

   ```
   ALTER DATASHARE salesshare ADD SCHEMA PUBLIC;
   ALTER DATASHARE salesshare ADD TABLE public.tickit_sales_redshift;
   ALTER DATASHARE salesshare ADD ALL TABLES IN SCHEMA PUBLIC;
   ```

   Anda juga dapat menambahkan tampilan ke datashare. Tampilan yang didukung adalah tampilan standar, tampilan pengikatan akhir, dan tampilan terwujud.

   ```
   CREATE VIEW public.sales_data_summary_view AS SELECT * FROM public.tickit_sales_redshift;
   ALTER DATASHARE salesshare ADD TABLE public.tickit_sales_redshift;
   ```

   Gunakan ALTER DATASHARE untuk berbagi skema, tabel, dan tampilan, dalam skema tertentu. Superusers, pemilik datashare, atau pengguna yang memiliki ALTER atau ALL izin pada datashare dapat mengubah datashare untuk menambahkan objek ke atau menghapus objek dari itu. Pengguna database harus menjadi pemilik objek atau memiliki SELECT, PENGGUNAAN, atau SEMUA izin pada objek. 

   Gunakan klausa INCLUDENEW untuk menambahkan tabel dan tampilan baru yang dibuat dalam skema tertentu ke datashare. Hanya pengguna super yang dapat mengubah properti ini untuk setiap pasangan skema rangkaian data.

   ```
   ALTER DATASHARE salesshare ADD SCHEMA PUBLIC;
   ALTER DATASHARE salesshare SET INCLUDENEW = TRUE FOR SCHEMA PUBLIC;
   ```

1. Berikan akses data ke akun administrator Lake Formation.

   ```
   GRANT USAGE ON DATASHARE salesshare TO ACCOUNT '012345678910' VIA DATA CATALOG;
   ```

   Untuk mencabut penggunaan, gunakan perintah berikut.

   ```
   REVOKE USAGE ON DATASHARE salesshare FROM ACCOUNT '012345678910' VIA DATA CATALOG;
   ```

1. Otorisasi akses ke datashare untuk Lake Formation dengan menggunakan operasi API. `aws redshift authorize-data-share` Melakukannya memungkinkan Lake Formation mengenali datashare di akun layanan dan mengelola asosiasi konsumen ke datashare.

   ```
   aws redshift authorize-data-share 
   --data-share-arn arn:aws:redshift:us-east-1:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/salesshare 
   --consumer-identifier {"DataCatalog/<consumer-account-id>"}
   ```

    Untuk menghapus otorisasi dari rangkaian data yang dikelola Lake Formation, gunakan operasi API. `aws redshift deauthorize-data-share` Dengan demikian, Anda mengizinkan AWS Lake Formation untuk mengenali datashare di akun layanan dan menghapus otorisasi. 

   ```
   aws redshift deauthorize-data-share 
   --data-share-arn arn:aws:redshift:us-east-1:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/salesshare 
   --consumer-identifier {"DataCatalog/<consumer-account-id>"}
   ```

    Kapan saja, jika cluster produsen atau administrator workgroup memutuskan bahwa tidak perlu lagi berbagi data dengan cluster konsumen atau workgroup, mereka dapat menggunakan DROP DATASHARE untuk menghapus datashare, membatalkan otorisasi datashare, atau mencabut izin datashare. Izin dan objek terkait di Lake Formation tidak dihapus secara otomatis. 

   ```
   DROP DATASHARE salesshare;
   ```

    Setelah mengotorisasi akun Lake Formation untuk mengelola datashare, administrator Lake Formation dapat menemukan datashare bersama, mengaitkan dateshare dengan Data Catalog ARN, dan membuat database dalam penautan ke datashare. AWS Glue Data Catalog Untuk mengaitkan datashares menggunakan AWS CLI, gunakan perintah. [ associate-data-share-consumer](https://docs.aws.amazon.com/cli/latest/reference/redshift/associate-data-share-consumer.html) Untuk berbagi data Wilayah AWS, tentukan `--region` parameter dalam `associate-data-share-consumer` perintah atau gunakan AWS konsol untuk memilih konsumen data Anda. Contoh berikut menunjukkan cara berbagi datashare yang dikelola Lake Formation di seluruh Wilayah. 

   ```
   aws redshift associate-data-share-consumer --region <region-1>
   --data-share-arn 'arn:aws:redshift:us-east-1:12345678912:datashare:035c45ea-61ce-86f0-8b75-19ac6102c3b7/sample_share' 
   --consumer-arn 'arn:aws:glue:<region-1>:111912345678:catalog'
   ```

   Administrator Lake Formation juga harus membuat sumber daya lokal yang menentukan bagaimana objek dalam data harus dipetakan ke objek dalam Lake Formation. Untuk informasi selengkapnya tentang menemukan rangkaian data dan membuat sumber daya lokal, lihat [Mengelola izin untuk data dalam rangkaian data Amazon Redshift](https://docs.aws.amazon.com/lake-formation/latest/dg/data-sharing-redshift.html). 

# Bekerja dengan datashares yang dikelola Lake Formation sebagai konsumen
<a name="lake-formation-getting-started-consumer"></a>

Dengan Amazon Redshift, Anda dapat mengakses dan menganalisis data yang dibagikan dengan Anda melalui AWS Lake Formation datashares. Datashare adalah produk data yang berisi kumpulan objek data, seperti tabel atau database, dari sumber data yang berbeda. 

 Setelah AWS Lake Formation administrator menemukan undangan datashare dan membuat database di link AWS Glue Data Catalog tersebut ke datashare, cluster konsumen atau administrator workgroup dapat mengaitkan cluster dengan datashare dan database di AWS Glue Data Catalog, membuat database lokal ke cluster konsumen atau workgroup, dan memberikan akses ke pengguna dan peran di cluster konsumen Amazon Redshift atau workgroup untuk memulai kueri. Ikuti langkah-langkah ini untuk menyiapkan izin kueri. 

1. Di konsol Amazon Redshift, buat klaster Redshift untuk berfungsi sebagai cluster konsumen atau workgroup, jika diperlukan. Untuk informasi tentang cara membuat klaster, lihat [Membuat klaster](https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-console.html#create-cluster).

1. Untuk mencantumkan database mana di cluster AWS Glue Data Catalog konsumen atau kelompok kerja yang dapat diakses pengguna, jalankan perintah [SHOW DATABASES](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW_DATABASES.html).

   ```
   SHOW DATABASES FROM DATA CATALOG [ACCOUNT <account-id>,<account-id2>] [LIKE <expression>]
   ```

   Melakukan hal itu mencantumkan sumber daya yang tersedia dari Katalog Data, seperti ARN AWS Glue database, nama database, dan informasi tentang datashare.

1. Menggunakan AWS Glue database ARN dari SHOW DATABASES, buat database lokal di cluster konsumen atau workgroup. Untuk informasi selengkapnya, lihat [MEMBUAT DATABASE](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_DATABASE.html).

   ```
   CREATE DATABASE lf_db FROM ARN <lake-formation-database-ARN> WITH [NO] DATA CATALOG SCHEMA [<schema>];
   ```

1. Berikan akses pada database dan referensi skema yang dibuat dari datashares kepada pengguna dan peran dalam cluster konsumen atau kelompok kerja sesuai kebutuhan. Untuk informasi lebih lanjut, lihat [GRANT](https://docs.aws.amazon.com/redshift/latest/dg/r_GRANT.html) atau [REVOKE](https://docs.aws.amazon.com//redshift/latest/dg/r_REVOKE.html). Perhatikan bahwa pengguna yang dibuat dari perintah [CREATE USER](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_USER.html) tidak dapat mengakses objek di datashare yang telah dibagikan ke Lake Formation. Hanya pengguna dengan akses ke Redshift dan Lake Formation yang dapat mengakses datashares yang telah dibagikan dengan Lake Formation. 

   ```
   GRANT USAGE ON DATABASE sales_db TO IAM:Bob;
   ```

    Sebagai administrator klaster konsumen atau grup kerja, Anda hanya dapat menetapkan izin di seluruh database yang dibuat dari database ke pengguna dan peran Anda. Dalam beberapa kasus, Anda memerlukan kontrol halus pada subset objek database yang dibuat dari datashare. 

    Anda juga dapat membuat tampilan pengikatan akhir di atas objek bersama dan menggunakannya untuk menetapkan izin granular. Anda juga dapat mempertimbangkan agar cluster produsen atau grup kerja membuat datashares tambahan untuk Anda dengan perincian yang diperlukan. Anda dapat membuat referensi skema sebanyak mungkin ke database yang dibuat dari datashare. 

1. Pengguna database dapat menggunakan tampilan SVV\$1EXTERNAL\$1TABLES dan SVV\$1EXTERNAL\$1COLUMNS untuk menemukan semua tabel atau kolom bersama dalam database AWS Glue 

   ```
   SELECT * from svv_external_tables WHERE redshift_database_name = 'lf_db';
                           
   SELECT * from svv_external_columns WHERE redshift_database_name = 'lf_db';
   ```

1. Kueri data dalam objek bersama di datashares.

   Pengguna dan peran dengan izin pada basis data dan skema konsumen pada kluster konsumen atau grup kerja dapat menjelajahi dan menavigasi metadata objek bersama apa pun. Mereka juga dapat menjelajahi dan menavigasi objek lokal di cluster konsumen atau kelompok kerja. Untuk melakukannya, mereka dapat menggunakan driver JDBC atau ODBC atau tampilan SVV\$1ALL dan SVV\$1EXTERNAL.

   ```
   SELECT * FROM lf_db.schema.table;
   ```

   Anda hanya dapat menggunakan pernyataan SELECT pada objek bersama. Namun, Anda dapat membuat tabel di cluster konsumen dengan menanyakan data dari objek bersama di database lokal yang berbeda.

   ```
   // Connect to a local cluster database
               
   // Create a view on shared objects and access it.
   
   CREATE VIEW sales_data 
   AS SELECT * 
   FROM sales_db.public.tickit_sales_redshift 
   WITH NO SCHEMA BINDING;
   
   SELECT * FROM sales_data;
   ```