Python bietet einige sehr gute Tools für die Arbeit mit Big Data:
taub
Mit den memorymappierten Arrays von Numpy können Sie auf eine auf der Festplatte gespeicherte Datei zugreifen, als wäre es ein Array. Nur die Teile des Arrays, mit denen Sie aktiv arbeiten, müssen in den Speicher geladen werden. Es kann fast genauso wie ein gewöhnliches Array verwendet werden.
h5py und pytables
Diese beiden Bibliotheken bieten Zugriff auf HDF5-Dateien. Diese Dateien ermöglichen den Zugriff auf nur einen Teil der Daten. Dank der zugrunde liegenden Bibliotheken, die für den Zugriff auf die Daten verwendet werden, können viele mathematische Operationen und andere Manipulationen der Daten durchgeführt werden, ohne sie in eine Python-Datenstruktur zu laden. Massive, stark strukturierte Dateien sind möglich, viel größer als 5 TB. Es ermöglicht auch eine nahtlose, verlustfreie Komprimierung.
Datenbanken
Es gibt verschiedene Arten von Datenbanken, mit denen Sie große Datenmengen speichern und nur die Teile laden können, die Sie benötigen. In vielen Datenbanken können Sie Änderungen vornehmen, ohne die Daten in eine Python-Datenstruktur zu laden.
Pandas
Dies ermöglicht einen übergeordneten Zugriff auf verschiedene Datentypen, einschließlich HDF5-Daten, CSV-Dateien, Datenbanken und sogar Websites. Für Big Data werden Wrapper für den HDF5-Dateizugriff bereitgestellt, die die Analyse von Big Data-Sets erleichtern.
mpi4py
Dies ist ein Tool, mit dem Sie Ihren Python-Code auf mehrere Prozessoren oder sogar mehrere Computer verteilt ausführen können. Auf diese Weise können Sie Teile Ihrer Daten gleichzeitig bearbeiten.
dask
Es stellt eine Version des normalen Numpy-Arrays bereit, die viele der normalen Numpy-Operationen auf Mehrkern-Weise unterstützt und Daten verarbeitet, die zu groß sind, um in den Speicher zu passen.
lodern
Ein Tool, das speziell für Big Data entwickelt wurde. Grundsätzlich handelt es sich um einen Wrapper um die oben genannten Bibliotheken, der konsistente Schnittstellen zu einer Vielzahl verschiedener Methoden zum Speichern großer Datenmengen (z. B. HDF5 oder Datenbanken) und Tools bietet, mit denen sich Daten, die bearbeitet, rechnerisch bearbeitet und analysiert werden können ist zu groß, um in den Speicher zu passen.