Bài Tập Nguyên Lý Hệ Điều Hành Tìm Hiểu Về Google Cloudv Google Cloud Platform.pdf

52 0 0
Tài liệu đã được kiểm tra trùng lặp
Bài Tập Nguyên Lý Hệ Điều Hành Tìm Hiểu Về Google Cloudv Google Cloud Platform.pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ saasdassadsads,,o0o

BÀI TẬP NGUYÊN LÝ HỆ ĐIỀU HÀNH

TÌM HIỂU VỀ GOOGLE CLOUD

Google cloud platform

Sinh viên: Nguyễn Trung Hiếu 21020627 Nguyễn Việt Hùng 210201505 Lớp: Nguyên lý hệ điều hành - INT2214_20

Trang 2

MỤC LỤC

I.TỔNG QUAN VỀ GOOGLE CLOUD PLATFORM 1

1.1.Khái niệm “Đám mây” 1

1.2.Google Cloud Platform 1

II.CÔNG NGHỆ SỬ DỤNG 2

2.1.Điện toán phân tán (Distributed compute) 2

2.1.1 Khái niệm về điện toán phân tán 2

2.1.2 Một số đặc điểm của điện toán phân tán 3

2.2.Điện toán đám mây (Cloud compute) 3

2.2.1 Khái niệm 4

2.2.2 Lợi ích của điện toán đám mây 4

2.2.3 Phân loại điện toán đám mây 5

III.Kiến trúc của Google Cloud Platform 6

3.1.Dịch vụ lưu trữ: 6

3.1.1 Cloud SQL: Quản lí quan hệ lưu trữ dữ liệu 6

3.1.2 Cloud Datastore: Kho lưu trữ tài liệu 7

3.1.3 Cloud Spanner: SQL quy mô lớn 7

3.1.4 Cloud Bigtable: dữ liệu có cấu trúc quy mô lớn 8

3.1.5 Cloud Storage: object storage 9

3.2.Dịch vụ điện toán: 9

3.2.1 Compute Engine: máy ảo 9

3.2.2 Kubernetes Engine: quản lí Kubernetes clusters 10

3.2.3 App Engine: fully managed applications 11

3.2.4 Cloud Functions: serverless applications 12

3.2.5 Cloud DNS: Managed DNS hosting 13

3.3.Học máy (Machine learning) 15

3.3.1 Cloud Vision: image recognition 15

Trang 3

3.3.2 Cloud Natural Language: text analysis 17

3.3.3 Cloud Speech: audio-to-text-conversion 21

3.4.Cloud Translation: multilanguage machine translation 23

3.4.1 BigQuery 23

3.4.2 Cloud Dataflow 25

3.4.3 Cloud Pub/Sub 27

3.5.Cloud Machine Learning Engine: managed machine learning 28

IV.DEMO - DEPLOY WORDPRESS WITH SQL ON GCP 29

4.3.Demo - Deploy Wordpress với SQL trên GCP 30

V.SO SÁNH VỚI CÁC DỊCH VỤ ĐÁM MÂY KHÁC 38

Trang 5

I.TỔNG QUAN VỀ GOOGLE CLOUD PLATFORM

Đám mây là một bộ sưu tập các dịch vụ giúp các nhà phát triển tập trung vào dự án của họ thay vì trên cơ sở hạ tầng điều khiển nó Cụ thể hơn, các dịch vụ đám mây là như Amazon Elastic Compute Cloud (EC2) hoặc Google Compute Engine (GCE), cung cấp các API để triển khai máy chủ ảo, nơi khách hàng trả tiền theo giờ sử dụng các máy chủ này Ở nhiều khía cạnh, đám mây là tầng trừu tượng tiếp theo trong hạ tầng máy tính, nơi tính toán, lưu trữ, phân tích, mạng và nhiều thứ khác được đẩy lên tầng cao hơn trong ngăn xếp máy tính Cấu trúc này đưa tập trung của nhà phát triển ra khỏi CPU và RAM và hướng về các API cho các hoạt động cấp cao hơn như lưu trữ hoặc truy vấn dữ liệu Các dịch vụ đám mây nhắm vào việc giải quyết vấn đề của bạn, chứ không phải cung cấp cho bạn các công cụ cấp thấp để bạn tự thực hiện Hơn nữa, các dịch vụ đám mây rất linh hoạt, với hầu hết không đòi hỏi triển khai hoặc hợp đồng dài hạn Do đó, dựa vào các dịch vụ này cho phép bạn mở rộng lên và thu nhỏ mà không cần thông báo trước hoặc triển khai, trong khi chỉ trả tiền cho tài nguyên bạn sử dụng trong một tháng cụ thể.

Có nhiều nhà cung cấp đám mây trên thị trường, bao gồm Google, Amazon, Microsoft, Rackspace, DigitalOcean và nhiều hơn nữa Với nhiều đối thủ trong lĩnh vực này, mỗi công ty phải có quan điểm riêng về cách phục vụ khách hàng tốt nhất Kết quả là mặc dù mỗi công ty cung cấp nhiều sản phẩm tương tự, cách triển khai và chi tiết về cách những sản phẩm này hoạt động thường thay đổi khá nhiều Nền tảng Đám mây Google (thường viết tắt là GCP) là một bộ sưu tập các sản phẩm cho phép thế giới sử dụng một phần hạ tầng nội bộ của Google Bộ sưu tập này bao gồm nhiều thứ phổ biến trên tất cả các nhà cung cấp đám mây, như máy ảo theo yêu cầu thông qua Google Compute Engine

