Ôn thi google cloud architect (phần 3)

 

    Thiết kế và lên kế giải pháp triển khai kiến trúc trên google cloud

    1.3 Thiết kế các vấn đề về network, storage (lưu trữ), and compute resources (tính toán về các tài nguyên). Các vấn đề một người thiết kế cần cân nhắc:

    a. Tích hợp với môi trường on-premises/multi-cloud

    Giải pháp của bạn đưa ra phải giải quyết được các vấn đề tích hợp với các hệ thống đã có từ trước đó, ví dụ: tích hợp lấy dữ liệu từ dưới database lưu trong server nội bộ của công ty khách hàng, lấy dữ liệu thống qua các API từ các ứng dụng. Tích hợp với các nền tảng cloud khác như aws, azue để tạo thành 1 hệ sinh thái.

    Các bạn có thể tham khảo 1 số solution mà google có đưa ra dưới đây để việc hình dung ra kiến trúc 1 cách dễ dàng hơn



    Các solution mẫu google đưa ra để tham khảo: link tham khảo

          b. Các vấn đề về Cloud-native networking (VPC, peering, firewalls, container networking)
           Với VPC Google cloud platform có thể gọi là mạng ảo, bạn có thể kết nối các tài nguyện GCP mình tạo ra với nhau và cách ly hoàn toàn với internet bên ngoài. Bạn có thể xác định chính xác và chi tiết các chính sách mạng (networking policies) trong GCP và giữa GCP với các hệ thống internet bên ngoài.

Bạn có thể tham khảo sơ đồ mạng cơ mạng trên 1 project của google cloud như sau:
Ngoài ra bạn còn sẽ phải quan tâm tới việc setup các firewall, cách thức các liên kết và bảo mật của các container.
 
          c. Lựa chọn công nghệ xử lý dữ liệu
 

Bạn có thể tham khảo hai kiểu xử lý dữ liệu phổ biến nhất hiện nay là Relational data và NoSQL / Nonrelational data

Đối với Relational data thường là các kiểu dữ liệu về Transactions (giao dich), Complex queries (Truy vấn phức tạp), Joins các dữ liệu với nhau. Google cung cấp các giải pháp để xử lý các kiểu dữ liệu như trên:
Chi tiết về 2 service này các bạn tham khảo 2 link mình đã để ở trên nhé.

Đỗi với NoSQL / Nonrelational data thường là các dữ liệu về Streaming data, dữ liệu của các thiết bị IOT trả về, những dữ liệu cần độ trễ thấp (Low latency). Google cloud cung cấp các giải pháp sau để giải quyết các vấn đề nêu trên:




         d. Chọn loại lưu trữ thích hợp (e.g., object, file, RDBMS, NoSQL, NewSQL)
Cái này đòi hỏi bạn phải hiểu cấu trúc dữ liệu và mục đích sử dụng của dữ liệu để lựa chọn loại lưu trữ thích hợp nhé      
Bạn nên tham khảo các định nghĩa RDBMS, object,...
         e. Chọn compute resources phù hợp (e.g., preemptible, custom machine type, specialized workload)
Việc lựa chọn kiểu compute resources phù hợp với mục tiêu sử dụng sẽ ảnh hưởng tới giá thành bạn bỏ ra. Về vấn đề này mình sẽ đưa ra một số loại đặc biệt để các bạn tham khảo thêm (loại compute ram cpu được đưa ra sẵn thì các bạn đã khá quen thuộc rồi.)

Preemptible VM sẽ tự động tắt trong vòng 24h nên vì đó giá của nó sẽ rẻ hơn rất nhiều => phù hợp với việc chạy batch job, làm demo ngắn,...


         f. Mapping compute phù hợp với platform của sản phẩm

Về vấn đề này thì mình sẽ lấy 1 số ví dụ để các bạn dễ hình dung:

Ví dụ hệ thống hiện tại đang sử dụng kafka để sự dụng stream thì trên google cloud nên sử dụng pub/sub để tiếp nhận thống tin 

Chi tiết xem tài liệu tham khảo vì cái này giải thích ra dài quá: Tài liệu tham khảo

Ví dụ thứ 2: các job xử lý dưới hệ thống đang sử dụng hadoop vậy nếu dịch chuyển lên trên google cloud thì làm sao để nhanh và hiệu quả nhất, câu trả lời là bạn có thể đọc và sử dụng dataproc để giải quyết vấn đề này
Chi tiết tham khảo tài liệu này nhé: Tài liệu tham khảo




Các nguồn tham khảo khác để mọi người học tập: 

Bài viết được xây dựng trên exam guide của google về việc ôn thi chứng chỉ:

Đăng nhận xét

0 Nhận xét