Redshift dựa trên phiên bản cũ của Postgres (8.0). Postgres đã thay đổi một chút kể từ đó và các công cụ Postgres đã thay đổi với nó. Khi tải xuống bất kỳ công cụ nào để sử dụng với Redshift, bạn có thể sẽ cần sử dụng các phiên bản trước đó từ vài năm trước.
Vấn đề liệt kê bảng đặc biệt khó chịu nhưng tôi chưa tìm thấy phiên bản psql
có thể liệt kê danh sách các bảng Redshift đúng cách. Thay vào đó, bạn có thể sử dụng các bảng INFORMATION_SCHEMA
để tìm loại thông tin này và theo ý kiến của tôi, đây là những gì SSIS/SSDT sẽ hoạt động theo mặc định.
Tôi không mong đợi SSIS có thể tải dữ liệu vào Redshift một cách đáng tin cậy, tức là tạo một điểm đến Chuyển hướng. Điều này là do Redshift không thực sự hỗ trợ INSERT INTO
làm cách tải dữ liệu. Nếu bạn sử dụng INSERT INTO
, bạn sẽ chỉ có thể tải ~ 10 hàng mỗi giây. Redshift chỉ có thể tải dữ liệu nhanh chóng từ S3 hoặc DynamoDB bằng cách sử dụng lệnh COPY
.
Đó là một câu chuyện tương tự cho tất cả các công cụ ETL khác mà tôi đã thử, đáng chú ý là các công cụ nguồn mở Pentaho PDI (aka Kettle) và Talend Open Studio. Điều này đặc biệt gây phiền nhiễu trong trường hợp của Talend vì chúng có các thành phần Redshift nhưng chúng thực sự cố gắng sử dụng INSERT INTO
để tải. Ngay cả công cụ ETL riêng của Amazon, Data Pipeline vẫn chưa hỗ trợ cho Redshift là 'nút'.
Nguồn
2013-07-17 13:12:39