Trang 6

hoặc lưu trữ đối tượng để lưu trữ tệp tin thông qua Google Cloud Storage Nó cũng bao gồm các API cho một số công nghệ tiên tiến của Google, như Bigtable, Cloud Datastore hoặc Kubernetes Mặc dù Nền tảng Đám mây Google tương tự như các nhà cung cấp đám mây khác, nhưng có một số khác biệt đáng kể Trước hết, Google có "nhà" của một số người xuất sắc, đã tạo ra một số công nghệ mới tuyệt vời tại đây và sau đó chia sẻ chúng với thế giới thông qua các bài báo nghiên cứu Điều này bao gồm MapReduce (bài báo nghiên cứu là nguồn gốc của Hadoop và đã thay đổi cách chúng ta xử lý "Dữ liệu lớn"), Bigtable (bài báo là nguồn gốc của Apache HBase) và Spanner Với Nền tảng Đám mây Google, nhiều công nghệ này không còn "dành riêng cho người làm việc tại Google." Thứ hai, Google hoạt động trên một quy mô lớn đến mức có nhiều lợi thế về kinh tế, được chuyển tiếp dưới dạng giá thấp hơn Google sở hữu hạ tầng vật lý lớn đồng nghĩa với việc mua và xây dựng phần cứng tùy chỉnh để hỗ trợ nó, điều này đồng nghĩa với giá cả tổng cộng rẻ hơn, thường kết hợp với hiệu suất tốt hơn.

II.CÔNG NGHỆ SỬ DỤNG

II.1 Điện toán phân tán (Distributed compute)

Điện toán phân tán được xem là thế hệ tiền nhiệm của điện toán đám mây – một trong những công nghệ hàng đầu giúp lưu trữ, chia sẻ dữ liệu

II.1.1 Khái niệm về điện toán phân tán

Điện toán phân tán (Distributed Computing) là một thuật ngữ thuộc lĩnh vực khoa học máy tính nhằm nghiên cứu các hệ thống phân tán Hiểu đơn giản, điện toán phân tán là một phương pháp xử lý dữ liệu trong đó công việc được

2

Trang 7

chia thành nhiều phần và được xử lý bởi nhiều máy tính khác nhau trong một mạng lưới Điều này giúp tăng tốc độ xử lý và giảm thời gian hoàn thành công việc so với việc sử dụng một máy tính duy nhất Điện toán phân tán được sử dụng trong nhiều ứng dụng, từ các hệ thống lưu trữ đến xử lý video và tính toán khoa học

II.1.2 Một số đặc điểm của điện toán phân tán

Trong điện toán phân tán, các máy tính được đặt gần nhau và kết nối thông quan mạng cục bộ Tuy nhiên, chúng cũng có thể cách xa nhau về mặt địa lý và kết nối bằng mạng diện rộng

Bên cạnh đó, thành phần của điện toán phân tán bao gồm: máy tính cá nhân, máy trạm, máy tính lớn hoặc máy mini So với hệ thống tập trung, điện toán phân tán mang lại nhiều giá trị thiết thực như:

Hệ thống có khả năng mở rộng dễ dàng bằng cách bổ sung thêm các máy khi cần thiết

Một dịch vụ có thể được cung cấp bởi nhiều máy tính khác nhau Vì vậy, nếu một máy ngưng hoạt động, công việc vẫn sẽ tiếp diễn và hoàn tất Bên cạnh đó, những máy nhỏ hơn có thể được dùng 4 để thay thế, nên người dùng không cần tốn kém cho chi phí dự phòng

Điện toán phân tán có thể hoạt động trên phần cứng của nhiều nhà cung cấp Đồng thời, chúng được phép sử dụng nhiều thành phần phần mềm dựa trên các tiêu chuẩn nhất định Ngoài ra, điện toán phân tán có khả năng chạy trên nhiều hệ điều hành khác nhau, sử dụng các giao thức truyền thông khác nhau

Hệ điều hành của điện toán phân tán rất đa dạng, có thể là: UNIX, LINUX hoặc Windows Ngoài ra, với những trường hợp giao tiếp liên máy, hệ điều hành

Trang 8

có thể là SNA hoặc TCP / IP trên Ethernet hoặc Token Ring Để hoạt động trên điện toán phân tán, bạn có thể tổ chức phần mềm thông qua việc phân tách chức năng thành hai phần: máy chủ và máy khách

II.2 Điện toán đám mây (Cloud compute) II.2.1 Khái niệm

