Logo Zephyrnet

Cách Ontraport giảm 80% chi phí xử lý dữ liệu bằng AWS Glue | Dịch vụ web của Amazon

Ngày:

Bài đăng này được viết với sự cộng tác của Elijah Ball từ Ontraport.

Khách hàng đang triển khai khối lượng công việc dữ liệu và phân tích trong Đám mây AWS để tối ưu hóa chi phí. Khi triển khai khối lượng công việc xử lý dữ liệu trong AWS, bạn có tùy chọn sử dụng các công nghệ như Amazon EMR hoặc các công nghệ không có máy chủ như Keo AWS. Cả hai tùy chọn đều giảm thiểu các hoạt động nặng nhọc không phân biệt như quản lý máy chủ, thực hiện nâng cấp và triển khai các bản vá bảo mật, đồng thời cho phép bạn tập trung vào điều quan trọng: đáp ứng các mục tiêu kinh doanh cốt lõi. Sự khác biệt giữa cả hai cách tiếp cận có thể đóng một vai trò quan trọng trong việc cho phép tổ chức của bạn hoạt động hiệu quả và đổi mới hơn, đồng thời tiết kiệm tiền và tài nguyên.

Các dịch vụ như Amazon EMR tập trung vào việc cung cấp cho bạn sự linh hoạt để hỗ trợ khối lượng công việc xử lý dữ liệu trên quy mô lớn bằng cách sử dụng các khuôn khổ mà bạn đã quen thuộc. Ví dụ: với Amazon EMR, bạn có thể chọn từ nhiều khung xử lý dữ liệu nguồn mở, chẳng hạn như Apache Spark, Tổ ong ApacheMauvà tinh chỉnh khối lượng công việc bằng cách tùy chỉnh những thứ như loại phiên bản cụm trên Đám mây điện toán đàn hồi Amazon (Amazon EC2) hoặc sử dụng các môi trường được đóng gói chạy trên Dịch vụ Kubernetes đàn hồi của Amazon (Amazon EKS). Tùy chọn này phù hợp nhất khi di chuyển khối lượng công việc từ các môi trường dữ liệu lớn như Apache Hadoop hoặc Spark hoặc khi được sử dụng bởi các nhóm đã quen thuộc với mã nguồn mở các khung được hỗ trợ trên Amazon EMR.

Các dịch vụ không có máy chủ như Keo AWS giảm thiểu nhu cầu nghĩ về máy chủ và tập trung vào việc cung cấp năng suất bổ sung và công cụ DataOps để tăng tốc phát triển đường ống dữ liệu. AWS Glue là dịch vụ tích hợp dữ liệu serverless giúp người dùng phân tích khám phá, chuẩn bị, di chuyển và tích hợp dữ liệu từ nhiều nguồn thông qua phương pháp sử dụng mã thấp hoặc không sử dụng mã. Tùy chọn này phù hợp nhất khi các tổ chức bị hạn chế về tài nguyên và cần xây dựng khối lượng công việc xử lý dữ liệu ở quy mô lớn với chuyên môn hạn chế, cho phép họ đẩy nhanh quá trình phát triển và giảm Tổng chi phí sở hữu (TCO).

Trong bài đăng này, chúng tôi trình bày cách khách hàng AWS của chúng tôi là Ontraport đánh giá việc sử dụng AWS Glue và Amazon EMR để giảm TCO cũng như cách họ giảm 92% chi phí lưu trữ và 80% chi phí xử lý chỉ với một nhà phát triển toàn thời gian.

Khối lượng công việc và giải pháp của Ontraport

giao thông đường bộ là một dịch vụ CRM và tự động hóa hỗ trợ hoạt động tiếp thị, bán hàng và hoạt động của doanh nghiệp ở cùng một nơi—giúp doanh nghiệp phát triển nhanh hơn và mang lại nhiều giá trị hơn cho khách hàng của họ.

Xử lý và phân tích nhật ký là rất quan trọng đối với Ontraport. Nó cho phép họ cung cấp dịch vụ tốt hơn và hiểu biết sâu sắc hơn cho khách hàng chẳng hạn như tối ưu hóa chiến dịch email. Ví dụ: chỉ riêng nhật ký email đã ghi lại 3–4 sự kiện cho mỗi một trong số 15–20 triệu thư mà Ontraport gửi thay mặt cho khách hàng của họ mỗi ngày. Phân tích các giao dịch email với các nhà cung cấp như Google và Microsoft cho phép nhóm phân phối của Ontraport tối ưu hóa tỷ lệ mở cho các chiến dịch của khách hàng có danh sách liên hệ lớn.

