Năm ngoái, chúng tôi đã thông báo về tính khả dụng chung của RStudio trên Amazon SageMaker, môi trường phát triển tích hợp (IDE) RStudio Workbench được quản lý hoàn toàn đầu tiên trong ngành trên đám mây. Bạn có thể nhanh chóng khởi chạy RStudio IDE quen thuộc và quay số lên và xuống các tài nguyên điện toán cơ bản mà không làm gián đoạn công việc của mình, giúp dễ dàng xây dựng các giải pháp phân tích và máy học (ML) trong R trên quy mô lớn.
Nhiều người dùng RStudio trên SageMaker cũng là người dùng của Amazon RedShift, một kho dữ liệu song song lớn, quy mô petabyte, được quản lý hoàn toàn để lưu trữ dữ liệu và khối lượng công việc phân tích. Nó làm cho việc phân tích tất cả dữ liệu của bạn bằng cách sử dụng SQL tiêu chuẩn và các công cụ kinh doanh thông minh (BI) hiện có của bạn trở nên nhanh chóng, đơn giản và tiết kiệm chi phí. Người dùng cũng có thể tương tác với dữ liệu bằng ODBC, JDBC hoặc API dữ liệu Amazon Redshift.
Việc sử dụng RStudio trên SageMaker và Amazon Redshift có thể hữu ích để thực hiện phân tích hiệu quả trên các tập dữ liệu lớn trên đám mây. Tuy nhiên, làm việc với dữ liệu trên đám mây có thể đưa ra những thách thức, chẳng hạn như nhu cầu loại bỏ các silo dữ liệu của tổ chức, duy trì tính bảo mật và tuân thủ cũng như giảm độ phức tạp bằng cách chuẩn hóa công cụ. AWS cung cấp các công cụ như RStudio trên SageMaker và Amazon Redshift để giúp giải quyết những thách thức này.
Trong bài đăng trên blog này, chúng tôi sẽ chỉ cho bạn cách sử dụng đồng thời cả hai dịch vụ này để thực hiện phân tích hiệu quả các tập dữ liệu lớn trên đám mây đồng thời giải quyết các thách thức nêu trên. Blog này tập trung vào Rstudio trên ngôn ngữ Amazon SageMaker, với các nhà phân tích kinh doanh, kỹ sư dữ liệu, nhà khoa học dữ liệu và tất cả các nhà phát triển sử dụng Ngôn ngữ R và Amazon Redshift làm đối tượng mục tiêu.
Nếu bạn muốn sử dụng trải nghiệm SageMaker Studio truyền thống với Amazon Redshift, hãy tham khảo Sử dụng API dữ liệu Amazon Redshift để tương tác từ sổ ghi chép Amazon SageMaker Jupyter.
Tổng quan về giải pháp
Trong blog ngày hôm nay, chúng tôi sẽ thực hiện các bước sau:
- Nhân bản kho lưu trữ mẫu với các gói cần thiết.
- Kết nối với Amazon Redshift bằng kết nối ODBC an toàn (ODBC là giao thức ưa thích cho RStudio).
- Chạy các truy vấn và hành động API SageMaker trên dữ liệu trong Amazon Redshift Serverless thông qua RStudio trên SageMaker
Quá trình này được mô tả trong kiến trúc giải pháp sau:
Hướng dẫn giải pháp
Điều kiện tiên quyết
Trước khi bắt đầu, hãy đảm bảo bạn có tất cả các yêu cầu để thiết lập RStudio trên Amazon SageMaker và Amazon Redshift Serverless, chẳng hạn như:
Chúng tôi sẽ sử dụng ngăn xếp CloudFormation để tạo cơ sở hạ tầng cần thiết.
Lưu ý: Nếu bạn đã có miền RStudio và cụm Amazon Redshift, bạn có thể bỏ qua bước này
Khởi chạy ngăn xếp này sẽ tạo ra các tài nguyên sau:
- 3 Mạng con riêng
- 1 Mạng con công cộng
- 1 cổng NAT
- Cổng Internet
- Cụm Amazon Redshift Serverless
- Miền SageMaker với RStudio
- Hồ sơ người dùng SageMaker RStudio
- Vai trò dịch vụ IAM để thực thi miền SageMaker RStudio
- Vai trò dịch vụ IAM để thực thi hồ sơ người dùng SageMaker RStudio
Mẫu này được thiết kế để hoạt động trong Khu vực (ví dụ: us-east-1
, us-west-2
) với ba Vùng sẵn sàng, RStudio trên SageMaker và Amazon Redshift Serverless. Đảm bảo Khu vực của bạn có quyền truy cập vào các tài nguyên đó hoặc sửa đổi các mẫu cho phù hợp.
Nhấn Khởi chạy Stack để tạo ngăn xếp.
- trên Tạo ngăn xếp trang, chọn Sau.
- trên Chỉ định chi tiết ngăn xếp trang, cung cấp tên cho ngăn xếp của bạn và để các tùy chọn còn lại làm mặc định, sau đó chọn Sau.
- trên Cấu hình tùy chọn ngăn xếp trang, hãy để các tùy chọn như mặc định và nhấn Sau.
- trên Trang đánh giá, chọn nút
- Tôi xác nhận rằng AWS CloudFormation có thể tạo tài nguyên IAM với tên tùy chỉnh
- Tôi xác nhận rằng AWS CloudFormation có thể yêu cầu khả năng sau: CAPABILITY_AUTO_EXPANDhộp kiểm và chọn Gửi.
Mẫu sẽ tạo ra năm ngăn xếp.
Khi trạng thái ngăn xếp là TẠO_COMPLETE, điều hướng đến bảng điều khiển Amazon Redshift Serverless. Đây là một khả năng mới giúp chạy phân tích trên đám mây cực kỳ dễ dàng với hiệu suất cao ở mọi quy mô. Chỉ cần tải dữ liệu của bạn và bắt đầu truy vấn. Không cần phải thiết lập và quản lý các cụm.
Chú thích: Mẫu được minh họa trong blog này khi tích hợp Amazon Redshift và RStudio trên Amazon SageMaker sẽ giống nhau bất kể mẫu triển khai Amazon Redshift (cụm truyền thống hay phi máy chủ).
Đang tải dữ liệu trong Amazon Redshift Serverless
Tập lệnh CloudFormation đã tạo một cơ sở dữ liệu có tên sagemaker
. Hãy điền vào cơ sở dữ liệu này các bảng để người dùng RStudio truy vấn. Tạo một tab soạn thảo SQL và chắc chắn rằng sagemaker
cơ sở dữ liệu được chọn. Chúng tôi sẽ sử dụng dữ liệu giao dịch thẻ tín dụng tổng hợp để tạo các bảng trong cơ sở dữ liệu của chúng tôi. Dữ liệu này là một phần của bộ dữ liệu dạng bảng mẫu SageMaker s3://sagemaker-sample-files/datasets/tabular/synthetic_credit_card_transactions
.
Chúng tôi sẽ thực hiện truy vấn sau trong trình chỉnh sửa truy vấn. Điều này sẽ tạo ra ba bảng, thẻ, giao dịch, và Người sử dụng.
Bạn có thể xác thực rằng truy vấn đã chạy thành công bằng cách xem ba bảng trong ngăn bên trái của trình chỉnh sửa truy vấn.
Sau khi tất cả các bảng được điền, hãy điều hướng đến SageMaker RStudio và bắt đầu phiên mới với hình ảnh cơ sở RSession trên phiên bản ml.m5.xlarge.
Sau khi phiên được khởi chạy, chúng tôi sẽ chạy mã này để tạo kết nối với cơ sở dữ liệu Amazon Redshift Serverless của chúng tôi.
Để xem các bảng trong lược đồ tổng hợp, bạn cần cấp quyền truy cập trong Amazon Redshift thông qua trình chỉnh sửa truy vấn.
RStudio Kết nối cửa sổ sẽ hiển thị sagemaker
cơ sở dữ liệu với lược đồ tổng hợp và bảng thẻ, giao dịch, người dùng.
Bạn có thể nhấp vào biểu tượng bảng bên cạnh các bảng để xem 1,000 bản ghi.
Lưu ý: Chúng tôi đã tạo tệp R Markdown dựng sẵn với tất cả các khối mã dựng sẵn có thể tìm thấy tại dự án Repo GitHub.
Bây giờ hãy sử dụng DBI
gói chức năng dbListTables()
để xem các bảng hiện có.
Sử dụng dbGetQuery() để chuyển truy vấn SQL tới cơ sở dữ liệu.
Chúng tôi cũng có thể sử dụng dbplyr
và dplyr
gói để thực hiện các truy vấn trong cơ sở dữ liệu. Hãy count()
có bao nhiêu giao dịch trong bảng giao dịch. Nhưng trước tiên, chúng ta cần cài đặt các gói này.
Sử dụng tbl()
chức năng trong khi chỉ định lược đồ.
Hãy đếm số lượng hàng cho mỗi bảng.
Vì vậy, chúng tôi có 2,000 người dùng; 6,146 thẻ; và 24,386,900 giao dịch. Chúng ta cũng có thể xem các bảng trong bảng điều khiển.
transactions_tbl
Chúng ta cũng có thể xem những gì dplyr
động từ đang làm dưới mui xe.
Hãy khám phá trực quan số lượng giao dịch theo năm.
Ta cũng có thể tóm tắt dữ liệu trong cơ sở dữ liệu như sau:
Giả sử chúng ta muốn xem gian lận sử dụng thông tin thẻ. Chúng ta chỉ cần nối các bảng và sau đó nhóm chúng theo thuộc tính.
Bây giờ, hãy chuẩn bị một bộ dữ liệu có thể được sử dụng cho máy học. Hãy lọc dữ liệu giao dịch để chỉ bao gồm thẻ tín dụng Khám phá trong khi chỉ giữ một tập hợp con các cột.
Và bây giờ, hãy thực hiện một số thao tác làm sạch bằng cách sử dụng các phép biến đổi sau:
- Chuyển đổi
is_fraud
thuộc tính nhị phân - Xóa chuỗi giao dịch khỏi
use_chip
và đổi tên nó thành gõ - Kết hợp năm, tháng và ngày vào một đối tượng dữ liệu
- Xóa $ khỏi số tiền và chuyển thành kiểu dữ liệu số
Bây giờ chúng tôi đã lọc và làm sạch tập dữ liệu của mình, chúng tôi đã sẵn sàng thu thập tập dữ liệu này vào RAM cục bộ.
Bây giờ chúng tôi có một tập dữ liệu đang hoạt động để bắt đầu tạo các tính năng và mô hình phù hợp. Chúng tôi sẽ không trình bày các bước đó trong blog này, nhưng nếu bạn muốn tìm hiểu thêm về cách xây dựng mô hình trong RStudio trên SageMaker, hãy tham khảo Thông báo RStudio được quản lý hoàn toàn trên Amazon SageMaker cho các nhà khoa học dữ liệu.
Dọn dẹp
Để dọn sạch mọi tài nguyên nhằm tránh phát sinh chi phí định kỳ, hãy xóa mẫu CloudFormation gốc. Đồng thời xóa tất cả các giá treo EFS đã tạo và mọi đối tượng và bộ chứa S3 đã tạo.
Kết luận
Phân tích và lập mô hình dữ liệu có thể là một thách thức khi làm việc với các bộ dữ liệu lớn trên đám mây. Amazon Redshift là kho dữ liệu phổ biến có thể giúp người dùng thực hiện các tác vụ này. RStudio, một trong những môi trường phát triển tích hợp (IDE) được sử dụng rộng rãi nhất để phân tích dữ liệu, thường được sử dụng với ngôn ngữ R. Trong bài đăng trên blog này, chúng tôi đã trình bày cách sử dụng đồng thời Amazon Redshift và RStudio trên SageMaker để thực hiện phân tích hiệu quả trên các bộ dữ liệu lớn. Bằng cách sử dụng RStudio trên SageMaker, người dùng có thể tận dụng cơ sở hạ tầng được quản lý hoàn toàn, khả năng kiểm soát truy cập, kết nối mạng và bảo mật của SageMaker, đồng thời đơn giản hóa việc tích hợp với Amazon Redshift. Nếu bạn muốn tìm hiểu thêm về cách sử dụng hai công cụ này cùng nhau, hãy xem các bài đăng và tài nguyên trên blog khác của chúng tôi. Bạn cũng có thể thử sử dụng RStudio trên SageMaker và Amazon Redshift cho chính mình và xem cách chúng có thể giúp bạn thực hiện các nhiệm vụ lập mô hình và phân tích dữ liệu.
Vui lòng thêm phản hồi của bạn vào blog này hoặc tạo yêu cầu kéo trên GitHub.
Về các tác giả
Ryan Garner là Nhà khoa học dữ liệu với AWS Professional Services. Anh ấy đam mê giúp khách hàng AWS sử dụng R để giải quyết các vấn đề về Khoa học dữ liệu và Máy học của họ.
Raj Pathak là Kiến trúc sư giải pháp cao cấp và Nhà công nghệ chuyên về Dịch vụ tài chính (Bảo hiểm, Ngân hàng, Thị trường vốn) và Học máy. Ông chuyên về Xử lý ngôn ngữ tự nhiên (NLP), Mô hình ngôn ngữ lớn (LLM) và các dự án vận hành và cơ sở hạ tầng học máy (MLOps).
Aditi Rajnish là sinh viên kỹ thuật phần mềm năm thứ hai tại Đại học Waterloo. Sở thích của cô bao gồm thị giác máy tính, xử lý ngôn ngữ tự nhiên và điện toán cạnh. Cô ấy cũng đam mê tiếp cận và vận động chính sách STEM dựa vào cộng đồng. Khi rảnh rỗi, người ta có thể bắt gặp cô ấy leo núi, chơi piano hoặc học cách nướng bánh nướng hoàn hảo.
Saiteja Pudi là Kiến trúc sư giải pháp tại AWS, có trụ sở tại Dallas, Tx. Anh ấy đã làm việc với AWS hơn 3 năm nay, giúp khách hàng khai thác tiềm năng thực sự của AWS bằng cách trở thành cố vấn đáng tin cậy của họ. Anh ấy xuất thân từ nền tảng phát triển ứng dụng, quan tâm đến Khoa học dữ liệu và Học máy.
- AI
- nghệ thuật ai
- máy phát điện nghệ thuật ai
- ai rô bốt
- Amazon RedShift
- Amazon SageMaker
- trí tuệ nhân tạo
- chứng nhận trí tuệ nhân tạo
- trí tuệ nhân tạo trong ngân hàng
- robot trí tuệ nhân tạo
- robot trí tuệ nhân tạo
- phần mềm trí tuệ nhân tạo
- Học máy AWS
- blockchain
- hội nghị blockchain ai
- thiên tài
- trí tuệ nhân tạo đàm thoại
- hội nghị tiền điện tử ai
- dall's
- học kĩ càng
- Chuyên gia (400)
- google ai
- học máy
- plato
- Plato ai
- Thông tin dữ liệu Plato
- Trò chơi Plato
- PlatoDữ liệu
- Platogaming
- quy mô ai
- cú pháp
- Hướng dẫn kỹ thuật
- zephyrnet