緩存表

在Apache Spark緩存中使用給定的存儲級別緩存表的內容或查詢的輸出。如果緩存了一個查詢,那麼將為此查詢創建一個臨時視圖。這減少了在以後查詢中對原始文件的掃描。

語法

緩存懶惰的表格table_name選項“storageLevel”價值作為查詢

看到自動和手動緩存磁盤緩存和Apache Spark緩存的區別。

參數

  • 懶惰的

    隻有在第一次使用表時才緩存它,而不是立即緩存。

  • table_name

    標識要緩存的增量表或視圖。名稱中不能包含時間規範

  • 選項(' storageLevel ' [=] value)

    選項條款與storageLevel鍵和值對。當密鑰不是storageLevel使用。的有效選項storageLevel是:

    • 沒有一個

      • DISK_ONLY

      • DISK_ONLY_2

      • MEMORY_ONLY

      • MEMORY_ONLY_2

      • MEMORY_ONLY_SER

      • MEMORY_ONLY_SER_2

      • MEMORY_AND_DISK

      • MEMORY_AND_DISK_2

      • MEMORY_AND_DISK_SER

      • MEMORY_AND_DISK_SER_2

      • OFF_HEAP

    當為無效值設置時,將引發異常storageLevel.如果storageLevel沒有顯式設置使用選項條款,默認storageLevel被設置為MEMORY_AND_DISK

  • 查詢

    生成要緩存的行的查詢。它可以是以下格式之一:

    • 一個選擇聲明

    • 一個表格聲明

    • 一個聲明

例子

>緩存表格testCache選項“storageLevel”“DISK_ONLY”選擇testData