Một số người đóng góp nhật ký lớn là máy chủ web và sự kiện CDN, bản ghi giao dịch email và nhật ký sự kiện tùy chỉnh trong các ứng dụng độc quyền của Ontraport. Sau đây là bảng phân tích mẫu về các đóng góp nhật ký hàng ngày của họ:

Nhật ký yêu cầu Cloudflare 75 triệu hồ sơ
Nhật ký yêu cầu CloudFront 2 triệu hồ sơ
Nhật ký Nginx/Apache 20 triệu hồ sơ
Nhật ký email 50 triệu hồ sơ
Nhật ký máy chủ chung 50 triệu hồ sơ
Nhật ký ứng dụng Ontraport 6 triệu hồ sơ

Giải pháp của Ontraport sử dụng Amazon KinesisAmazon Kinesis Dữ liệu Firehose để nhập dữ liệu nhật ký và ghi các bản ghi gần đây vào một Dịch vụ Tìm kiếm Mở của Amazon cơ sở dữ liệu, từ đó các nhà phân tích và quản trị viên có thể phân tích dữ liệu trong 3 tháng qua. Nhật ký ứng dụng tùy chỉnh ghi lại các tương tác với Ontraport CRM để nhóm hỗ trợ khách hàng có thể kiểm tra hoặc khôi phục tài khoản khách hàng. Ban đầu, tất cả các nhật ký được giữ lại từ năm 2018. Việc giữ lại được đa cấp theo độ tuổi:

Sơ đồ sau đây cho thấy kiến ​​trúc của quy trình xử lý nhật ký và phân tích dữ liệu của họ.

Đánh giá giải pháp tối ưu

Để tối ưu hóa việc lưu trữ và phân tích các bản ghi lịch sử của họ trong Amazon S3, Ontraport đã triển khai một quy trình ETL để chuyển đổi và nén các tệp TSV và JSON thành các tệp Parquet với phân vùng theo giờ. Quá trình nén và chuyển đổi đã giúp Ontraport giảm 3% chi phí lưu trữ S92 của họ.

Trong giai đoạn 1, Ontraport đã triển khai khối lượng công việc ETL với Amazon EMR. Với quy mô dữ liệu của họ (hàng trăm tỷ hàng) và chỉ có một nhà phát triển, nỗ lực đầu tiên của Ontraport đối với ứng dụng Apache Spark yêu cầu cụm EMR 16 nút với các nút tác vụ và lõi r5.12xlarge. Cấu hình cho phép nhà phát triển xử lý dữ liệu trong 1 năm và giảm thiểu sự cố hết bộ nhớ với phiên bản thô của ứng dụng Spark ETL.

Để giúp tối ưu hóa khối lượng công việc, Ontraport đã liên hệ với AWS để nhận các đề xuất tối ưu hóa. Có một số tùy chọn đáng kể để tối ưu hóa khối lượng công việc trong Amazon EMR, chẳng hạn như định cỡ phù hợp Đám mây điện toán đàn hồi Amazon (Amazon EC2) dựa trên cấu hình khối lượng công việc, sửa đổi cấu hình bộ nhớ Spark YARN và viết lại các phần của mã Spark. Xem xét các hạn chế về tài nguyên (chỉ có một nhà phát triển toàn thời gian), nhóm AWS khuyến nghị khám phá logic tương tự với AWS Glue Studio.