Cloud computing là một hình thức cung cấp dịch vụ tính toán, lưu trữ, mạng và các tài nguyên khác thông qua internet Điện toán đám mây hoạt động dựa trên việc sử dụng mạng lưới máy chủ từ xa thông qua Internet Nhờ đó, mọi dữ liệu sẽ được quản lý, lưu trữ hoặc xử lý nhanh chóng Việc triển khai mô hình này, giúp người dùng sở hữu một không gian lưu trữ gần như vô tận Đồng thời khả năng xử lý từ xa cũng được cải thiện mạnh mẽ

II.2.2 Lợi ích của điện toán đám mây

Tốc độ cực nhanh:

Các dịch vụ điện toán đám mây phần lớn đều có khả năng tự phục vụ theo yêu cầu Vì vậy, khi cung cấp tài nguyên cho người dùng chỉ tốn vài phút, thậm chí chỉ thông qua một cú click chuột Điều này giúp doanh nghiệp linh hoạt hơn trong quá trình sử dụng Đồng thời, những áp lực về việc lập kế hoạch công suất cũng được giảm bớt

Tiết kiệm chi phí

Điện toán đám mây mang lại nhiều tiện ích thiết thực cho người dùng với mức chi phí thấp Những khoản phí đầu tư cho phần cứng, phần mềm, thiết lập, lưu trữ, …, đều được loại bỏ Bên cạnh đó, cơ sở hạ tầng khi sử dụng điện toán đám mây cũng được nâng cấp tối ưu

4

Trang 9

Năng suất hiệu quả

Điện toán đám mây giúp doanh nghiệp thay thế các tác vụ của phần cứng, phần mềm và việc quản lý Công nghệ Thông tin (CNTT) tốn thời gian Thế nên, năng suất làm việc của các nhóm CNTT được thúc đẩy Nhờ đó, doanh nghiệp rút ngắn được thời gian để hoàn thành các mục tiêu kinh doanh quan trọng

Hiệu suất tối ưu

Các mô hình điện toán đám mây uy tín đều hoạt động trên mạng lưới trung tâm dữ liệu an toàn trên thế giới Đồng thời, chúng thường xuyên cập nhật lên phiên bản phần cứng điện toán nhanh Nhờ đó, trung tâm dữ liệu công ty có hiệu suất hoạt động mạnh mẽ hơn

Tính bảo mật cao

Các tính năng của điện toán đám mây như: sao lưu, khôi phục dữ liệu đều được sao chép trên nhiều trang web dự phòng của các nhà cung cấp dịch vụ

Vì vậy, người dùng hoàn toàn yên tâm về các vấn đề bảo mật dữ liệu, thông tin quan trọng Bên cạnh đó, các nhà cung cấp dịch vụ điện toán đám mây luôn đề xuất các chính nhằm kiểm soát và bảo mật thông tin người dùng Thế nên, những ứng dụng, cơ sở hạ tầng hay dữ liệu của bạn sẽ tránh khỏi nhiều rủi ro không đáng có.

II.2.3 Phân loại điện toán đám mây

Có bao nhiêu mô hình cung cấp điện toán đám mây? Hiện tại, có 3 mô hình cung cấp điện toán đám mây phổ biến nhất là: IaaS (dịch vụ cơ sở hạ tầng), PaaS (Dịch vụ nền tảng) và SaaS (dịch vụ phần mềm):

IaaS (Infrastructure as a Service)

Trang 10

là mô hình cung cấp hạ tầng điện toán đám mây Khách hàng sử dụng IaaS để thuê các tài nguyên hạ tầng như máy chủ, mạng, lưu trữ để triển khai ứng dụng của mình

PaaS (Platform as a Service)

là mô hình cung cấp nền tảng phát triển ứng dụng trên đám mây Khách hàng sử dụng PaaS để tạo và triển khai ứng dụng của mình mà không cần phải lo lắng về cơ sở hạ tầng phía sau

SaaS (Software as a Service)

là mô hình cung cấp phần mềm trên đám mây Khách hàng sử dụng SaaS để sử dụng các ứng dụng trực tuyến có sẵn trên đám mây, chẳng hạn như ứng dụng email, quản lý khách hàng, kế toán, nhân sự, v.v.

III.Kiến trúc của Google Cloud Platform III.1.Dịch vụ lưu trữ:

Để bắt đầu, chúng ta sẽ khám phá thế giới đa dạng của lưu trữ dữ liệu Chúng ta sẽ tìm hiểu về nhiều hệ thống lưu trữ và cách chúng hoạt động trên Nền tảng Đám mây Google:

III.1.1 Cloud SQL: Quản lí quan hệ lưu trữ dữ liệu

Cloud SQL là một máy ảo (VM) được lưu trữ trên Google Compute Engine, được quản lý bởi Google và chạy một phiên bản của ứng dụng MySQL Điều này có nghĩa rằng bạn sẽ có một máy chủ MySQL hoàn toàn tương thích mà bạn không cần SSH vào để điều chỉnh các cài đặt Thay vào đó, bạn có thể thay đổi tất cả các cài đặt đó trong Cloud Console, công cụ dòng lệnh Cloud

6

Trang 11

SDK hoặc REST API Nếu bạn quen thuộc với Dịch vụ Cơ sở dữ liệu Liên quan của Amazon (RDS), bạn có thể xem Cloud SQL như một thứ tương tự (Hiện tại, Cloud SQL đang hỗ trợ cả MySQL, PostgreSQL và SQL Server)

Cloud SQL hoàn toàn tương thích với MySQL, vì vậy nếu bạn đang sử dụng MySQL bất kỳ nơi nào trong hệ thống của bạn, Cloud SQL là một lựa chọn khả thi cho bạn vì vậy bạn có thể sử dụng nó để lưu trữ dữ liệu cho các ứng dụng web, ứng dụng di động, và nhiều loại ứng dụng khác Ngoài ra, tích hợp với Cloud SQL không đòi hỏi gì ngoài việc thay đổi tên máy chủ trong cấu hình của bạn để trỏ đến một phiên bản Cloud SQL Ngoài ra, Cloud SQL cũng cung cấp nhiều tùy chọn bảo mật để bảo vệ dữ liệu của bạn, bao gồm kết nối an toàn, quyền truy cập và mã hóa dữ liệu.

III.1.2 Cloud Datastore: Kho lưu trữ tài liệu.

Kho dữ liệu đám mây, trước đây gọi là Kho dữ liệu App Engine, ban đầu đến từ hệ thống lưu trữ do Google xây dựng có tên Megastore Nó lần đầu tiên được ra mắt như một cách mặc định để lưu trữ dữ liệu trong Google App Engine và từ đó đã phát triển thành một hệ thống lưu trữ độc lập Cloud Datastore là một dịch vụ cơ sở dữ liệu không SQL được cung cấp bởi Google Cloud Platform (GCP) Nó cung cấp khả năng lưu trữ dữ liệu có cấu trúc và không có cấu trúc, được phân phối và mở rộng tự động trên hệ thống đám mây của Google Dịch vụ này được sử dụng rộng rãi cho việc lưu trữ dữ liệu ứng dụng web và di động, cũng như cho phát triển các ứng dụng quy mô lớn với nhu cầu lưu trữ lớn.

Trang 12

III.1.3 Cloud Spanner: SQL quy mô lớn

Trong một thời gian dài, nhu cầu của Google không khác gì so với bất kỳ doanh nghiệp nào khác, nơi dữ liệu được cấu trúc và có quan hệ, và phù hợp với MySQL Khi kích thước dữ liệu lưu trữ tăng lên ngoài tầm kiểm soát, điều này trở thành một vấn đề Bước đầu tiên để khắc phục vấn đề này là đẩy sự sử dụng của các cơ sở dữ liệu sẵn có đến nơi mà chúng không được thiết kế để hoạt động, chia nhỏ dữ liệu và thuê nhiều quản trị cơ sở dữ liệu để điều chỉnh hệ thống Điều này giúp ích nhưng không giải quyết triệt hạ vấn đề, và dữ liệu tiếp tục tăng Việc sử dụng một trong các hệ thống lưu trữ nội bộ (như Megastore) không phải là giải pháp vì các tính năng cần thiết là các khía cạnh như tính giao dịch hoặc quan hệ cũng như tính nhất quán mạnh mẽ, và những tính năng đó đã được đánh đổi đầu tiên khi thiết kế các hệ thống như Megastore Điều cần thiết là một hệ thống kết hợp tính mở rộng của lưu trữ không quan hệ với các tính năng của cơ sở dữ liệu MySQL truyền thống, dẫn đến sự ra đời của Spanner.

Spanner là một cơ sở dữ liệu NewSQL cung cấp nhiều tính năng của cơ sở dữ liệu có quan hệ (như mô hình dữ liệu và truy vấn JOIN) với nhiều tính chất về mở rộng của cơ sở dữ liệu không quan hệ (như khả năng thêm máy chủ) Trong trường hợp sự cố (hoặc tải lượng cực lớn), Spanner có thể chia và phân phối lại dữ liệu trên nhiều máy chủ, ngay cả khi chúng ở trong các trung tâm dữ liệu hoàn toàn khác nhau Thông qua việc thay đổi kích thước động và chuyển đổi các phần dữ liệu, hệ thống được chuẩn bị cho mọi loại thảm họa Spanner cũng cung cấp truy vấn với tính nhất quán mạnh mẽ, vì vậy bạn sẽ không bao giờ gặp phiên bản dữ liệu lỗi thời Theo mô hình của Nền tảng Đám mây Google, Google đã lấy cơ sở dữ liệu Spanner, ban đầu chỉ dành cho các kỹ sư Google, và đã làm cho nó có sẵn cho bất kỳ ai sử dụng Nền tảng Đám mây

8

Trang 13

Google như một hệ thống lưu trữ được host, giống như Cloud Datastore hoặc Cloud Bigtable.

III.1.4 Cloud Bigtable: dữ liệu có cấu trúc quy mô lớn.

