什麼是Dremel?



BigQuery並非無限能力的工具。事實上,最好避免將BigQuery視為一個諺語中的黑盒。為了加深您的理解,有必要“深入瞭解”並檢查BigQuery引擎的一些內部工作原理。

Google 的 Dremel:一個分散式計算框架

BigQuery基於一個名為Dremel的分散式計算框架,Google在2010年的一篇白皮書中更詳細地解釋了它:“Dremel:互動式分析網路規模資料集”。

這篇白皮書描述了定義現代BigQuery的許多核心特徵的願景,例如臨時查詢系統、幾乎無限的計算能力以及對處理大資料(TB和PB)的重視。

Dremel是如何工作的?

由於Dremel最初是內部產品(自2006年以來在Google內部使用),它結合了搜尋和並行資料庫管理系統的各個方面。

為了執行查詢,Dremel使用“樹狀”結構,其中查詢的每個階段都是按順序執行的,並且可以並行執行多個查詢。Dremel將SQL查詢轉換為執行樹。

槽:BigQuery執行的基礎單元

“查詢執行”標題下,作者描述了BigQuery執行的基礎單元:

  • 槽是一個抽象概念,代表可用的處理單元。
  • 槽是有限的,這就是為什麼專案中的任何阻塞通常是由於缺乏槽可用性造成的。
  • 由於槽的使用會根據許多因素(例如處理的資料量和一天中的時間)而變化,因此可以想象,在一天早些時候快速執行的查詢現在可能需要幾分鐘。

槽的抽象可能是Dremel論文中表達的最適用的概念;其他資訊有助於瞭解,但主要描述了BigQuery產品的早期迭代。

BigQuery:定價和使用模式

無論您是練習第一個BigQuery查詢的學生,還是高層決策者,瞭解定價對於確定您可以在BigQuery中儲存、訪問和操作內容的限制至關重要。

要徹底瞭解BigQuery定價,最好將成本分為兩部分:

  • 使用情況(BigQuery的文件稱之為“計算”)
  • 儲存

使用情況涵蓋了您可以想到的幾乎所有SQL活動,從執行簡單的SELECT查詢到部署ML模型或編寫複雜的自定義函式。

對於任何與使用相關的活動,BigQuery提供以下選擇:

  • 按需付費或“按需”模式。
  • 批次槽或“容量”模式,客戶按槽小時付費。

哪種定價模式最適合您?

在決定兩種定價模式之間時,務必考慮以下因素:

  • 查詢的資料量
  • 產生的使用者流量

“按需”模式按TB定價,這意味著對於擁有許多大型(多個TB)表的使用者來說,這可能是一種直觀且方便的跟蹤費用的方式。

“容量”或槽模型對於正在發展其資料基礎設施的組織或個人很有幫助,他們可能沒有固定數量的資料來幫助他們計算可靠的每月費率。與其擔心每個資源產生多少資料,不如將問題轉移到改進最佳實踐,以便將查詢時間分配給計劃流程和個人的臨時查詢。

本質上,槽模型遵循Dremel專案建立的框架,其中槽(伺服器)被預留並相應定價。

廣告
© . All rights reserved.