資料集檢視器文件

伺服器基礎設施

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

伺服器基礎設施

資料集檢視器有兩個主要元件協同工作,以即時返回關於資料集的查詢結果:

  • 用於探索和返回資料集資訊的面向使用者的Web API
  • 一個伺服器提前執行查詢,並將它們快取在資料庫中

雖然大部分文件都集中在Web API上,但伺服器至關重要,因為它執行所有耗時的預處理並存儲結果,以便Web API可以檢索並提供給使用者。這為使用者節省了時間,因為資料集檢視器無需在每次請求時生成響應,而是可以立即從快取中返回預處理的結果。

有三個要素使伺服器保持執行:作業佇列、工作器和快取。

作業佇列

作業佇列是儲存在Mongo資料庫中的作業列表,這些作業應由工作器完成。這些作業實際上與使用者使用的端點相同;只是伺服器會提前執行這些作業,當用戶使用端點時即可獲得結果。

有三個作業:

  • /splits 對應於 /splits 端點。它會重新整理資料集,然後返回該資料集的切分和子集。對於資料集中的每個切分,它都會建立一個新作業。
  • /first-rows 對應於 /first-rows 端點。它獲取資料集切分的前100行和列。
  • /parquet 對應於 /parquet 端點。它下載整個資料集,將其轉換為 parquet 格式,並將parquet檔案釋出到Hub。

您可能已經注意到 /rows/search 端點在佇列中沒有作業。這些端點的響應是按需生成的。

工作器

工作器負責執行佇列中的作業。它們完成實際的預處理請求,例如獲取切分和子集列表。工作器可以透過可配置的環境變數進行控制,例如工作器返回的最小或最大行數,或者每個資料集使用者或組織啟動的最大作業數。

如果您有興趣瞭解更多資訊,請參閱工作器配置,以獲取完整的環境變數列表。

快取

一旦工作器完成一項作業,結果就會儲存在(即*快取*在)Mongo資料庫中。當用戶使用諸如 /first-rows 之類的端點發出請求時,資料集檢視器會從快取中檢索預處理的響應,並將其提供給使用者。這消除了使用者在伺服器尚未完成作業並存儲響應時所等待的時間。

因此,使用者幾乎可以即時獲取他們請求的關於資料集的資訊(甚至是大型資料集)!

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.