Vài năm trở lại đây, sự phát triển của công nghệ điện toán đám mây đã đem lại rất nhiều lợi ích đối với doanh nghiệp. Trong đó, các vấn đề về lưu trữ dữ liệu lớn và khai thác thông tin từ nguồn dữ liệu này luôn được sự quan tâm rất lớn từ phía các doanh nghiệp cũng như từ phía các nhà phát triển công nghệ Cloud như Google Cloud Platform (GCP), AWS, Azure …Trong đó BigQuery của GCP xuất hiện như một đối thủ nặng kí trong việc lựa chọn nền tảng tối ưu trong việc phân tích và lưu trữ dữ liệu lớn.
Trong phần 1 của bài viết này, chúng ta sẽ bắt đầu với những khái niệm cơ bản về BigQuery và những giải pháp để migrate dữ liệu từ hệ thống tại chỗ (SQL server, Oracle, MySql …) lên BigQuery.
1. Tổng quan về BigQuery
BigQuery được biết đến như là một công cụ mạnh mẽ trong việc lưu trữ dữ liệu lớn cũng như tích hợp hệ thống phân tích dữ liệu:
- Fully Managed, Zero-Ops Data Warehouse
- Tích hợp phân tích dữ liệu trên quy mô petabyte
- Sử dụng ngôn ngữ SQL tưng tự các cơ sở dữ liệu đã phổ biến
- Tự động trong việc bảo mật và mã hóa dữ liệu, ngoài ra GCP sẽ đảm bảo dữ liệu trên BigQuery với high available
- Ngồn tài nguyên tính toán và lưu trữ không giới hạn
2. Migrate dữ liệu tại chỗ lên BigQuery
Những thành phần cơ bản trong một data pine line
Upstream: Những hệ thống cung cấp dữ liệu cho data warehouse
Downstream: Hệ thống sữ dụng data trong việc tạo reports, dashboards, hoặc cung cấp dữ liệu cho những tiến trình khác
Các bước cần chuẩn bị cho việc migrate dữ liệu
Trước khi thực hiện việc di chuyển dữ liệu, chúng ta cần lên kế hoạch cho từng bước cụ thể, như những thành phần ứng dụng hay dữ liệu nào sẽ được di chuyển lên đầu tiên.
Các giải pháp dành cho việc migrate dữ liệu
- Legacy. Pine line của các hệ thống data warehouse phổ biến, trong đó dữ liệu được lưu trữ tại chỗ
- Offloaded. Upstream processes vẫn cung cấp dữ liệu cho hệ thống data warehouse tại chỗ, sau đó dữ liệu được trích xuất và load lên BigQuery, các hệ thống downstream sử dụng dữ liệu trên BigQuery.
- Fully migrated. Cả hai hệ thống upstream và downstream không còn đọc hoặc ghi dữ liệu từ data base tại chỗ, mà được di chuyển hoàn toàn lên trên BigQuery
Off load architecture
- Data được đồng bộ từ data warehouse tại chỗ lên BigQuery
Full Loaded Architecture
Dữ liệu được di chuyển hoàn toàn lên trên BigQuery
3. Các cách di chuyển dữ liệu:
Sử dụng migration agent:
Các dịch vụ hỗ trợ việc migrate dữ liệu thông qua BigQuery Data Transfer Service
Google Software as a Service (SaaS) apps
- Campaign Manager
- Cloud Storage
- Google Ad Manager
- Google Ads
- Google Merchant Center (beta)
- Google Play
- Search Ads 360 (beta)
- YouTube Channel reports
- YouTube Content Owner reports
External cloud storage providers
Data warehouses
Sử dụng transfer tool
Google BigQuery cung cấp cho người dùng các api cho phép chúng ta tự xây dựng những ứng dụng thực hiện migrate dữ liệu lên trên BigQuery. Việc xây dụng ứng dụng đòi hỏi cần có nhân lực hiểu biến về lập trình cũng như kiến thức về sử dụng api. Việc tự xây dựng transfer tool giúp chúng ta chủ động hơn trong việc tối ưu chi phí cũng như linh hoạt trong việc xây dựng các tính năng cho ứng dụng
Trong phần tiếp theo của chủ đề này, chúng ta sẽ đi vào cụ thể trong việc tự xây dựng một ứng dụng có thể migrate dữ liệu từ Oracle lên BigQuery sữ dụng các công nghệ phổ biến của ngôn ngữ Java như Spring boot, Spring Batch …