Spark Sql之Catalog


基於版本:Spark 2.2.0
把一些概念搞清楚,Spark輪廓就清晰了。

什么是Catalog,中文翻譯目錄,那啥叫目錄呢?下面是百度百科的解釋:
`目錄,是指書籍正文前所載的目次,是揭示和報道圖書的工具。目錄是記錄圖書的書名、著者、出版與收藏等情況,按照一定的次序編排而成,為反映館藏、指導閱讀、檢索圖書的工具。

簡單說,目錄是檢索工具,那么Catalog就是Spark的檢索工具。

我們從它實現的主要功能入手看一下:

  1. 獲取SparkSession可見的數據庫、表和函數(不可見就拋出異常);
  2. 給定數據庫名、表名和函數名,提供get函數獲取這些實體的信息;
  3. 列舉方法,包括列舉可見的數據庫,數據庫中的表和函數;
  4. 判斷數據庫、表或者函數是否存在;
  5. 緩存/去緩存表數據、刷新數據庫、表的內存meta信息;
  6. 創建外部表(createExternalTable)。

從上面實現的功能看,Catalog其實是Spark了解session級別可見實體(數據庫、表和函數)的一個入口,在它的具體實現CatalogImpl中還包括了創建一個新數據庫、表和函數的功能。

總結下就是:Catalog圍繞數據庫、表和函數三種實體,提供創建、檢索、緩存數據和刪除的功能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM