- vừa được xem lúc

Sử dụng SQL trong Pandas như thế nào? Chúng ta có thể giải quyết bằng duckdb!

0 0 5

Người đăng: Pham Thi Hong Anh

Theo Viblo Asia

Xin chào mọi người, hôm nay mình sẽ viết bài tìm hiểu về việc kết hợp sử dụng SQL trong pandas như thế nào. Việc sử dụng kết hợp SQL và Pandas còn giúp tăng hiệu năng cho các Data Scientist

Khi kết hợp sử dụng SQL và Pandas, bạn có thể tận dụng sức mạnh của SQL để truy vấn và lọc dữ liệu từ cơ sở dữ liệu một cách hiệu quả, sau đó sử dụng Pandas để thực hiện các phân tích, biến đổi và tạo các báo cáo từ dữ liệu đã được trích xuất. Điều này giúp tăng hiệu suất và sự linh hoạt trong quá trình làm việc với dữ liệu và làm cho công việc của Data Scientist trở nên dễ dàng hơn. Và cụ thể ở đây mình sử dụng mã nguồn mở Duckdb .

Duckdb là gì?

DuckDB là một cơ sở dữ liệu quan hệ mã nguồn mở được thiết kế để làm việc với dữ liệu lớn một cách nhanh chóng và hiệu quả. Nó có một số ưu điểm vượt trội, như khả năng xử lý truy vấn SQL nhanh hơn so với nhiều hệ thống cơ sở dữ liệu khác, đặc biệt là trong các tình huống cần phân tích dữ liệu lớn.

Kết hợp duckdb và Pandas như thế nào?

Muốn kểt hợp 2 cái này lại với nhau thì việc đầu tiên tất nhiên là chúng ta sẽ cài đặt 2 thư viện này

pip install duckdb
pip install pandas

Sau khi đã cài đặt xong thì chúng ta cùng nhau test thử thôi nào. bạn có thể tạo cơ sở dữ liệu, nhập dữ liệu, và thực thi truy vấn SQL trên dữ liệu của mình.

import duckdb # Kết nối đến cơ sở dữ liệu DuckDB
con = duckdb.connect(database='mydb.db') # Tạo một bảng và nhập dữ liệu
con.execute("CREATE TABLE mytable (id INTEGER, name STRING)")
con.execute("INSERT INTO mytable VALUES (1, 'Alice')")
con.execute("INSERT INTO mytable VALUES (2, 'Bob')") # Thực hiện truy vấn SQL và lấy kết quả thành DataFrame
result = con.execute("SELECT * FROM mytable").fetchdf()

Sau khi bạn đã thực hiện truy vấn bằng DuckDB và có kết quả, bạn có thể chuyển kết quả thành DataFrame của Pandas để tiếp tục xử lý và phân tích dữ liệu:

import pandas as pd # Chuyển kết quả từ DuckDB thành DataFrame của Pandas
df = pd.DataFrame(result, columns=result.columns)

Và kết quả thu được đây

Hình: kết quả

Lợi ích

Kết hợp DuckDB và Pandas có một số lợi ích quan trọng:

Tăng hiệu suất: DuckDB được thiết kế để xử lý dữ liệu lớn nhanh chóng, giúp tăng hiệu suất xử lý dữ liệu so với các hệ thống cơ sở dữ liệu khác.

Linh hoạt: Bạn có thể sử dụng SQL để truy vấn và xử lý dữ liệu một cách dễ dàng, sau đó chuyển kết quả thành DataFrame của Pandas để thực hiện các phân tích chi tiết.

Hỗ trợ đa nền tảng: DuckDB hỗ trợ đa nền tảng và có thể chạy trên nhiều hệ điều hành khác nhau.

Kết hợp sử dụng DuckDB và Pandas là một giải pháp hữu ích cho các Data Scientist khi làm việc với dữ liệu lớn và cần tối ưu hóa hiệu suất xử lý dữ liệu.

Kết luận

Kết hợp sử dụng DuckDB và Pandas là một giải pháp hữu ích cho các Data Scientist khi làm việc với dữ liệu lớn và cần tối ưu hóa hiệu suất xử lý dữ liệu. Cảm ơn mọi người đã đọc bài viết của mình ạ.

Tham Khảo

https://github.com/duckdb/duckdb

Bình luận

Bài viết tương tự

- vừa được xem lúc

Giới thiệu Stored Procedure trong SQL Server

Stored Procedure là 1 phần không thể thiếu của SQL Server. Chúng có thể hỗ trợ rất nhiều cho lập trình và cấu hình cơ sở dữ liệu.

0 0 134

- vừa được xem lúc

sử dụng index trong sql query

Index là một trong những yếu tố quan trọng nhất góp phần vào việc nâng cao hiệu suất của cơ sở dữ liệu. Index trong SQL tăng tốc độ của quá trình truy vấn dữ liệu bằng cách cung cấp phương pháp truy xuất nhanh chóng tới các dòng trong các bảng, tương tự như cách mà mục lục của một cuốn sách giúp bạn

0 0 178

- vừa được xem lúc

Hướng dẫn sửa lỗi không cài được SQL Server

Hôm qua do yêu cầu môn học, mình có cài lại Microsoft SQL Server. Trước đó mình có cài rồi, nhưng rồi lâu không dùng nên gỡ ra cho nhẹ máy. Bây giờ có dịp cần nên mình mới cài lại. Chi tiết lỗi mình gặp phải.

0 0 119

- vừa được xem lúc

Bạn nên tránh sử dụng Soft Delete khi có thể, và đây là lý do tại sao

Con người luôn luôn mắc sai lầm. Vì vậy, việc "lo xa" trước mọi tình huống xấu nhất chưa bao giờ là thừa.

0 0 126

- vừa được xem lúc

Sử dụng trigger trong SQL qua ví dụ cơ bản.

Trigger là gì . Cú pháp của Trigger. CREATE TRIGGER tên_trigger ON tên_bảng. FOR {DELETE, INSERT, UPDATE}.

0 0 144

- vừa được xem lúc

Khác biệt giữa khóa chính và khóa ngoại trong SQL

Các khoá chính và khóa ngoại là hai loại ràng buộc có thể được sử dụng để thực thi toàn vẹn dữ liệu trong các bảng SQL Server và đây là những đối tượng cơ sở dữ liệu quan trọng. Trong bài này, tôi muố

0 0 131