Wird häufig verwendet, wenn 2D-Array-Daten vorübergehend in Python gespeichert werden
Sieht gut aus
CPU: Xeon E5-2630 x 2 chip VRAM: 128GB Windows8 64bit python 3.6
Versucht mit Feature-Daten für maschinelles Lernen · Pandas.DataFrame 536 Zeilen 178886 Spalten 0,77 GB ・ Pandas.DataFrame 4803 Zeilen 178886 Spalten 6,87 GB
pickle Betrachtet man nur das Komprimierungsverhältnis und die Geschwindigkeit, so ist das Protokoll = 3 oder höher von pickle ausgezeichnet, und insbesondere das Protokoll = 4 ist äußerst praktisch, da es auch das Schreiben von 4 GB oder mehr unterstützt. In der Ubuntu-Umgebung Python3.6 oder früher gibt es jedoch ein Problem mit Protokoll = 4 oder es funktioniert nicht wie beim Lesen und Schreiben. Da es normalerweise mit Python3.7 oder höher funktioniert, scheint Pickle gut zu sein, wenn die Umgebung gesichert werden kann oder die Kapazität gering ist.
joblib Im Vergleich zu pickle sind die Komprimierungsrate und die Lese- / Schreibgeschwindigkeit etwas halbiert, aber da es möglich ist, 4 GB oder mehr sogar in der Python3.6-Umgebung zu lesen / schreiben, kann dies für diejenigen gut sein, die aus Paketgründen kein neues Python erstellen können.
pyarrow => parquet Es ist attraktiv, dass Sie bestimmte Zeilen und Spalten lesen und schreiben können, während Sie die gleiche Komprimierungsrate und Lese- / Schreibgeschwindigkeit wie joblib compress = 0 haben. Zumal das Schreiben schnell ist, scheint dies gut zu sein, wenn Lesen und Schreiben zufällig eingegeben werden.
Der Einfluss der Umgebung scheint sehr groß zu sein, und als ich auf einem anderen Computer mit einem anderen Betriebssystem experimentierte, war der Unterschied nur 20 Mal, aber nur 4 Mal. Es scheint besser zu sein, in der Umgebung zu testen, in der Sie es tatsächlich verwenden.