Bigtable bắt đầu như một hệ thống lưu trữ cho chỉ mục tìm kiếm web tại Google và đã trở thành một trong những công nghệ chính hỗ trợ nhiều hệ thống lưu trữ khác tại Google, như Megastore và Cloud Datastore Nó được xây dựng để giải quyết một vấn đề cụ thể nhưng phức tạp: “Làm thế nào để lưu trữ và liên tục cập nhật petabyte dữ liệu, với khả năng xử lý cực cao, độ trễ thấp và tính sẵn sàng cao?” Câu hỏi dễ thấy là tại sao bạn không thể đặt tất cả điều này vào MySQL MySQL nhanh chóng gặp vấn đề khi đối mặt với vấn đề này, vì vậy Google đã nảy ra cách thú vị để sử dụng một bản đồ key-value được sắp xếp toàn cầu, tự động cân bằng lại dữ liệu dựa trên việc sử dụng dịch vụ để đạt được hiệu suất và khả năng mở rộng cần thiết.

Cloud Bigtable được thiết kế để xử lý lượng lớn dữ liệu, đặc biệt là cho các tải trọng đọc và ghi cao, làm cho nó là lựa chọn thích hợp cho các ứng dụng đòi hỏi truy cập dữ liệu với độ trễ thấp và khả năng xử lý lớn, như phân tích thời gian thực, lưu trữ dữ liệu IoT và phân tích dữ liệu chuỗi thời gian Mặc dù Cloud Bigtable cung cấp hiệu suất và khả năng mở rộng ấn tượng, cần lưu ý rằng nó có thể không phải là lựa chọn tốt nhất cho mọi ứng dụng Nó đặc biệt thích hợp cho các tình huống đòi hỏi tải trọng đọc và ghi với khả năng xử lý lớn và độ trễ thấp đối với tập dữ liệu lớn, nhưng có thể đòi hỏi kế hoạch và tối ưu hóa cẩn thận để sử dụng một cách hiệu quả về chi phí.

Trang 14

III.1.5 Cloud Storage: object storage

Object storage là một loại kiến trúc lưu trữ dữ liệu phổ biến trong các dịch vụ Cloud Storage, và nó hoạt động theo cách khác với hệ thống lưu trữ truyền thống như file storage hoặc block storage Các ví dụ về dịch vụ object storage trong các nền tảng đám mây bao gồm Amazon S3 (Simple Storage Service), Google Cloud Storage, và Azure Blob Storage Object storage được sử dụng rộng rãi trong các ứng dụng web, lưu trữ dữ liệu lớn, sao lưu dự phòng, lưu trữ đa phương tiện, và nhiều trường hợp sử dụng khác trong lĩnh vực công nghệ thông tin và công nghiệp.

III.2.Dịch vụ điện toán:

Tương tự như các hệ thống lưu trữ, có khá nhiều tùy chọn điện toán, mỗi tùy chọn đều có những lợi ích và hạn chế riêng Mỗi tùy chọn này cho phép bạn thể hiện công việc tính toán cần thực hiện bằng cách sử dụng các lớp trừu tượng khác nhau, từ cấp thấp nhất (làm việc với máy ảo) cho đến một hàm JavaScript duy nhất chạy trên đám mây Google.

III.2.1 Compute Engine: máy ảo.

Google Computer Engine (GCE) là thành phần Cơ sở hạ tầng dưới dạng dịch vụ (IaaS) của Google Cloud Platform, được xây dựng trên cơ sở hạ tầng toàn cầu chạy công cụ tìm kiếm của Google, Gmail, YouTube và các dịch vụ khác Google Computer Engine cho phép người dùng khởi chạy máy ảo (VM) theo yêu cầu Máy ảo có thể được khởi chạy từ hình ảnh tiêu chuẩn hoặc hình ảnh tùy chỉnh do người dùng tạo Người dùng GCE phải xác thực dựa trên OAuth 2.0 trước khi khởi chạy VM Bạn có thể truy cập Google Computer Engine thông qua Bảng điều khiển dành cho nhà phát triển, API RESTful hoặc giao diện dòng lệnh (CLI).

10

Trang 15

Google Computer Engine sử dụng KVM làm trình ảo hóa và hỗ trợ các hình ảnh khách chạy Linux và Microsoft Windows được sử dụng để khởi chạy các máy ảo dựa trên kiến trúc 64bit x86 Máy ảo khởi động từ một đĩa liên tục có hệ thống tập tin gốc Số lượng CPU ảo, dung lượng bộ nhớ được VM hỗ trợ tùy thuộc vào loại máy được chọn

Một số loại máy ảo và giá thành mà bạn có thể chọn để phù hợp với nhu cầu của mình:

<Google compute engine – Wikipedia>

III.2.2 Kubernetes Engine: quản lí Kubernetes clusters

Google Kubernetes Engine (GKE), một dịch vụ Kubernetes được quản lý mà bạn có thể sử dụng để triển khai và vận hành các ứng dụng trong vùng chứa trên quy mô lớn bằng cơ sở hạ tầng của Google Trang này dành cho các quản trị

Trang 16

viên nền tảng đang tìm kiếm giải pháp Kubernetes được quản lý, tự động hóa và có thể mở rộng.

GKE và Kubernetes được sử dụng trong nhiều ngành công nghiệp, bao gồm robot, chăm sóc sức khỏe, bán lẻ, giáo dục, trò chơi và dịch vụ tài chính Ví dụ về khối lượng công việc bạn có thể chạy bao gồm:

Hoạt động AI và ML Xử lý dữ liệu ở quy mô

Nền tảng trò chơi trực tuyến có thể mở rộng Các ứng dụng đáng tin cậy dưới tải nặng

Môi trường GKE bao gồm các node, là các máy ảo (VM) của Computing Engine, được nhóm lại với nhau để tạo thành một cụm Bạn đóng gói các ứng dụng của mình (còn gọi là khối lượng công việc) vào các vùng chứa Bạn triển khai các bộ vùng chứa dưới dạng Pod cho các nút của mình Bạn sử dụng API Kubernetes để tương tác với khối lượng công việc của mình, bao gồm quản trị, mở rộng quy mô và giám sát.

III.2.3 App Engine: fully managed applications

Google App Engine (thường được gọi bằng từ viết tắt GAE hoặc đơn giản là App Engine) là một nền tảng điện toán đám mây đóng vai trò là dịch vụ phát triển và lưu trữ các ứng dụng web trong các trung tâm dữ liệu do Google quản lý Các ứng dụng được đóng hộp cát và chạy trên nhiều máy chủ App Engine cung cấp tính năng tự động mở rộng quy mô cho các ứng dụng web, khi số lượng yêu cầu đối với một ứng dụng tăng lên, App Engine sẽ tự động phân bổ nhiều tài nguyên hơn cho ứng dụng web để xử lý nhu cầu bổ sung

12

Trang 17

Google App Engine chủ yếu hỗ trợ các ứng dụng Go, PHP, Java, Python, Node.js, NET và Ruby, mặc dù nó cũng có thể hỗ trợ các ngôn ngữ khác thông qua "thời gian chạy tùy chỉnh" Dịch vụ này được cung cấp miễn phí ở một mức tài nguyên tiêu thụ nhất định và chỉ trong môi trường tiêu chuẩn; nó không có sẵn trong môi trường linh hoạt.

III.2.4 Cloud Functions: serverless applications.

Google Cloud Functions là môi trường thực thi không có máy chủ để xây dựng và kết nối các dịch vụ đám mây Với Chức năng đám mây, bạn viết các hàm đơn giản, có mục đích duy nhất được gắn vào các sự kiện phát ra từ cơ sở hạ tầng và dịch vụ đám mây của bạn Chức năng của bạn được kích hoạt khi một sự kiện đang được theo dõi được kích hoạt Mã của bạn thực thi trong môi trường được quản lý hoàn toàn Không cần phải cung cấp bất kỳ cơ sở hạ tầng nào hoặc lo lắng về việc quản lý bất kỳ máy chủ nào.

Bạn có thể viết Hàm đám mây bằng một số ngôn ngữ lập trình được hỗ trợ Bạn có thể lấy hàm của mình và chạy nó trong bất kỳ môi trường thời gian chạy tiêu chuẩn nào cho một trong các ngôn ngữ được hỗ trợ, điều này giúp cho

Lắng nghe và phản hồi các sự kiện trên Cloud Storage, chẳng hạn như khi tệp được tạo, thay đổi hoặc xóa Xử lý hình ảnh, thực hiện chuyển mã video, xác thực và chuyển đổi dữ liệu cũng như gọi bất kỳ dịch vụ nào trên internet từ Chức

Trang 18

năng đám mây của bạn.

Webhook

Thông qua trình kích hoạt HTTP đơn giản, hãy phản hồi các sự kiện bắt nguồn từ hệ thống của bên thứ 3 như GitHub, Slack, Stripe hoặc từ bất kỳ nơi nào có thể gửi yêu cầu HTTP.

API nhẹ

Soạn thảo các ứng dụng từ các phần logic nhẹ, được ghép nối lỏng lẻo, có thể xây dựng nhanh chóng và mở rộng quy mô ngay lập tức Các hàm của bạn có thể được điều khiển theo sự kiện hoặc được gọi trực tiếp qua HTTP/S.

Phụ trợ di động

Sử dụng nền tảng di động của Google dành cho nhà phát triển ứng dụng, Firebase và viết phần phụ trợ di động của bạn trong Cloud Functions Lắng nghe và phản hồi các sự kiện từ Firebase Analytics, Cơ sở dữ liệu thời gian thực, Xác thực và Lưu trữ.

Hãy tưởng tượng hàng chục hoặc hàng trăm nghìn thiết bị truyền dữ liệu vào Pub/Sub, từ đó khởi chạy Chức năng đám mây để xử lý, chuyển đổi và lưu trữ dữ liệu Cloud Functions cho phép bạn thực hiện điều đó theo cách hoàn toàn không có máy chủ.

III.2.5 Cloud DNS: Managed DNS hosting

Google Cloud DNS là một dịch vụ được quản lý, hoạt động như một máy chủ DNS và có thể trả lời các truy vấn DNS giống như các máy chủ khác, chẳng hạn như BIND Một lý do đơn giản để sử dụng dịch vụ này là để quản lý các mục DNS của riêng bạn mà không cần chạy máy chủ BIND của riêng bạn Một

14

Trang 19

