Dữ liệu & tài liệu

Algeon đưa các thuật toán GPU vào truy vấn SQL trên DataFusion

Engine thử nghiệm Algeon tích hợp NVIDIA cuGraph, cuVS và cuML với Apache DataFusion để chạy các tác vụ đồ thị, vector và ML ngay trong câu lệnh SQL tiêu chuẩn.

Một giá đỡ máy chủ được kết nối với một khối dữ liệu có các mạch điện phát sáng.
Minh họa được tạo riêng cho bài viết này

Được dịch tự động từ bản gốc tiếng Anh.

Người dùng GitHub algeon-dev đã phát hành Algeon, một engine truy vấn thử nghiệm cho phép thực thi các phân tích tăng tốc bằng GPU trực tiếp bên trong các câu lệnh SQL. Được xây dựng dựa trên Apache DataFusion, công cụ này cho phép các nhà phát triển kết hợp các thao tác quan hệ với các thuật toán nâng cao từ thư viện cuGraph, cuVS và cuML của NVIDIA mà không cần xuất dữ liệu sang các pipeline xử lý riêng biệt.

Chuyện gì đã xảy ra

Algeon giới thiệu một phương pháp để chạy các khối lượng công việc phân tích phức tạp, chẳng hạn như duyệt đồ thị và tìm kiếm độ tương đồng vector, bằng cú pháp SQL tiêu chuẩn. Dự án cho phép các tính toán nặng nề này diễn ra trong cùng một quy trình (in-process), giữ dữ liệu trung gian trong bộ nhớ GPU giữa các giai đoạn khác nhau của một truy vấn. Cách tiếp cận này nhằm đơn giản hóa việc tạo các pipeline ad-hoc cho dữ liệu lakehouse bằng cách loại bỏ nhu cầu về các script xuất dữ liệu bên ngoài hoặc các công cụ điều phối chuyên dụng.

Bản phát hành bao gồm nhiều ví dụ thực tế minh họa khả năng của nó. Một trường hợp đáng chú ý liên quan đến việc chạy Personalized PageRank trên 45,6 triệu cạnh trích dẫn để phân tích các bài báo học thuật. Hệ thống tính toán điểm số trên GPU và sau đó sử dụng SQL để liên kết (join) các điểm số này với tiêu đề bài báo, lọc bỏ những tài liệu tham khảo cụ thể như BERT. Một ví dụ khác sử dụng bộ dữ liệu MerRec để thực hiện phân tích chiến dịch đối tượng mục tiêu, chuỗi hóa các tính toán liên kết đồ thị, tìm kiếm hàng xóm gần nhất và dự đoán mô hình rừng trong một workflow duy nhất.

Cách thức hoạt động

Algeon hoạt động như một phần mở rộng của Apache DataFusion, một framework thực thi truy vấn module hóa. Khi một truy vấn được gửi qua SQL, DataFusion DataFrames hoặc Arrow Flight SQL, quy tắc tối ưu hóa vật lý của Algeon sẽ xác định các mảnh kế hoạch có thể được thực thi trên GPU. Nó thay thế các ứng viên này bằng việc thực thi GPU trong cùng quy trình sử dụng các thư viện NVIDIA, trong khi bất kỳ thao tác nào không được hỗ trợ vẫn tiếp tục chạy trên đường dẫn CPU. Kết quả được trả về dưới dạng các batch Arrow tiêu chuẩn, đảm bảo tính tương thích với các hệ sinh thái dữ liệu hiện có.

Engine hỗ trợ ba nhóm thuật toán chính thông qua các hàm bảng do người dùng định nghĩa (UDTFs). Các thao tác đồ thị tận dụng cuGraph, các tác vụ tương đồng vector sử dụng cuVS, và suy luận máy học dựa vào cuML. Các hàm này chấp nhận đầu vào từ các subquery và đưa đầu ra của chúng trở lại vào các phép join, aggregation hoặc các bước thuật toán tiếp theo trong cùng một câu lệnh SQL. Thiết kế này cho phép các quan hệ trung gian nằm trong bộ nhớ thiết bị, giảm thiểu chi phí chuyển dữ liệu giữa CPU và GPU.

