Ich benutze Funken Berechnung. alle 5 Minuten bekam ich einen neuen Datenrahmen. Ich habe es in einem dict wie dieser RahmenWie ein Datenframe in Funke freizugeben?
dict_1_hour[timestamp] = dataframe
Neue Daten genannt dict_1_hour kommt in die dict und alten Datenrahmen aus dem dict herausspringen. Es sind nur 12 Datenfelder gespeichert, das sind die Daten der letzten 1 Stunde.
Also meine Frage ist, wie sollte ich diese Datenrahmen freigeben, um sicherzustellen, dass kein Speicherleck ist?
Eine API für Datenrahmen scheint es tun kann. (Ich weiß nicht, was die Parameter für)
unpersist(blocking=True)
Marks the DataFrame as non-persistent, and remove all blocks for it from memory and disk.
Die andere Art, wie ich glaube, nur den Datenrahmen aus dem dict Pop ist.
Python sollte die nicht verwendete Variable automatisch freigeben. Aber ich weiß nicht, ob es hier angebracht ist. Ich machte mir Sorgen, dass Funke die Datenrahmen halten, wenn Sie es nicht explizit
Also bitte Beratung freisetzen, auf dem Weg, ich bitte
Warum denken Sie, es ist ein Speicherleck? Python ist Müll gesammelt und ist in der Regel sehr gut in der Verwaltung von Speicher für Sie. –
Eigentlich gibt es jetzt ein Speicherleck. Das Speicherleck verursacht das Spark Driver-Programm beenden @Akshat Mahajan –