lý do thú vị khác là để lộ một API cho phép tự động quản lý các mục DNS Ví dụ: với API để quản lý các mục DNS, bạn có thể định cấu hình máy ảo để tự động đăng ký mục DNS mới khi khởi động, cung cấp cho bạn những cái tên thân thiện như server1.mydomain.com Khả năng này rất quan trọng vì BIND, mặc dù đã được thử nghiệm qua nhiều năm và được chứng minh là khá đáng tin cậy, nhưng lại hơi bất tiện khi chạy và bảo trì cũng như không hỗ trợ API hiện đại để thực hiện các thay đổi đối với bản ghi DNS Thay vào đó, việc cập nhật bản ghi liên quan đến việc sửa đổi các tệp trên máy chạy dịch vụ BIND, sau đó tải lại nội dung vào bộ nhớ của quy trình Cloud DNS hoạt động như thế nào? Để bắt đầu, giống như hệ thống DNS, Google Cloud DNS cung cấp các tài nguyên giống như BIND: vùng (được gọi là “vùng được quản lý”) và bản ghi (được gọi là “bộ bản ghi tài nguyên”) Mỗi bộ bản ghi chứa các mục DNS, tương tự như trong máy chủ DNS thực sự như BIND Mỗi vùng chứa một tập hợp các bộ bản ghi và mỗi bộ bản ghi chứa một tập hợp các bản ghi Những bản ghi này là nơi lưu trữ dữ liệu hữu ích, trong khi các tài nguyên khác tập trung vào việc phân loại dữ liệu này.

Trang 20

Trong trường hợp một vùng được xác định không gì khác ngoài tên (ví dụ: mydomain.com), bộ bản ghi sẽ lưu trữ tên (ví dụ: www.mydomain.com), “type” (chẳng hạn như A hoặc CNAME) và “time to live” (viết tắt là ttl), hướng dẫn khách hàng về thời gian lưu trữ những bản ghi này Chúng có khả năng lưu trữ nhiều bản ghi cho một loại và tên miền phụ nhất định Ví dụ: cấu trúc này cho phép lưu trữ một số địa chỉ IP cho www.mydomain.com bằng cách đặt nhiều bản ghi trong bộ bản ghi loại A.

III.3.Học máy (Machine learning).

Một trong những lĩnh vực nghiên cứu thú vị nhất hiện nay là thế giới máy học và trí tuệ nhân tạo, vì vậy không có gì ngạc nhiên khi Google đã đầu tư khá nhiều để đảm bảo ML hoạt động trên Google Cloud Platform Trong phần này, chúng ta sẽ tìm hiểu các API cấp cao có sẵn để giải quyết một số vấn đề về học máy truyền thống hơn (chẳng hạn như xác định vật thể trong ảnh hoặc dịch văn

16

Trang 21

bản giữa các ngôn ngữ) Chúng ta sẽ kết thúc bằng cách xem xét việc học máy tổng quát bằng cách sử dụng TensorFlow và Cloud Machine Learning Engine để xây dựng các mô hình ML của riêng bạn trên đám mây.

III.3.1 Cloud Vision: image recognition

Hiện nay, hàng tỷ hình ảnh được chia sẻ trực tuyến mỗi ngày, vì vậy công việc phân loại và gắn thẻ cho từng hình ảnh sẽ khó thực hiện thủ công Nghiên cứu về 'thị giác máy tính' và công nghệ nhận dạng hình ảnh đã được tiến hành ngay từ những năm 1960, nhưng những tiến bộ gần đây về trí tuệ nhân tạo và học máy đã mang lại tiến bộ to lớn trong lĩnh vực này, nhất là nhờ vào Google Cloud Vision API.

Google Cloud Vision sẽ không chỉ xác định chủ thể của hình ảnh là đàn ông hay phụ nữ, mèo hay chó, thuyền hay máy bay - nó thậm chí còn có thể xác định xem một người đang vui hay buồn hay liệu một người có đang vui hay không hình ảnh phù hợp với Tìm kiếm An Toàn của Google Google Cloud Vision API là một công cụ rất mạnh có thể mang đến cho cuộc sống các khả năng ứng dụng vô tận khi kết hợp với thư viện Python Vision API là mô hình được đào tạo trước của Google, giúp phát hiện các đối tượng, nhận dạng khuôn mặt, nhận dạng hình ảnh, phân loại, gán nhãn và trích xuất văn bản của văn bản in hoặc hình ảnh chữ viết tay Ngoài các tính năng trên, Vision API còn một tính năng rất thực tế và thú vị đó là cho phép bạn phát hiện nội dung không lành mạnh của hình ảnh Vision API cho phép các nhà phát triển tích hợp các tính năng thú vị vào các ứng dụng dễ dàng.

Trang 22

Các nhà phát triển có thể tận dụng API Google Cloud Vision và dễ dàng tích hợp khả năng nhận dạng hình ảnh với phần mềm của họ, bao gồm:

Phát hiện nhãn và thực thể: giúp xác định đối tượng chiếm ưu thế

trong hình ảnh Điều này có thể được sử dụng để xây dựng siêu dữ liệu trên danh mục hình ảnh của bạn, cho phép tìm kiếm dựa trên hình ảnh.

