by Ryan Waldorf, Harshida Patel, and Sudipto Das | on 19 FEB 2024 | in Amazon Redshift, Announcements, Best Practices, Technical How-to | Permalink | Comments | Share
Amazon Redshift là một dịch vụ kho dữ liệu (data warehouse) trên đám mây (cloud) có tốc độ nhanh, quy mô lưu trữ lên tới petabyte, được hàng chục nghìn khách hàng tin cậy sử dụng để hỗ trợ các công việc phân tích của họ. Hàng nghìn khách hàng sử dụng tính năng Amazon Redshift data sharing để cho phép đọc dữ liệu tức thì, chi tiết và nhanh chóng giữa các cụm Redshift được cung cấp sẵn và các nhóm làm việc serverless. Điều này cho phép bạn mở rộng quy mô của read workloads cho hàng nghìn người dùng đồng thời mà không cần phải di chuyển hoặc sao chép dữ liệu.
Hiện nay, với Amazon Redshift, chúng ta sẽ giới thiệu tính năng ghi multi-data warehouse thông qua data sharing ở bản xem trước công khai. Điều này cho phép bạn đạt được hiệu suất tốt hơn cho các công việc trích xuất, chuyển đổi và tải (ETL) workloads bằng cách sử dụng các warehouse khác nhau thuộc các loại và kích cỡ khác nhau dựa trên nhu cầu khối lượng công việc của bạn. Ngoài ra, điều này cho phép bạn dễ dàng duy trì các ETL job của mình hoạt động một cách dễ dự đoán hơn vì bạn có thể phân chia chúng giữa các warehouse chỉ bằng vài cú nhấp chuột, theo dõi và kiểm soát chi phí vì mỗi warehouse có khả năng giám sát và kiểm soát chi phí riêng nó, đồng thời thúc đẩy sự cộng tác khi bạn có thể cho phép các đội nhóm khác nhau ghi vào cơ sở dữ liệu của nhóm khác chỉ bằng vài cú nhấp chuột.
Dữ liệu được cập nhật trực tiếp và khả dụng trong tất cả các warehouse ngay khi nó được committed, kể cả khi dữ liệu được ghi vào các tài khoản hoặc các khu vực khác nhau. Để xem trước, bạn có thể sử dụng kết hợp các clusters ra3.4xl, ra3.16xl hoặc serverless workgroups.
Trong bài đăng này, chúng ta sẽ thảo luận khi nào bạn nên cân nhắc sử dụng multi-warehouse để ghi vào cùng một cơ sở dữ liệu, giải thích cách hoạt động của tính năng ghi multi-warehouse thông qua data sharing và hướng dẫn bạn một ví dụ về cách sử dụng multi-warehouse để ghi vào cùng một cơ sở dữ liệu.
Lý do sử dụng multi-warehouse để ghi vào cùng một cơ sở dữ liệu
Trong phần này, chúng ta thảo luận về một số lý do tại sao bạn nên cân nhắc việc sử dụng multi-warehouse để ghi vào cùng một cơ sở dữ liệu (database).
Hiệu suất và khả năng dự đoán tốt hơn cho khối lượng công việc hỗn hợp
Khách hàng thường bắt đầu với một warehouse có quy mô vừa đủ với nhu cầu khối lượng công việc ban đầu của họ. Ví dụ: nếu bạn cần hỗ trợ các truy vấn của người dùng không thường xuyên và nhập 10 triệu dòng dữ liệu mua hàng hàng đêm thì 32 RPU workgroup có thể hoàn toàn phù hợp với nhu cầu của bạn. Tuy nhiên, nếu thêm tác vụ nhập mỗi giờ 400 triệu dòng tương tác của người dùng từ ứng dụng và website thì có thể làm chậm thời gian phản hồi của người dùng hiện tại vì tác vụ mới tiêu tốn quá nhiều tài nguyên. Bạn có thể thay đổi kích thước thành một workgroup lớn hơn để thực hiện tác vụ đọc và ghi một cách nhanh chóng mà không phải tranh giành tài nguyên. Tuy nhiên, điều này có thể dẫn tới lãng phí tài nguyên và chi phí không cần thiết cho khối lượng công việc hiện tại. Ngoài ra, do các tác vụ chia sẻ tài nguyên tính toán (compute) nên sự gia tăng đột biến của một tác vụ có thể ảnh hưởng đến khả năng đáp ứng SLA của các tác vụ khác.
Sơ đồ sau đây minh họa kiến trúc một single-warehouse.
Với khả năng ghi dữ liệu qua các datashare, giờ đây bạn có thể tách quá trình ETL tương tác với website và ứng dụng của người dùng mới ra một nhóm làm việc lớn hơn, độc lập để hoàn thành nhanh chóng với hiệu suất cần thiết mà không ảnh hưởng đến chi phí hoặc thời gian hoàn thành các công việc hiện tại của bạn. Sơ đồ sau minh họa kiến trúc multi-warehouse này.
Kiến trúc multi-warehouse cho phép bạn hoàn thành tất cả các công việc liên quan đến ghi dữ liệu đúng hạn với ít tài nguyên tính toán hơn do đó giảm chi phí so với việc sử dụng một warehouse đơn lẻ để thực hiện tất cả khối lượng công việc.
Kiểm soát và giám sát chi phí
Khi bạn sử dụng một warehouse duy nhất cho tất cả công việc ETL của mình, việc hiểu rõ các công việc nào đang tiêu tốn chi phí của bạn có thể trở nên khó khăn. Ví dụ: bạn có thể có một nhóm chạy công việc ETL thu thập dữ liệu từ hệ thống CRM trong khi một nhóm khác đang thu thập liệu từ hệ thống vận hành nội bộ. Bạn sẽ gặp khó khăn trong việc giám sát và kiểm soát chi phí cho các công việc vì các truy vấn đang chạy cùng một lúc, sử dụng chung tài nguyên tính toán trong warehouse. Bằng cách tách các workload ghi dữ liệu vào các warehouse riêng biệt, bạn có thể giám sát và kiểm soát chi phí một cách riêng biệt đồng thời đảm bảo các công việc có thể tiến triển độc lập mà không bị xung đột tài nguyên.
Cộng tác dữ liệu trực tiếp một cách dễ dàng
Đôi khi, hai đội ngũ sử dụng các warehouse khác nhau để quản trị dữ liệu, hiệu suất tính toán, hoặc chi phí, nhưng đôi khi cũng cần phải ghi chung vào cùng một bộ dữ liệu chia sẻ chung (shared data). Ví dụ: bạn có thể có một bộ bảng 360 khách hàng cần được cập nhật trực tiếp khi khách hàng tương tác với các đội ngũ tiếp thị, bán hàng và chăm sóc khách hàng. Khi những đội ngũ này sử dụng các warehouse khác nhau, việc duy trì dữ liệu cập nhật theo thời gian thực có thể trở nên khó khăn vì bạn có thể phải xây dựng một quy trình ETL đa dịch vụ sử dụng các công cụ như Amazon Simple Storage Service (Amazon S3), Amazon Simple Notification Service (Amazon SNS), Amazon Simple Queue Service (Amazon SQS) và AWS Lambda để theo dõi sự thay đổi của dữ liệu của mỗi đội và nhập dữ liệu đó vào một nguồn duy nhất.
Với khả năng ghi thông qua datashares, chỉ với vài cú nhấp chuột bạn có thể cấp quyền chi tiết trên các database objects của mình (ví dụ, quyền SELECT trên một bảng, và SELECT, INSERT, và TRUNCATE trên bảng khác) cho các nhóm khác nhau sử dụng các warehouse khác nhau. Điều này cho phép các nhóm bắt đầu ghi vào các shared objects bằng warehouse của riêng họ. Dữ liệu được cập nhật realtime và khả dụng cho tất cả các warehouse ngay sau khi nó được commit, và điều này vẫn hoạt động ngay cả khi các warehouse đang sử dụng trên các account và region khác nhau.
Trong các phần sau, chúng ta sẽ hướng dẫn bạn cách sử dụng multi-warehouse để ghi vào cùng một cơ sở dữ liệu (database) thông qua data sharing.
Tổng quan giải pháp
Một số thuật ngữ đề cập trong giải pháp này:
- Namespace – Một vùng chứa logic cho các đối tượng cơ sở dữ liệu (database objects), người dùng (users) và vai trò (roles), quyền của họ (permissions) trên các database objects và compute (serverless workgroups và cụm được cung cấp).
- Datashare – Đơn vị chia sẻ của data sharing. Bạn cấp quyền trên các objects cho datashare.
- Producer – Là warehouse tạo ra datashare, cấp quyền trên các object cho datashare, và cấp quyền truy cập vào datashare cho các warehouse và tài khoản khác.
- Consumer – Là warehouse được cấp quyền truy cập vào datashare. Bạn có thể nghĩ consumer như là người thuê datashare.
Trường hợp sử dụng này liên quan đến một khách hàng với hai warehouse: một warehouse chính được sử dụng để gắn vào namespace chính để phục vụ chủ yếu cho các truy vấn đọc và ghi và một warehouse phụ được gắn vào một namespace phụ chủ yếu được sử dụng để ghi vào namespace chính. Chúng ta sử dụng bộ dữ liệu có sẵn công khai từ AWS Labs 10 GB TPCH dataset, được lưu trữ trong S3 bucket. Bạn có thể copy và paste nhiều lệnh để làm theo. Mặc dù có kích thước nhỏ đối với một warehouse nhưng bộ dữ liệu này cho phép dễ dàng kiểm tra chức năng của tính năng này.
Sơ đồ sau minh họa kiến trúc giải pháp của chúng ta.
Chúng ta thiết lập primary namespace bằng cách kết nối với nó thông qua warehouse của nó, tạo một marketing database trong đó với schema là prod và staging, đồng thời tạo ba bảng trong prod schema có tên là region, nation, và af_customer. Sau đó, chúng ta nạp dữ liệu vào bảng region và nation. Chúng ta không nhập dữ liệu vào bảng af_customer.
Tiếp theo, chúng ta tạo một datashare trong primary namespace. Chúng tôi cấp quyền cho datashare khả năng tạo objects trong schema staging cũng như khả năng select, insert, update và delete objects trong schema prod. Sau đó, chúng ta cấp quyền sử dụng schema cho một namespace khác trong tài khoản.
Tại thời điểm đó, chúng ta kết nối với secondary warehouse. Chúng ta tạo database từ một datashare trong warehouse, và cũng tạo một user mới, rồi cấp quyền trên các object của datashare cho user mới. Sau đó, chúng ta kết nối lại secondary warehouse với tư cách là user mới.
Kế tiếp, chúng ta tạo bảng customer trong schema staging của datashare và sao chép dữ liệu từ tập dữ liệu TPCH 10 customer vào bảng trong staging. Chúng ta insert dữ liệu bảng customer trong schema staging vào bảng af_customer trong schema production được chia sẻ, sau đó truncate bảng.
Tại thời điểm này, quá trình ETL đã hoàn tất và bạn có thể đọc dữ liệu trong primary namespace, được insert bởi secondary ETL warehouse, từ cả primary warehouse và secondary ETL warehouse.
Yêu cầu chuẩn bị
Để làm theo bài đăng này, bạn cần chuẩn bị:
- 2 warehouse được tạo với PREVIEW_2023 track. Các warehouse có thể kết hợp giữa workgroups serverless, ra3.4xl clusters, và ra3.16xl clusters.
- Có quyền truy cập vào một superuser ở cả 2 warehouse.
- AWS Identity and Access Management (IAM) role có khả năng nhập dữ liệu từ Amazon Redshift sang Amazon S3 (Amazon Redshift chỉ tạo 1 role theo mặc định khi bạn tạo một cluster hoặc serverless workgroup).
- Đối với cross-account, bạn cần có quyền truy cập vào IAM user hoặc role mà được phép ủy quyền cho datashares. Để biết IAM policy, tham khảo Sharing datashares.
Tham khảo Sharing both read and write data within an AWS account or across accounts (preview) để biết thông tin mới nhất.
Thiết lập primary namespace (producer)
Trong phần này, chúng ta sẽ giới thiệu cách thiết lập primary (producer) namespace mà chúng ta sẽ sử dụng để lưu trữ dữ liệu của mình.
Kết nối tới producer
Hoàn thành các bước sau để kết nối với producer:
- Tại Amazon Redshift console, chọn Query editor v2.
Sau khi truy cập query editor v2, bạn có thể thấy toàn bộ warehouse mà bạn kết nối ở phía bên trái. Bạn có thể mở rộng để xem database của chúng.
- Kết nối tới primary warehouse của bạn sử dụng superuser.
- Chạy câu command sau để tạo database marketing:
| CREATE DATABASE marketing; |
Tạo database objects để chia sẻ
Thực hiện các bước sau để tạo database objects của bạn để chia sẻ:
- Sau khi bạn tạo database marketing, chuyển kết nối database của bạn sang database marketing.
Bạn có thể sẽ cần refresh trang của bạn mới có thể thấy database mới tạo.
- Chạy câu các command sau để tạo 2 schema mà bạn sẽ chia sẻ:
| CREATE SCHEMA staging;CREATE SCHEMA prod; |
- Chạy các lệnh sau để tạo các bảng (table) để chia sẻ. Đây là các câu lệnh DDL tiêu chuẩn từ file AWS Labs DDL có tên bảng được sửa đổi.
| create table prod.region ( r_regionkey int4 not null, r_name char(25) not null , r_comment varchar(152) not null, Primary Key(R_REGIONKEY)); create table prod.nation ( n_nationkey int4 not null, n_name char(25) not null , n_regionkey int4 not null, n_comment varchar(152) not null, Primary Key(N_NATIONKEY)); create table prod.af_customer ( c_custkey int8 not null , c_name varchar(25) not null, c_address varchar(40) not null, c_nationkey int4 not null, c_phone char(15) not null, c_acctbal numeric(12,2) not null, c_mktsegment char(10) not null, c_comment varchar(117) not null, Primary Key(C_CUSTKEY)) distkey(c_custkey) sortkey(c_custkey); |
Copy dữ liệu vào bảng region và nation
Chạy các lệnh sau để copy dữ liệu từ AWS Labs S3 bucket sang các bảng region và nation. Nếu bạn đã tạo cluster trong khi vẫn giữ IAM role được tạo mặc định, thì bạn cần copy và paste các lệnh sau để load dữ liệu vào các table của bạn:
| copy prod.nation from ‘s3://redshift-downloads/TPC-H/2.18/10GB/nation.tbl’ iam_role default delimiter ‘|’ region ‘us-east-1’;copy prod.region from ‘s3://redshift-downloads/TPC-H/2.18/10GB/region.tbl’ iam_role default delimiter ‘|’ region ‘us-east-1’; |
Tạo datashare
Sử dụng các câu lệnh sau để tạo datashare:
| create datashare marketing publicaccessible true; |
Cài đặt publicaccessible chỉ định liệu consumers có thể sử dụng datashare truy cập công khai với các clusters được cung cấp và các serverless workgroups hay không. Nếu warehouse của bạn không thể truy cập công khai, bạn có thể bỏ qua trường đó.
Cấp quyền trên các schemas cho datashare
Để thêm các objects được cấp quyền truy cập vào datashare, sử dụng cú pháp grant, chỉ định datashare mà bạn muốn cấp quyền:
| grant usage on schema prod to datashare marketing;grant usage, create on schema staging to datashare marketing; |
Điều này cho phép datashare consumers sử dụng các object được thêm vào schema prod, đồng thời sử dụng và tạo các object được thêm vào schema staging. Để duy trì khả năng tương thích ngược, nếu bạn sử dụng lệnh alter datashare để thêm schema, nó sẽ tương đương với việc cấp quyền sử dụng trên schema.
Cấp quyền trên các bảng cho datashare
Bây giờ bạn có thể cấp quyền truy cập vào các bảng cho datashare bằng cách sử dụng lệnh grant, chỉ định các quyền và datashare. Đoạn code sau thực hiện cấp quyền toàn bộ trên bảng af_customer cho datashare:
| grant all on table prod.af_customer to datashare marketing; |
Để duy trì khả năng tương thích ngược (backward compatibility), nếu bạn sử dụng lệnh alter datashare thêm một table.
Ngoài ra, chúng ta đã thêm các quyền có giới hạn phạm vi cho phép bạn cấp cùng một quyền hạn cho tất cả các object hiện tại và tương lai trong datashare. Chúng ta thêm quyền select trong phạm vi trên các bảng thuộc schema prod vào datashare:
| grant select for tables in schema prod to datashare marketing; |
Sau khi đã phân quyền như trên, customer sẽ có quyền select trên tất cả các bảng hiện tại và tương lai trong schema prod. Điều này cho phép họ có quyền truy cập chọn lọc trên các bảng region và nation.
Xem các quyền được gán cho datashare
Bạn có thể xem các quyền được gán cho datashare bằng cách chạy lệnh sau:
| show access for datashare marketing; |
Gán quyền cho secondary ETL namespace
Bạn có thể phân quyền cho secondary ETL namespace bằng các cú pháp trên. Bạn thực hiện việc này bằng cách chỉ định namespace ID. Đối với secondary ETL namespace serverless, bạn có thể tìm thấy namespace trong trang namespace details, đối với secondary ETL namespace provisioned bạn có thể tìm thấy namespace ID trong trang cluster details, hoặc có thể bằng cách kết nối secondary ETL warehouse trong query editor v2 và chạy lệnh select current_namespace. Sau đó, bạn có thể cấp quyền truy cập vào namespace khác bằng lệnh sau (thay đổi consumer namespace thành namespace UID cho secondary ETL warehouse):
| grant usage on datashare marketing to namespace ‘<consumer_namespace>’; |
Thiết lập secondary ETL namespace (consumer)
Tại thời điểm này, bạn đã sẵn sàng để thiết lập secondary (consumer) ETL warehouse của bạn để bắt đầu ghi vào dữ liệu được chia sẻ.
Tạo database từ datashare
Thực hiện các bước sau để tạo database của bạn:
- Tại query editor v2, chuyển qua secondary ETL warehouse.
- Chạy lệnh show datashares để xem marketing datashare và namespace của datashare producer.
- Sử dụng namespace đó để tạo database từ datashare:
| create database marketing_ds_db with permissions from datashare marketing of namespace ‘<producer_namespace>’; |
Việc chỉ định with permissions cho phép bạn gán quyền cụ thể cho từng database users và roles. Nếu không có config này, nếu bạn gán quyền sử dụng trong datashare database, users và roles sẽ có tất cả các quyền đối với tất cả các objects trong datashare database.
Tạo user và gán quyền cho user đó
Để tạo user, sử dụng lệnh CREATE USER:
| create user data_engineer password ‘[choose a secure password]’;grant usage on database marketing_ds_db to data_engineer;grant all on schema marketing_ds_db.prod to data_engineer;grant all on schema marketing_ds_db.staging to data_engineer;grant all on all tables in schema marketing_ds_db.staging to data_engineer;grant all on all tables in schema marketing_ds_db.prod to data_engineer; |
Với việc gán quyền như này, bạn sẽ cấp quyền cho user data_engineer tất cả các quyền đối với toàn bộ object trong datashare. Ngoài ra, bạn đã gán toàn bộ quyền có sẵn trong các schema dưới dạng quyền có phạm vi (scoped permission) cho data_engineer. Mọi quyền trên bất kỳ object nào được thêm vào schemas sẽ được tự động gán quyền truy cập cho data_engineer.
Tại bước này, bạn có thể tiếp tục thực hiện các bước tương tự bằng việc sử dụng admin user mà bạn hiện đang đăng nhập, hoặc bạn có thể dùng data_engineer.
Các cách để ghi vào datashare database
Bạn có thể ghi dữ liệu vào datashare database theo 3 cách.
Sử dụng three-part notation khi kết nối với database cục bộ
Giống với việc đọc dữ liệu chia sẻ, bạn có thể sử dụng three-part notation để tham chiếu các datashare database objects. Ví dụ: insert into marketing_ds_db.prod.customer. Lưu ý rằng bạn không thể sử dụng multi-statement transactions để ghi vào object trong datashare database.
Kết nối trực tiếp với datashare database
Bạn có thể kết nối trực tiếp với datashare database thông qua trình điều khiển JDBC, ODBC hoặc Python của Redshift, hoặc qua Amazon Redshift Data API (new). Để kết nối như thế này, cần chỉ định tên datashare database trong chuỗi kết nối (connection string). Điều này cho phép bạn ghi vào datashare database bằng cách sử dụng two-part notation và sử dụng các multi-statement transactions để ghi vào datashare database. Lưu ý rằng một số bảng hệ thống và bảng catalog không khả dụng theo cách này.
Sử dụng câu lệnh
Giờ bạn có thể chỉ định muốn sử dụng database khác với lệnh use <database_name>. Việc này cho phép bạn viết vào datashare database sử dụng two-part notation và sử dụng multi-statement transactions để ghi dữ liệu vào datashare database. Lư ý rằng một số bảng hệ thống và bảng catalog không khả dụng theo cách nay. Ngoài ra, khi truy vấn các bảng hệ thống và các bảng catalog, bạn sẽ truy vấn các bảng của database mà bạn đang kết nối tới, không phải database mà bạn đang sử dụng.
Để thử phương pháp này, hãy chạy lệnh sau:
| use marketing_ds_db; |
Bắt đầu ghi vào datashare database
Trong phần này, chúng ta sẽ trình bày cách ghi dữ liệu vào datashare database bằng cách sử dụng cách thứ 2 và 3 chúng ta đề cập bên trên (connection trực tiếp hoặc sử dụng câu lệnh). Chúng ta sử dụng AWS Labs provided SQL để ghi vào the datashare database.
Tạo bảng trong schema staging
Bạn có thể tạo một bảng trong schema staging, bởi vì bạn đã được cấp quyền create. Bạn có thể sử dụng lệnh DDL như sau để tạo bảng trong schema datashare’s staging:
| create table staging.customer ( c_custkey int8 not null , c_name varchar(25) not null, c_address varchar(40) not null, c_nationkey int4 not null, c_phone char(15) not null, c_acctbal numeric(12,2) not null, c_mktsegment char(10) not null, c_comment varchar(117) not null, Primary Key(C_CUSTKEY)) distkey(c_nationkey) sortkey(c_nationkey); |
Bạn có thể sử dụng two-part notation bởi vì bạn đã sử dụng lệnh USE hoặc kết nối trực tiếp tới datashare database. Nếu không, bạn cũng cần chỉ định tên datashare database.
Copy dữ liệu vào bảng trong staging vừa tạo
Copy dữ liệu của customer TPCH 10 lấy từ AWS Labs public S3 bucket tới bảng bằng cách sử dụng các lệnh sau:
| copy staging.customer from ‘s3://redshift-downloads/TPC-H/2.18/10GB/customer.tbl’ iam_role default delimiter ‘|’ region ‘us-east-1’; |
Như phía trước, bạn yêu cầu phải thiết lập IAM role mặc định tạo warehouse này.
Nhập dữ liệu khác hàng Châu Phi (African customer) vài bảng table prod.af_customer
Chạy lệnh sau để nhập dữ liệu từ African customer vào bảng prod.af_customer:
| insert into prod.af_customerselect c.* from staging.customer c join prod.nation n on c.c_nationkey = n.n_nationkey join prod.region r on n.n_regionkey = r.r_regionkey where r.r_regionkey = 0; –0 is the region key for Africa |
Yêu cầu bạn phải tham gia vào các bảng quốc gia và khu vực mà bạn có quyền truy cập.
Truncate bảng trong staging
Bạn có thể truncate bảng trong schema staging để có thể ghi vào bảng đó mà lần sau không phải tạo lại nó trong tương lai nữa. Hành động truncate sẽ chạy theo transaction và có thể roll back nếu bạn kết nối trực tiếp tới datashare database hoặc bạn có thể sử dụng lệnh use (cho dù bạn không sử dụng datashare database). Sự dụng đoạn lệnh dưới đây:
| truncate staging.customer; |
Như vậy hiện tại, bạn đã hoàn tất việc nhập dữ liệu vào primary namespace. Bạn có thể truy vấn bảng af_customer từ cả primary warehouse và secondary ETL warehouse và kết quả trả ra sẽ là dữ liệu giống nhau.
Tổng kết
Trong bài đăng này, chúng ta đã trình bày cách sử dụng multi-warehouses để ghi vào cùng một cơ sở dữ liệu. Giải pháp này có những lợi ích sau:
- Bạn có thể sử dụng các provisioned clusters và serverless workgroups có quy mô khác nhau để ghi vào cùng một cơ sở dữ liệu
- Bạn có thể ghi dữ liệu trên các account hoặc region khác nhau
- Dữ liệu được cung cấp realtime và sẵn sàng tại tất cả các warehouses ngay sau khi thực hiện commit
- Vân có thể thực hiện ghi dữ liệu ngay cả khi producer warehouse (warehouse sở hữu database) bị tạm dừng
Để tìm hiểu thêm về tính năng này, xem Sharing both read and write data within an AWS account or across accounts (preview). Ngoài ra, nếu bạn có bất kỳ phản hồi nào, vui lòng gửi email cho chúng ta theo địa chỉ dsw-feedback@amazon.com.
Về tác giả
| Ryan Waldorf is a Senior Product Manager at Amazon Redshift. Ryan focuses on features that enable customers to define and scale compute including data sharing and concurrency scaling. | |
| Harshida Patel is a Analytics Specialist Principal Solutions Architect, with Amazon Web Services (AWS). | |
| Sudipto Das is a Senior Principal Engineer at Amazon Web Services (AWS). He leads the technical architecture and strategy of multiple database and analytics services in AWS with special focus on Amazon Redshift and Amazon Aurora. |
TAGS: Amazon Redshift
Link blog tiếng Anh:
https://aws.amazon.com/blogs/big-data/improve-your-etl-performance-using-multiple-redshift-warehouses-for-writes/