Cache-Tabellen in Apache Spark SQL

Aus dem Spark-Beamtendokumentiere, es sagt

it @Spark SQL können Tabellen in einem speicherinternen Spaltenformat zwischengespeichert werden, indem sqlContext.cacheTable ("tableName") oder dataFrame.cache () aufgerufen wird. Dann scannt Spark SQL nur die erforderlichen Spalten und optimiert die Komprimierung automatisch, um die Speichernutzung und den GC-Druck zu minimieren. Sie können sqlContext.uncacheTable ("tableName") aufrufen, um die Tabelle aus dem Speicher zu entfernen.

Was bedeutet das Zwischenspeichern von Tabellen in einem speicherinternen Spaltenformat wirklich? Den ganzen Tisch in Erinnerung behalten? Da wir wissen, dass der Cache auch faul ist, wird die Tabelle nach der ersten Aktion in der Abfrage zwischengespeichert. Macht es einen Unterschied für die zwischengespeicherte Tabelle, wenn Sie andere Aktionen oder Abfragen auswählen? Ich habe dieses Cache-Thema mehrmals gegoogelt, aber einige detaillierte Artikel nicht gefunden. Ich würde mich sehr freuen, wenn jemand Links oder Artikel zu diesem Thema bereitstellen kann.

http: //spark.apache.org/docs/latest/sql-programming-guide.html#caching-data-in-memor

Antworten auf die Frage(2)

Ihre Antwort auf die Frage