1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng etl pipeline bằng nền tảng aws

52 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

TRƯỜNG ĐẠI HỌC KINH TẾ KHOA THỐNG KÊ – TIN HỌC BÁO CÁO THỰC TẬP NGHỀ NGHIỆP NGÀNH HỆ THỐNG THÔNG TIN QUẢN LÝ CHUYÊN NGÀNH QUẢN TRỊ HỆ THỐNG THÔNG TIN XÂY DỰNG ETL PIPELINE BẰNG NỀN TẢNG AWS Đơn vị thực tập : TMA Bình Định Giảng viên hướng dẫn : ThS.Trần Thị Thu Thảo LỜI CẢM ƠN Để hoàn thành báo cáo thực tập nghề nghiệp này, trước tiên em xin gửi lời cảm ơn chân thành đến quý thầy, cô giảng viên khoa Thống kê - Tin học, trường Đại học Kinh tế - Đại học Đà Nẵng tạo điều kiện hỗ trợ em trình học tập thực tập Nhờ có dẫn động viên thầy cơ, chúng em có hồn thành báo cáo thực tập nghề nghiệp với tên đề tài “Xây dựng ETL Pipeline tảng AWS” Tiếp theo, em xin gửi lời cảm ơn đến quý Công ty TNHH Giải pháp Phần mềm Tường Minh Bình Định, nơi chúng em thực tập Em xin cảm ơn ban lãnh đạo công ty tạo hội cho em làm việc môi trường chuyên nghiệp thân thiện Em xin cảm ơn anh chị cán bộ, nhân viên phòng Data Science giúp đỡ em dự án cơng việc Nhờ có hướng dẫn chia sẻ anh chị, em có kinh nghiệm học thực tiễn bổ ích Đặc biệt, em xin gửi lời cảm ơn chân thành sâu sắc đến thầy TS Trần Thị Thu Thảo - Giảng viên hướng dẫn anh Trần Nam Hải - người trực tiếp hướng dẫn cơng ty theo dõi q trình thực tập em, sẵn sàng giải đáp thắc mắc khó khăn Đã dành cho chúng em lời khun góp ý q giá để hồn thiện báo cáo Trong trình thực tập thực báo cáo, kiến thức cịn nhiều hạn chế nên em khơng thể tránh khỏi sai sót, kính mong nhận góp ý q thầy cơ, q cơng ty để chúng em rút kinh nghiệm chỉnh sửa Em xin chân thành cảm ơn! LỜI CAM ĐOAN Em xin cam đoan báo cáo “Xây dựng ETL Pipeline tảng AWS” kết nghiên cứu em hướng dẫn giảng viên hướng dẫn TS.Trần Thị Thu Thảo anh Trần Nam Hải Cơng ty TMA Bình Định Báo cáo thực tập sản phẩm mà em nổ lực nghiên cứu suốt thời gian thực tập Cơng ty TMA Bình Định Em cam kết tất thông tin cung cấp báo cáo thực tập nghề nghiệp xác, trung thực Em xin chịu hoàn toàn trách nhiệm, kỷ luật nhà trường có vấn đề xảy MỤC LỤC LỜI CẢM ƠN iii LỜI CAM ĐOAN iv MỤC LỤC v DANH MỤC HÌNH ẢNH viii DANH MỤC CÁC TỪ VIẾT TẮT xi LỜI MỞ ĐẦU CHƯƠNG GIỚI THIỆU VỀ ĐƠN VỊ THỰC TẬP VÀ ĐỀ TÀI 1.1 Giới thiệu tổng quát đơn vị thực tập 1.1.1 Thông tin chung đơn vị thực tập 1.1.2 Thông tin liên hệ 1.1.3 Lịch sử hình thành 1.1.4 Lĩnh vực kinh doanh CHƯƠNG CƠ SỞ LÝ THUYẾT HỖ TRỢ XÂY DỰNG ETL PIPELINE BẰNG NỀN TẢNG AWS 2.1 Giới thiệu công việc Kỹ sư liệu 2.1.1 Khái niệm Kỹ sư liệu 2.1.2 Kỹ cần thiết cho Kỹ sư liệu 2.1.3 Công nghệ công cụ thường sử dụng công việc 2.1.4 Lĩnh vực 2.1.5 Cơ hội thách thức 5 2.2 Giới thiệu Hồ liệu 2.3 Giới thiệu ETL Pipeline 2.3.1 Khái niệm ETL Pipeline 2.3.2 Các trường hợp sử dụng ETL Pipeline 2.4 Giới thiệu tảng dịch vụ AWS 2.4.1 Giới thiệu điệu toán đám mây 2.4.2 Nền tảng Amazon Web Services 2.4.3 Các dịch vụ AWS sử dụng dự án 2.5 Giới thiệu công cụ hỗ trợ 11 2.5.1 Ngôn ngữ truy vấn SQL 11 2.5.2 Ngơn ngữ lập trình Python 11 2.5.3 Hệ sinh thái Apache Spark 11 2.5.4 Giới thiệu PySpark 12 CHƯƠNG ỨNG DỤNG CÁC DỊCH VỤ TRÊN NỀN TẢNG AWS ĐỂ XÂY DỰNG ETL PIPELINE 13 3.1 Giới thiệu liệu 13 3.1.1 Bối cảnh liệu 13 3.1.2 Cấu trúc liệu 13 3.2 Sơ đồ kiến trúc ETL Pipeline 14 3.2.1 Công cụ thiết kế 14 3.2.2 Thiết kế sơ đồ kiến trúc ETL Pipeline 14 3.3 Triển khai xây dựng ETL Pipeline AWS 15 3.3.1 Tạo vai trò IAM 15 3.3.2 Tạo bucket Amazon S3 16 3.3.3 Tạo sở liệu AWS Glue 17 3.3.4 Tạo Crawler AWS Glue 19 3.3.5 Tạo ETL Jobs 22 3.3.6 Tạo trigger AWS Glue 28 3.3.7 Tạo function Lambda 29 3.3.8 Hoạt động quy trình 31 3.3.9 Truy vấn liệu Athena 35 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 37 TÀI LIỆU THAM KHẢO 39 CHECK LIST CỦA BÁO CÁO 40 DANH MỤC HÌNH ẢNH Hình 1.1.1 Cơng ty TMA Solutions Bình Định Hình 2.2.1 Kiến trúc Hồ liệu Hình 2.3.1 Các bước ETL Hình 2.4.1 Nền tảng Amazon Web Services Hình 2.5.1 Logo PySpark 12 Hình 3.1.1 Sàn giao dịch OpenSea 13 Hình 3.2.1 Giao diện hỗ trợ hình cho việc thiết kế 14 Hình 3.2.2 Sơ đồ kiến trúc ETL Pipeline 14 Hình 3.3.1 Giao diện AWS IAM 15 Hình 3.3.2 Các vai trị tạo 15 Hình 3.3.3 Giao diện ban đầu Amazon S3 16 Hình 3.3.4 Tùy chọn thơng tin bucket tạo 16 Hình 3.3.5 Chọn nút “Create bucket” cuối trang 17 Hình 3.3.6 Các bucket tạo 17 Hình 3.3.7 Tạo sở liệu 18 Hình 3.3.8 Chi tiết sở liệu tạo 18 Hình 3.3.9 Cơ sở liệu tạo 18 Hình 3.3.10 Chọn “Create crawler” 19 Hình 3.3.11 Thuộc tính crawler 20 Hình 3.3.12 Chọn nguồn liệu phân lớp 20 Hình 3.3.13 Chọn vai trị IAM 20 Hình 3.3.14 Chọn đầu crawler 21 Hình 3.3.15 Xem lại tùy chọn tạo 21 Hình 3.3.16 Giao diện crawler sau tạo 21 Hình 3.3.17 Các crawlers tạo 22 Hình 3.3.18 Tạo Glue Job AWS Glue Studio 22 Hình 3.3.19 Giao diện “Spark script editor” 22 Hình 3.3.20 Import thư viện 23 Hình 3.3.21 Khởi tạo phiên Spark 23 Hình 3.3.22 Đọc liệu 23 Hình 3.3.23 Xóa cột khơng cần thiết 24 Hình 3.3.24 Cột “_c0” số 24 Hình 3.3.25 Đổi tên cột “_c0” thành “num_series” 24 Hình 3.3.26 Cộng thêm cột num_series 24 Hình 3.3.27 Cột “event_time” 24 Hình 3.3.28 Cột “asset_contract_date” 25 Hình 3.3.29 Thay đổi giá trị hai cột khung giống “date” 25 Hình 3.3.30 Số lượng hàng “null” cột 25 Hình 3.3.31 Thay đổi giá trị “null” fillna() 26 Hình 3.3.32 Loại bỏ hàng có giá trị “null” “dropna()” 26 Hình 3.3.33 Ghi liệu vào đường dẫn S3 26 Hình 3.3.34 Tổng quan Script 26 Hình 3.3.35 Chi tiết Glue Job tạo 27 Hình 3.3.36 Chi tiết nâng cao Glue Job tạo 27 Hình 3.3.37 Chọn “Save” để lưu Glue Job 27 Hình 3.3.38 Script Job lưu vào S3 28 Hình 3.3.39 Giao diện trigger “job-trigger” 28 Hình 3.3.40 Nguồn tài nguyên kích hoạt 28 Hình 3.3.41 Nguồn tài ngun giám sát 29 Hình 3.3.42 Chọn “Create function” 29 Hình 3.3.43 Thơng tin function 29 Hình 3.3.44 Chọn quyền truy cập cho function 30 Hình 3.3.45 Giao diện sau tạo function 30 Hình 3.3.46 Thêm trigger cho function 30 Hình 3.3.47 Code source để bắt đầu crawler 31 Hình 3.3.48 Các function sau tạo 31 Hình 3.3.49 Bộ liệu tải lên 31 Hình 3.3.50 Q trình crawler liệu thơ hồn tất 32 Hình 3.3.51 Glue Job tự động khởi chạy 32 Hình 3.3.52 Glue Job chạy thành cơng 32 Hình 3.3.53 Dữ liệu sau biến đổi 33 Hình 3.3.54 Crawler tự động khởi chạy 33 Hình 3.3.55 Hai bảng sau hồn tất quy trình 33 Hình 3.3.56 Tổng qt bảng liệu thơ 34 Hình 3.3.57 Schema liệu thơ (1) 34 Hình 3.3.58 Schema liệu thơ (2) 34 Hình 3.3.59 Tổng qt bảng liệu 35 Hình 3.3.60 Schema bảng liệu 35 Hình 3.3.61 Truy vấn bảng liệu thơ 35 Hình 3.3.62 Kết truy vấn bảng liệu thơ 36 Hình 3.3.63 Truy vấn bảng liệu 36 Hình 3.3.64 Kết truy vấn bảng liệu 36 10 DANH MỤC CÁC TỪ VIẾT TẮT AWS : Amazon Web Services NFT : Non-Fungible Token GCP : Google Cloud Platform SQL : Structured Query Language DB : Database SaaS : Software as a Service CRM : Customer Relationship Management IaaS : Infrastructure as a Service PaaS : Platform as a Service S3 : Simple Storage Service ETL : Extract, Transform, Load IAM : Identity and Access Management API : Application Programming Interface MLlib : Machine Learning Library 11

Ngày đăng: 12/12/2023, 19:48

w