Python có một số công cụ rất tốt để làm việc với dữ liệu lớn:
numpy
Các mảng được ánh xạ memmory của Numpy cho phép bạn truy cập một tệp được lưu trên đĩa như thể đó là một mảng. Chỉ các phần của mảng bạn đang tích cực làm việc cần phải được tải vào bộ nhớ. Nó có thể được sử dụng khá giống như một mảng thông thường.
h5py và pytables
Hai thư viện này cung cấp quyền truy cập vào các tệp HDF5. Những tập tin này cho phép truy cập vào một phần dữ liệu. Hơn nữa, nhờ các thư viện cơ bản được sử dụng để truy cập dữ liệu, nhiều thao tác toán học và các thao tác khác của dữ liệu có thể được thực hiện mà không cần tải nó vào cấu trúc dữ liệu python. Các tập tin lớn, có cấu trúc cao là có thể, lớn hơn nhiều so với 5 TB. Nó cũng cho phép nén liền mạch, không mất dữ liệu.
cơ sở dữ liệu
Có nhiều loại cơ sở dữ liệu cho phép bạn lưu trữ các tập dữ liệu lớn và chỉ tải các phần bạn cần. Nhiều cơ sở dữ liệu cho phép bạn thực hiện các thao tác mà không cần tải dữ liệu vào cấu trúc dữ liệu python.
gấu trúc
Điều này cho phép truy cập cấp cao hơn vào các loại dữ liệu khác nhau, bao gồm dữ liệu HDF5, tệp csv, cơ sở dữ liệu, thậm chí các trang web. Đối với dữ liệu lớn, nó cung cấp trình bao bọc xung quanh quyền truy cập tệp HDF5 giúp phân tích trên các tập dữ liệu lớn dễ dàng hơn.
mpi4py
Đây là một công cụ để chạy mã python của bạn theo cách phân tán trên nhiều bộ xử lý hoặc thậm chí nhiều máy tính. Điều này cho phép bạn làm việc trên các phần của dữ liệu của bạn đồng thời.
dask
Nó cung cấp một phiên bản của mảng numpy bình thường hỗ trợ nhiều hoạt động numpy bình thường theo cách đa lõi có thể hoạt động trên dữ liệu quá lớn để phù hợp với bộ nhớ.
ngọn lửa
Một công cụ được thiết kế đặc biệt cho dữ liệu lớn. Về cơ bản, nó là một trình bao bọc xung quanh các thư viện trên, cung cấp giao diện nhất quán cho nhiều phương pháp khác nhau để lưu trữ một lượng lớn dữ liệu (như HDF5 hoặc cơ sở dữ liệu) và các công cụ để dễ dàng thao tác, thực hiện các thao tác toán học và phân tích dữ liệu là quá lớn để phù hợp với bộ nhớ.