Nhận dạng ký tự quang học (OCR): để hiểu văn bản trong hình ảnh.

Google Cloud Vision cũng có thể tự động xác định nhiều loại ngôn ngữ khác nhau.

18

Trang 23

Phát hiện Tìm kiếm an toàn: để phát hiện nội dung không phù hợp

trong hình ảnh Điều này đặc biệt hữu ích cho nội dung có nguồn gốc từ cộng đồng.

Tính năng phát hiện khuôn mặt: giúp chọn ra các khuôn mặt trong

ảnh, bao gồm các đặc điểm trên khuôn mặt như vị trí mũi, mắt và miệng Điều này cũng cho phép nó xác định cảm xúc.

Phát hiện mốc: cùng với việc xác định vĩ độ và kinh độ liên quan.Phát hiện logo: để có thể nhận biết logo sản phẩm và thương hiệu

trong một hình ảnh.

Phát hiện web: Web Detection phát hiện các tham chiếu Web đến một

hình ảnh Tìm kiếm trên web cho nhãn gợi ý là tốt nhất.

III.3.2 Cloud Natural Language: text analysis

API ngôn ngữ tự nhiên của Google Cloud là một dịch vụ dựa trên đám mây do Google Cloud Platform cung cấp, cho phép các nhà phát triển tích hợp

Trang 24

khả năng xử lý ngôn ngữ tự nhiên (NLP) vào ứng dụng của họ API cung cấp các mô hình máy học được đào tạo trước để có thể phân tích và trích xuất thông tin chi tiết từ dữ liệu văn bản, bao gồm phân tích cảm tính, nhận dạng thực thể, phân tích cú pháp, v.v Nó được thiết kế để giúp các nhà phát triển dễ dàng kết hợp các chức năng NLP hơn mà không cần phải xây dựng và đào tạo các mô hình từ đầu.

Các trường hợp sử dụng hàng đầu của API ngôn ngữ tự nhiên trong GCP:

Phân tích tình cảm: API có thể xác định tình cảm hoặc giọng điệu

cảm xúc của văn bản, giúp doanh nghiệp đánh giá dư luận, phản hồi của khách hàng và tình cảm trên mạng xã hội.

20

Trang 25

Nhận dạng thực thể: API có thể xác định và phân loại các thực thể

được đặt tên như tên người, tổ chức, địa điểm, v.v trong tài liệu văn bản.

Phân tích cú pháp: Nó có thể phân tích cấu trúc ngữ pháp của câu,

bao gồm gắn thẻ thành phần lời nói, phân tích cú pháp và phân tích phụ thuộc, cung cấp thông tin chuyên sâu về thành phần câu.

Phân loại văn bản: API hỗ trợ các tác vụ phân loại văn bản trong đó

tài liệu văn bản được gán cho các danh mục được xác định trước, giúp ích cho việc phân loại chủ đề và lọc nội dung.

Phân tích tình cảm thực thể: Tính năng này kết hợp nhận dạng thực

thể và phân tích tình cảm để xác định tình cảm liên quan đến các thực thể cụ thể được đề cập trong văn bản.

Đề xuất nội dung: API có thể giúp đề xuất nội dung hoặc sản phẩm có

liên quan cho người dùng dựa trên phân tích các tương tác hoặc sở thích văn bản của họ.

Chatbot và Trợ lý ảo: Việc tích hợp API với chatbot hoặc trợ lý ảo

cho phép chúng hiểu và trả lời các truy vấn của người dùng một cách thông minh và theo ngữ cảnh hơn.

Giám sát thương hiệu: Doanh nghiệp có thể theo dõi và phân tích nội

dung trực tuyến để hiểu cách thương hiệu của họ được nhìn nhận và thảo luận trên nhiều nền tảng khác nhau.

Kiểm soát chất lượng dịch ngôn ngữ: API có thể hỗ trợ đánh giá chất

lượng văn bản được dịch bằng máy bằng cách phân tích ngữ pháp, cú pháp và cảm xúc.

Trang 26

Phân tích phương tiện truyền thông xã hội: Phân tích các bài đăng,

nhận xét và đánh giá trên phương tiện truyền thông xã hội bằng API giúp doanh nghiệp hiểu được ý kiến, xu hướng và cảm xúc của khách hàng.

API ngôn ngữ tự nhiên của Google Cloud là một công cụ mạnh mẽ cho các ứng dụng NLP khác nhau, cung cấp các mô hình được đào tạo trước có thể dễ dàng tích hợp vào các ứng dụng web và thiết bị di động thông qua API RESTful Nó phù hợp cho các nhà phát triển muốn bổ sung khả năng NLP vào các dự án của họ mà không cần phải có chuyên môn sâu về học máy hoặc đào tạo mô hình.

Kiến trúc và cách thức hoạt động của API ngôn ngư tự nhiên trong GCP:

1 Gửi yêu cầu: Để sử dụng API ngôn ngữ tự nhiên của Google Cloud,

nhà phát triển gửi yêu cầu có nội dung văn bản đến điểm cuối API.

22

Ngày đăng: 04/05/2024, 14:22

Tài liệu cùng người dùng

Tài liệu liên quan