October 23, 2021

Thực hành cơ bản với Google BigQuery (GBQ)

Theo như google định nghĩa, BigQuery là kho lưu trữ dữ liệu dạng serverless, có khả năng scalable cao và có tích hợp BI Engine, học máy. (BigQuery is a serverless, highly-scalable, and cost-effective cloud data warehouse with an in-memory BI Engine and machine learning built in.). Về lý thuyết thì các bạn cũng có thể tham khảo bài này để hiểu rõ hơn về BigQuery. Trong bài viết này mình chỉ chú trọng vào thực hành để qua đó các bạn hiểu rõ hơn về BigQuery.

Video hướng dẫn thưc hành.

Trong bài thực hành này chúng ta sẽ đưa một database lên BigQuery, thực hiện truy vấn với chúng, tạm tính chi phí khi sử dụng BigQuery, điều này rất quan trọng vì BigQuyery là dịch vụ serverless nên ta chỉ phải trả phí sau khi thực hiện câu truy vấn mà thôi.

Để chuẩn bị dữ liệu để đưa lên GBQ thì chúng ta có thể lấy từ rất nhiều nguồn khác nhau, cơ bản nhất là chúng ta sẽ export từ hệ thống database ra file csv. Trong bài thực hành này chúng sẽ dùng chung một dữ liệu nên hãy truy cập vào link này để tải file csv về (tên file  airports.csv). Tất nhiên khi thực hành GBQ các bạn phải có account GCP rồi, hãy tham khảo link này để tạo account nhé.

1. Tạo dataset

Nào chúng ta hãy mở màn hình console của GCP nhé, tại menu trái trên chọn BigQuery.

Screenshot-2019-07-08-08.50.31-1

Tại màn hình tiếp theo chúng ta sẽ tạo một dataset, (khái niệm dataset trong GBQ giống như database trong MySQL server) bằng cách ấn button CREATE DATASET.

Màn hình tiếp các bạn đánh tên dataset chỗ khung Dataset ID tuỳ theo ý thích của mình, (ví dụ: test123) Data location chọn là default. Rồi ấn button Create dataset ở bên dưới.

Ta đã tạo xong một dataset có tên là test123, tiếp theo ta sẽ tạo các table cho dataset đó là hoàn thiện việc tạo dữ liệu cho dataset. Để làm điều này các bạn click button CREATE TABLE giống như hình dưới.

Mục Create table from: các bạn chọn upload giống hình dưới sau đó chọn browse để upload file airports.csv đã download về máy lên GBQ.

Table name các bạn gõ table1. Ấn button Add field gõ iata Type là STRING. Ấn button Add field gõ airport Type là STRING.v v… Ấn button Add field gõ lat Type là FLOAT. Ấn button Add field gõ long Type là FLOAT. Các bạn coi hình dưới cho dễ hiểu hơn.

Click Advanced options để setting Header rows to skip là 1 (Giống hính dưới)

Sau khi click button Create table ta có được một dataset như hình dưới.

2. Thực hiện truy vấn và tính phí

Câu truy vấn: select airport from test123.table1 where state=”TX” được gõ vô ô query (hình dưới). Sau khi gõ xong câu truy vấn thì hệ thống cũng báo luôn khối lượng xử lý để tính chi phí (trong hình là 8.7 KB). Hàng tháng chúng ta sẽ được dùng miễn phí 1TB, ngoài ra tính theo phí 5USD/1TB.

Click button Run để có được kết quả câu truy vấn.

Màn hình kết quả câu truy vấn.

3. Kết hợp với các sản phẩm khác.

GBQ còn kết hợp với rất nhiều sản phẩm khác của GCP như là : DataStudio, Dataflow, Bigtable,…các bạn tự tìm hiểu thêm nhé.

Khi thực hành có chỗ nào chưa hiểu, cần support, các bạn hãy liên hệ với các chuyên gia – Cloud Ace Việt Nam – , hoặc comment ở form comment bên dưới, để nhận được hỗ trợ tốt hơn.