6

Tôi đang cố gắng sao chép một loạt tệp csv từ S3 sang Redshift bằng cách sử dụng RedShiftCopyActivity và đường dữ liệu.AWS Datapipeline RedShiftCopyActivity - cách chỉ định "cột"

Điều này hoạt động tốt miễn là cấu trúc csv khớp với cấu trúc bảng. Trong trường hợp của tôi, csv có ít cột hơn bảng và sau đó RedShiftCopyActivity không thành công với lỗi "Delimiter not found" trong stl_load_errors.

Tôi muốn sử dụng tùy chọn lệnh "cột" bản sao chép lại. Bằng cách đó tôi có thể làm cho nó hoạt động, nhưng các phần của lệnh copy redshift dường như không có sẵn trong RedShiftCopyActivity.

Bất kỳ ai đề xuất?

Tất cả mẹo được chào đón nồng nhiệt.

Rất cảm ơn trả trước.

Peter

+0

Bạn đã bao giờ tìm ra giải pháp cho vấn đề này chưa? – Erve1879

+1

Không có giải pháp. Chúng tôi đã có thể tránh được vấn đề này bằng cách phát triển một tập lệnh python được khởi động bởi đường ống dẫn và lệnh gọi lệnh sao chép đỏ. Ít thanh lịch hơn tôi muốn nhưng ít nhất nó hoạt động. – Peter

+0

Cảm ơn @Peter. Khi nó xảy ra, tôi vừa viết một kịch bản Python để thay thế toàn bộ Đường ống Dữ liệu. Đã có vấn đề vô tận với redshiftCopyActivity và bảng điều khiển Pipeline dữ liệu. – Erve1879

Trả lời

1

Tôi biết đây là câu hỏi cũ nhưng bây giờ bạn có thể chỉ định danh sách các cột cho lệnh Sao chép đỏ.

COPY tablename (column1 [,column2, ...]) 

Khi tải dữ liệu từ S3, thứ tự cột cần khớp với thứ tự của dữ liệu nguồn. Xem tài liệu tại đây: Amazon Redshift Column Mapping Options.

Radu

+0

Cảm ơn bạn đã cho tôi biết Radu. Chúng tôi đã từ bỏ DataPipeLine và đã viết một tập lệnh python. Bây giờ chạy trên một thể hiện ec2, nhưng tôi đoán chúng ta có thể xem xét chuyển sang lambda. – Peter

+0

Có một bài đăng trên blog thực sự tốt trên Amazon Redshift và Lambda. Chúng tôi đã sử dụng nó và hoạt động như một sự quyến rũ. Bạn nên kiểm tra: [Trình quản lý cơ sở dữ liệu Redshift của Amazon không quản trị] (https://blogs.aws.amazon.com/bigdata/post/Tx24VJ6XF1JVJAA/A-Zero-Administration-Amazon-Redshift-Database-Loader) –

+0

Cảm ơn vì tiền hỗ trợ! – Peter

Các vấn đề liên quan