Một số lợi ích ban đầu khi sử dụng AWS Glue cho khối lượng công việc này bao gồm:

  • AWS Glue có khái niệm về trình thu thập thông tin cung cấp cách tiếp cận không dùng mã để lập danh mục nguồn dữ liệu và xác định lược đồ từ nhiều nguồn dữ liệu, trong trường hợp này là Amazon S3.
  • AWS Glue cung cấp khả năng xử lý dữ liệu tích hợp với các phương thức trừu tượng trên Spark giúp giảm chi phí cần thiết để phát triển mã xử lý dữ liệu hiệu quả. Ví dụ: AWS Glue hỗ trợ một Khung động lớp tương ứng với một Khung dữ liệu Spark cung cấp thêm tính linh hoạt khi làm việc với bộ dữ liệu bán cấu trúc và có thể nhanh chóng chuyển đổi thành Spark DataFrame. DynamicFrames có thể được tạo trực tiếp từ các bảng được thu thập dữ liệu hoặc trực tiếp từ các tệp trong Amazon S3. Xem mã ví dụ sau:
    dyf = glueContext.create_dynamic_frame.from_options( connection_type = 's3',
    connection_options = {'paths': [s3://<bucket/paths>]},
    format = 'json')

  • Nó giảm thiểu nhu cầu về Ontraport đối với các loại phiên bản có kích thước phù hợp và cấu hình tự động thay đổi quy mô.
  • Việc sử dụng phiên tương tác AWS Glue Studio cho phép Ontraport lặp lại nhanh chóng khi mã thay đổi khi cần thiết khi phát hiện quá trình phát triển lược đồ nhật ký lịch sử.

Ontraport phải xử lý 100 terabyte dữ liệu nhật ký. Chi phí xử lý mỗi terabyte với cấu hình ban đầu là khoảng 500 USD. Chi phí đó đã giảm xuống còn khoảng 100 USD mỗi terabyte sau khi sử dụng AWS Glue. Bằng cách sử dụng AWS Glue và AWS Glue Studio, chi phí xử lý công việc của Ontraport đã giảm 80%.

Tìm hiểu sâu về khối lượng công việc của AWS Glue

Ứng dụng AWS Glue đầu tiên của Ontraport là một khối lượng công việc PySpark đã nhập dữ liệu từ các tệp TSV và JSON trong Amazon S3, thực hiện các chuyển đổi cơ bản trên các trường dấu thời gian và chuyển đổi các loại dữ liệu của một vài trường. Cuối cùng, nó ghi dữ liệu đầu ra vào một bộ chứa S3 được quản lý dưới dạng các tệp Parquet được nén có kích thước khoảng 1 GB và được phân vùng trong khoảng thời gian 1 giờ để tối ưu hóa cho các truy vấn với Athena.

Với tác vụ AWS Glue được định cấu hình với 10 nhân viên thuộc loại cấu hình G.2x, Ontraport có thể xử lý khoảng 500 triệu bản ghi trong vòng chưa đầy 60 phút. Khi xử lý 10 tỷ bản ghi, họ có thể tăng cấu hình công việc lên tối đa 100 công nhân có kích hoạt tự động thay đổi quy mô để hoàn thành công việc trong vòng 1 giờ.

Cái gì tiếp theo?

Ontraport đã có thể xử lý nhật ký ngay từ năm 2018. Nhóm đang cập nhật mã xử lý để cho phép các kịch bản phát triển giản đồ (chẳng hạn như trường mới) và tham số hóa một số thành phần để tự động hóa hoàn toàn quá trình xử lý hàng loạt. Họ cũng đang tìm cách tinh chỉnh số lượng nhân viên AWS Glue được cung cấp để đạt được hiệu suất giá tối ưu.

Kết luận

Trong bài đăng này, chúng tôi đã chỉ cho bạn cách Ontraport sử dụng AWS Glue để giúp giảm chi phí phát triển và đơn giản hóa các nỗ lực phát triển cho khối lượng công việc ETL của họ chỉ với một nhà phát triển toàn thời gian. Mặc dù các dịch vụ như Amazon EMR mang đến sự linh hoạt và tối ưu hóa tuyệt vời, nhưng tính dễ sử dụng và đơn giản hóa trong AWS Glue thường mang đến lộ trình đổi mới và tối ưu hóa chi phí nhanh hơn cho các doanh nghiệp vừa và nhỏ. Để biết thêm thông tin về Keo AWS, hãy xem Bắt đầu với AWS Glue.


Về các tác giả

Bóng Ê-li đã là Quản trị viên hệ thống tại Ontraport được 12 năm. Anh ấy hiện đang làm việc để chuyển khối lượng công việc sản xuất của Ontraport sang AWS và phát triển các chiến lược phân tích dữ liệu cho Ontraport.

Pablo Redondo là Kiến trúc sư giải pháp chính tại Amazon Web Services. Anh ấy là một người đam mê dữ liệu với hơn 16 năm kinh nghiệm trong lĩnh vực FinTech và chăm sóc sức khỏe, đồng thời là thành viên của Cộng đồng lĩnh vực kỹ thuật AWS Analytics (TFC). Pablo đã lãnh đạo Chương trình AWS Gain Insights để giúp khách hàng AWS có được thông tin chi tiết tốt hơn và giá trị kinh doanh hữu hình từ các sáng kiến ​​phân tích dữ liệu của họ.

Vikram Honmurgi là Giám đốc Giải pháp Khách hàng tại Amazon Web Services. Với hơn 15 năm kinh nghiệm cung cấp phần mềm, Vikram rất tâm huyết trong việc hỗ trợ khách hàng và đẩy nhanh hành trình trên đám mây của họ, mang đến quá trình di chuyển không gặp trở ngại và đảm bảo khách hàng của chúng tôi nắm bắt được toàn bộ lợi thế kinh doanh tiềm năng và bền vững khi di chuyển sang Đám mây AWS.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img