Chi tiết chính

  • Algeon được xây dựng trên Apache DataFusion và tích hợp NVIDIA cuGraph, cuVS, cuML và cuDF.
  • Các truy vấn có thể được gửi qua SQL, DataFusion DataFrames hoặc server Arrow Flight SQL.
  • Engine giữ kết quả trung gian trong bộ nhớ GPU trong các mảnh kế hoạch được hỗ trợ để giảm thiểu độ trễ.
  • Các hạn chế hiện tại bao gồm tập làm việc (working sets) lớn hơn bộ nhớ của một GPU và các nguồn dữ liệu khác ngoài Parquet.
  • Dự án được cấp phép theo Apache License 2.0, với một số bộ dữ liệu demo theo CC BY-NC 4.0.
  • Việc xác thực GPU phải được chạy cục bộ vì các runner được lưu trữ bởi GitHub Actions hiện chưa hỗ trợ GPU NVIDIA.

Tại sao điều này quan trọng

Đối với các kỹ sư phần mềm và nhà khoa học dữ liệu, Algeon giảm bớt sự ma sát liên quan đến phân tích khám phá. Theo truyền thống, việc kết hợp các thuật toán đồ thị hoặc tìm kiếm vector với dữ liệu quan hệ đòi hỏi phải di chuyển dữ liệu giữa nhiều hệ thống, viết mã glue code tùy chỉnh và quản lý trạng thái phức tạp. Bằng cách đưa các khả năng này vào SQL, Algeon cho phép các nhà phân tích và AI agents kiểm tra các giả thuyết một cách nhanh chóng. Người dùng có thể thay đổi seed, so sánh các cohort và áp dụng các biện pháp kiểm soát bằng cách sử dụng các cấu trúc truy vấn quen thuộc, tạo điều kiện thuận lợi cho việc khám phá "unknown unknowns" trong các tập dữ liệu lớn.

Tuy nhiên, dự án được đánh dấu rõ ràng là thử nghiệm. API và hành vi truy vấn có thể thay đổi không tương thích, và độ ổn định chưa được đảm bảo. Các nhà phát triển được khuyên nên so sánh đầu ra với các kết quả tham chiếu đáng tin cậy trước khi phụ thuộc vào chúng cho các quyết định sản xuất. Việc thiếu hỗ trợ cho các chỉ mục vector hoặc mô hình tồn tại lâu dài cũng có nghĩa là nó phù hợp nhất cho phân tích ad-hoc thay vì phục vụ các khuyến nghị thời gian thực ở quy mô lớn. Bất chấp những ràng buộc này, nó cung cấp một hướng đi đầy hứa hẹn để đơn giản hóa phân tích tăng tốc bằng GPU trong các ứng dụng nặng về dữ liệu.

Bạn có thể làm gì

  • Kiểm tra image server bằng Docker với lệnh docker run --rm --gpus all -p 127.0.0.1:50051:50051 -v "$PWD:/data:ro" ghcr.io/algeon-dev/algeon-server.
  • Xem xét các ví dụ SQL được cung cấp cho Personalized PageRank và phân tích chiến dịch đối tượng mục tiêu để hiểu các mẫu cú pháp.
  • Xác minh rằng phần cứng của bạn đáp ứng các yêu cầu Linux và GPU NVIDIA trước khi cố gắng build cục bộ.
  • Nhúng Algeon vào một ứng dụng Rust bằng cách làm theo hướng dẫn phiên DataFusion để thiết lập dependency.
  • So sánh đầu ra truy vấn với các kết quả tham chiếu đã biết để tính đến trạng thái thử nghiệm hiện tại của engine.
  • Theo dõi lộ trình dự án để cập nhật về tích hợp catalog lakehouse và cải thiện độ ổn định.
  • #sql
  • #gpu
  • #datafusion
  • #analytics
  • #nvidia

Công cụ từ cửa hàng Bytechap

$89

DocBento

Hệ thống quản lý tài liệu tự host, có khả năng đọc mọi bản quét và trả lời kèm trích dẫn trang cụ thể.

Demo trực tiếp

Đọc tiếp

Dữ liệu & tài liệu

Các phòng thí nghiệm AI mua dữ liệu từ các startup đã phá sản để huấn luyện mô hình

Một thị trường thứ cấp cho dữ liệu của các công ty khởi nghiệp (startup) đã xuất hiện, với việc các phòng thí nghiệm AI mua lại kho lưu trữ từ những công ty đã đóng cửa nhằm cải thiện quá trình huấn luyện mô hình, bất chấp những lo ngại về pháp lý và quyền riê

Tất cả bài viết