Chuyển đến nội dung chính

Bạn dùng TablePro hằng ngày? License thêm tính năng trả phí và nuôi bản phát hành tiếp theo. Mua licenseMua license ủng hộ TablePro

Client Google BigQuery cho Mac

Viết GoogleSQL trên các dataset của project, xem một query sẽ quét bao nhiêu dữ liệu trước khi chạy, và đặt mức trần cho chi phí của một job. Bạn sửa được dòng ngay trong data grid, còn table được unload ra Cloud Storage mà không đi qua máy Mac.

Dùng được trên MacDriver được tải về ở lần đầu bạn chọn Google BigQuery

Tóm tắt

Ngôn ngữ query
SQL
Driver
Tải về ở lần dùng đầu
Cách kết nối
API của dịch vụ
iPhone và iPad
Không mở được

Đăng nhập Google Cloud

Chọn Phương thức xác thực (Auth Method) và nhập Project ID: là ID, không phải tên hay số của project. Application Default Credentials đọc file do gcloud auth application-default login tạo ra, nên đây là cách gọn nhất khi gcloud đã được thiết lập sẵn. Khóa tài khoản dịch vụ (Service Account Key) nhận một file key .json hoặc nội dung JSON dán vào.

Google Account (OAuth) đăng nhập qua trình duyệt bằng một OAuth client loại desktop mà bạn tạo trong Google Cloud Console. Refresh token được lưu trong Keychain, mỗi OAuth client một token, nên những lần kết nối sau không cần mở trình duyệt. Một OAuth client chỉ đăng nhập một tài khoản Google, nên tài khoản thứ hai cần một client thứ hai hoặc refresh token riêng của tài khoản đó.

Mọi thứ đi qua REST API của BigQuery, nên không có host, port, URL kết nối hay SSH tunnel. Vị trí (Location) đặt processing location được gửi kèm mỗi job. Xem thêm về đăng nhập bằng tài khoản cloud.

Query và kiểm soát chi phí

Trước khi chạy một query, hãy chọn Dry Run (Cost) trong menu Giải thích (Explain). Kết quả liệt kê số byte query sẽ xử lý và bị tính phí, cờ cache hit và chi phí ước tính bằng đô la Mỹ, còn bản thân query không được chạy.

Sau khi chạy, thanh trạng thái hiển thị số byte đã xử lý, số byte bị tính phí và chi phí ước tính theo giá on-demand, đồng thời đánh dấu khi trúng cache. Để có mức trần cứng, hãy đặt Số byte tính phí tối đa (Max Bytes Billed) trong tab Nâng cao (Advanced) của connection: BigQuery sẽ từ chối job nào bị tính phí vượt mức thay vì chạy nó.

Autocomplete, cách đặt dấu trích dẫn và định dạng đều theo GoogleSQL, với dấu backtick quanh tên table, còn cột STRUCT và ARRAY hiện dưới dạng JSON. Dataset đóng vai trò cơ sở dữ liệu: chúng được liệt kê trong sidebar, ⌘K chuyển giữa chúng, và mỗi tab giữ dataset mà nó được mở trên đó. Job được theo dõi cho tới khi hết query timeout thì bị hủy; khi timeout đặt là Không giới hạn (No limit), TablePro chờ tới khi job xong.

Sửa ô, thêm và xóa dòng đều làm trong data grid. UPDATE và DELETE so khớp dòng theo khóa chính đã khai báo; với table không có khóa chính, chúng so khớp mọi cột trừ cột ARRAY, JSON và GEOGRAPHY, nên các dòng giống hệt nhau sẽ thay đổi cùng lúc. Hãy khai báo PRIMARY KEY (…) NOT ENFORCED để sửa đúng một dòng. Với table có partition, hãy viết UPDATE và DELETE kèm bộ lọc partition trong editor.

Dataset và DDL

DDL chạy từ editor, như CREATE SCHEMA, ALTER TABLE … ADD COLUMN, DROP COLUMN và CREATE OR REPLACE VIEW. Cơ sở dữ liệu mới… (New Database…) tạo dataset bằng CREATE SCHEMA, và table có thể đổi tên từ sidebar. Tab DDL đọc từng định nghĩa từ INFORMATION_SCHEMA.TABLES, còn clustering và partitioning hiện trong mục Indexes.

Di chuyển dữ liệu

TablePro không có import cho BigQuery. Export table hoặc kết quả query về máy Mac ra CSV, JSON, SQL, XLSX, Markdown, HTML và XML.

Server-Side Export unload một table bằng EXPORT DATA tới một prefix gs:// ở dạng CSV, Parquet hoặc JSON phân tách theo dòng (newline-delimited JSON), chia thành nhiều phần dưới prefix đó. Thao tác chạy trên connection của bạn với quyền của bạn, hộp thoại chờ tới khi unload xong, và không có file nào được ghi về máy Mac.

iPhone và iPad

Ứng dụng cho iPhone và iPad không có driver Google BigQuery. Connection Google BigQuery đồng bộ từ máy Mac vẫn hiện trong danh sách nhưng không mở được.

Giới hạn

  • Tab Structure ở chế độ chỉ đọc. Hãy chạy DDL trong editor.
  • Không hỗ trợ transaction.

Câu hỏi về Google BigQuery

Connection BigQuery cần những IAM role nào?

roles/bigquery.user để chạy query, roles/bigquery.dataViewer để đọc dữ liệu và roles/bigquery.dataEditor để thay đổi dữ liệu.

Vì sao nên lọc thay vì chuyển tới trang rất sâu trong table?

Mỗi trang ở sâu trong table đều quét lại table từ đầu. Hãy thu hẹp số dòng bằng bộ lọc hoặc mệnh đề WHERE thay vì chuyển trang thật sâu.

Tải TablePro

Bạn tải về và dùng ứng dụng cho Mac miễn phí. Gói Starter hoặc Team bổ sung một số tính năng tùy chọn.
Tải về cho Mac

Yêu cầu macOS 13 Ventura trở lên