在控制台中建構查詢
您可以使用 Bigtable Studio 查詢產生器查詢及查看 Bigtable 資料。查詢產生器是 Google Cloud 控制台中的互動式表單,可讓您建構查詢、針對資料表執行查詢,然後在控制台中查看結果。
您可以使用 Bigtable Studio 查詢建構工具,透過下拉式選取器指定查詢子句組合,不必編寫應用程式或使用 CLI。執行查詢時,主控台會呼叫 Bigtable Data API,傳回符合查詢的資料。
本文說明如何使用查詢產生器,並提供查詢最佳化訣竅。閱讀本頁之前,請先熟悉 Bigtable 總覽。
在查詢產生器中執行的查詢,與傳送至資料表的任何其他查詢一樣,適用相同的定價和配額。
查詢產生器的使用時機
在Google Cloud 控制台中查詢 Bigtable 資料有助於執行下列操作:
- 快速取得資料表結構定義的視覺化呈現方式。
- 確認特定資料已成功寫入。
- 在遷移期間驗證資料完整性。
- 偵錯可能的資料問題。
- 在程式碼中使用子句組合前,請先預覽該組合傳回的結果。這對 Bigtable 新手和不想使用
cbt
CLI 的經驗豐富使用者來說,特別有幫助。
事前準備
如要取得使用查詢建構工具所需的權限,請要求管理員為您授予專案的 Bigtable 讀取者 (roles/bigtable.reader
) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這個預先定義的角色具備使用查詢產生器所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要使用查詢產生器,必須具備下列權限:
-
bigtable.tables.get
-
bigtable.instances.get
-
bigtable.appProfiles.list
-
bigtable.tables.list
-
bigtable.tables.readRows
如果沒有可供查詢的資料表,可以建立小型測試資料表,並對該資料表執行查詢。
開啟查詢產生器
開啟查詢建構工具時,系統會執行預設查詢,並顯示執行個體中按字母順序排列的第一個資料表。預設查詢會使用預設應用程式設定檔執行,最多傳回 100 個資料列。
在 Google Cloud 控制台中開啟 Bigtable 執行個體清單。
按一下包含要查詢資料表的執行個體名稱。
在導覽窗格中,按一下「Bigtable Studio」。「Bigtable Studio」頁面會以查詢建立工具模式開啟。「Explorer」(探索工具) 窗格會列出執行個體中的資料表,「Query results」(查詢結果) 窗格則會顯示預設查詢的結果。
選用步驟:收合「Explorer」窗格,放大查詢產生器窗格。
資料顯示格式
查詢產生器結果會顯示在表格中。第一個標題和資料欄是「資料列鍵」。其餘標題各代表 Bigtable 資料表中的一個資料欄,以半形冒號分隔資料欄系列和資料欄限定詞。舉例來說,標題「cell_plan: data_plan_01gb」表示該資料欄中的值來自 cell_plan
資料欄系列中的 data_plan_01gb
資料欄。
系統只會傳回資料欄的最新值。時間戳記預設為隱藏,但你可以點選切換鈕來顯示。
選取資料表
使用「資料表」下拉式選單,選取要查詢的資料表 ID。
選用:指定應用程式設定檔
您可以建立專供查詢建構工具使用的應用程式設定檔。舉例來說,如果您想使用與主要應用程式不同的叢集,隔離查詢流量,這項功能就相當實用。
如要使用其他應用程式設定檔執行下一個查詢,請按照下列步驟操作。
- 按一下「新增至查詢」。
- 按一下「變更應用程式設定檔 (預設)」。系統會顯示新的下拉式選單。
- 使用「應用程式設定檔」下拉式選單,從執行個體的應用程式設定檔清單中選擇。
如要進一步瞭解針對不同工作負載使用不同應用程式設定檔的優點,請參閱「關於應用程式設定檔」。如要瞭解如何建立應用程式設定檔,請參閱「建立及設定應用程式設定檔」一文。
如果資料表位於使用複製功能的執行個體中,請設定應用程式設定檔,從地理位置最接近您的叢集讀取資料。
在查詢中新增子句,然後執行查詢
- 選取表格和應用程式設定檔後,請在查詢中新增子句。 如要瞭解可用的條款,請參閱下一節。
- 新增完所有子句後,按一下「執行」。
- 查看結果。
查詢子句
您可以使用查詢建構工具,在查詢中加入子句。執行查詢時,查詢產生器會建立並傳送讀取要求至資料表。如要進一步瞭解讀取要求,請參閱「讀取」。
資料列索引鍵、資料列索引鍵範圍和資料列索引鍵前置字串子句,會決定從儲存空間擷取的資料列。資料列鍵的 regex、資料欄和時間範圍子句會將篩選器新增至產生的讀取要求。在查詢產生器中使用的篩選條件,與在用戶端程式庫中使用的篩選條件相同。如要進一步瞭解 Bigtable 篩選器,以及使用篩選器對效能的影響,請參閱「篩選器」和「使用篩選器」。
指定資料列索引鍵
如要從資料表擷取單一資料列,請提供資料列鍵值。您可以新增多個資料列鍵子句。
- 按一下「新增至查詢」。
- 在下拉式清單中,選取「資料列鍵」。
- 輸入要查看值的資料列鍵確切值。
指定資料列索引鍵範圍
如要從資料表擷取資料列範圍,請指定開始和結束資料列鍵。Bigtable 會依資料列索引鍵的字典順序儲存資料。
- 按一下「新增至查詢」。
- 在下拉式清單中,選取「資料列鍵範圍」。
- 輸入完整的起始資料列索引鍵。
- 輸入完整的結尾資料列索引鍵。
指定資料列索引鍵前置字串
如要只擷取資料列鍵開頭為特定字元集的資料列,請依資料列鍵前置字元篩選。資料列索引鍵前置字串是資料列索引鍵的前 N 個字元。按照慣例,前置字元和其餘資料列鍵之間通常會有井號、管道或其他符號。
- 按一下「新增至查詢」。
- 在下拉式清單中,選取「資料列鍵前置字元」。
- 輸入資料列索引鍵前置字串。不需要輸入任何萬用字元。
依資料列索引鍵規則運算式篩選
如要只取得資料列索引鍵值符合指定規則運算式的資料列,請使用資料列索引鍵規則運算式篩選器。如要提升效能,請先在查詢中加入資料列索引鍵範圍或資料列索引鍵前置字串子句,再加入資料列索引鍵規則運算式篩選器。如需編寫規則運算式的指引,請參閱資料列索引鍵規則運算式。
- 按一下「新增至查詢」。
- 在下拉式清單中,選取「資料列鍵規則運算式」。
- 輸入使用 re2 語法的規則運算式
依欄篩選
如要指定要在查詢中納入的一或多個資料欄,請新增 columns 子句,並為要篩選的每個資料欄選擇資料欄系列和資料欄限定詞。加入這個子句時產生的讀取要求,會包含資料欄系列 regex 篩選器和資料欄範圍篩選器。
- 按一下「新增至查詢」。
- 在下拉式清單中,選取「資料欄」。
- 按一下「欄」欄位。畫面上會顯示資料欄系列清單。
- 按一下資料欄系列 ID。系統會顯示欄限定詞清單。
- 按一下資料欄限定詞。
依時間範圍篩選
如要只擷取時間戳記落在特定範圍內的儲存格,請新增時間範圍子句,該子句會使用時間戳記範圍篩選器。
- 按一下「新增至查詢」。
- 在下拉式清單中選取「時間範圍」。
- 輸入起始時間戳記。
- 輸入結束時間戳記。
請使用下列其中一種格式提供時間戳記:
- 以微秒為單位的 Unix 時間戳記,例如
3023483279876000
- YYYY-MM-DDThh:mm:ss:ss[z]
- YYYY/MM/DD-hh:mm:ss.sss[z]
- MM/DD/YYYY
- YYYY/MM/DD
選用的 T
是表示時間的常值,選用的 z
則表示世界標準時間,而非當地時間。如要進一步瞭解時間戳記格式,請參閱 ISO 8601。
指定限制
如要指定傳回的資料列數量上限,請新增限制子句。
- 按一下「新增至查詢」。
- 在下拉式清單中選取「限制」。
- 請輸入介於 1 到 1,000 之間的數字。
限制
查詢產生器有以下限制。
- 每個儲存格最多 1,000 個字元:Bigtable 每個儲存格最多會傳回 1,000 個字元。如果儲存格包含超過 1,000 個字元,系統會顯示截斷的結果,並註記未顯示的字元數。
- 最多 100 個資料欄:Bigtable 會傳回每個資料列中與查詢相符的前 100 個資料欄。資料欄系列不會以任何特定順序儲存,但資料欄會按資料欄系列中的字母順序排序。
- 最多 1,000 列:查詢產生器最多只會傳回符合查詢條件的前 1,000 列資料。
- Base64 - Bigtable 會盡力準確顯示 Base64 編碼資料,但無法保證結果。如果 Bigtable 無法在儲存格中顯示資料,則會改為顯示儲存格值的大小 (以位元組為單位)。
舊資料:您只能擷取所查詢資料欄中最新的儲存格 (或版本)。如要進一步瞭解這個概念,請參閱 Bigtable 儲存模型和一般概念。
序列化資料 - 以 Protocol Buffers 形式儲存的資料不會正確顯示在查詢結果中。系統會盡量支援 JSON 資料,但不保證顯示正確。
人工時間戳記:如果應用程式在將資料寫入表格時,為儲存格的時間戳記屬性指派非時間戳記的數字,只要將這些數字指定為微秒,即可在查詢中使用時間範圍篩選器,取得您使用的值範圍 (而非時間戳記)。如要瞭解資料表資料為何可能使用人工時間戳記,請參閱時間戳記