Serverless Web Apps using Amazon DynamoDB - Part 1 (Traditional Chinese)
Offered By: Amazon Web Services via AWS Skill Builder
Course Description
Overview
概觀
AWS 超級英雄大集合!在以下這個使用 DynamoDB 的三部分實驗室系列中,運用 DynamoDB 建立任務檔案產生器。在完成第 1 部分的過程中,您必須按指示逐步操作。在這個實驗室中,您將會建立後續兩個實驗室需要的基礎架構。您將會建立 DynamoDB 表格並新增資料,然後檢查所需 IAM 角色和政策,以用於授與上述資料的安全存取權。
在實驗室 2 和 3 中,您將建立與 DynamoDB 互動的 Lambda 函數、透過 API 閘道服務建立 API,最後將應用程式發佈至公有 Web,您會運用到在三個實驗室中學到的所有 DynamoDB 技能。在第 3 部分結束時,您將能夠產生任務檔案,並派遣超級英雄來拯救世界!
涵蓋的主題
本實驗室結束後,您將能夠:
- 建立 Amazon DynamoDB 表格
- 新增項目到 Amazon DynamoDB 表格
- 了解存取表格所需的 IAM 角色和政策結構
先決條件
建議您先參考 Amazon DynamoDB 簡介和 AWS Identity and Access Management (IAM) 簡介這兩個實驗室,藉此熟悉重要概念。以下為三部分實驗室系列中的第一部分。這三個實驗室個別都可以獨立存在,但由於這些實驗室以您之前所學為基礎,因此建議您依序參與這三個實驗室。
其他 AWS 服務
在您存取此實驗室期間,IAM 政策會停用實驗室不需要的其他 AWS 服務。此外,這個實驗室所用服務的功能會受限於實驗室所需,且在某些情況下,更會因實驗室蓄意的設計而進一步受限。存取其他服務或執行此實驗室指南以外的動作時,將會發生錯誤。
AMAZON DYNAMODB
Amazon DynamoDB 是一種快速靈活的 NoSQL 資料庫服務,適合無論規模為何皆需要穩定效能且延遲低於 10 毫秒的所有應用程式。它是全受管的雲端資料庫,並支援文件和鍵值存放模型。其靈活的資料模型和可靠的效能使其成為行動應用程式、Web、遊戲、廣告技術、物聯網和眾多其他應用程式的不二之選。
您可以使用 Amazon DynamoDB 建立資料庫表格,以存放和擷取任意數量的資料,並處理任何規模的請求流量。Amazon DynamoDB 會自動將表格的資料和流量分散到足夠數量的伺服器上,以處理客戶指定的請求容量和存放的資料量,同時保持一致的快速效能。
DYNAMODB 術語
資料表 如同其他資料庫管理系統,DynamoDB 會將資料存放在資料表中。資料表就是一組資料集合。舉例來說,您在此實驗室中會建立一個名為 SuperMission 的資料表,其用於存放任務資訊。您也會建立一個 People (人員) 資料表來存放朋友、家人或任何其他相關人物的資料,或用 Cars (車輛) 資料表來存放人員駕駛的車輛資訊。
項目 每個資料表都包含多個項目。項目是一個屬性群組,屬性使該項目得以從其他項目中經過唯一識別。在 People (人員) 資料表中,每個項目代表一個人;在 Cars (車輛) 資料表中則代表一部車。從許多方面來看,項目就類似於資料列、記錄、或關聯式資料庫系統中的元組。DynamoDB 並未限制可在資料表中存放的項目數量。
屬性 每個項目都由一或多個屬性組成。屬性是基礎的資料元素,無需再進一部細分。在此實驗室中,您建立的 Mission (任務) 項目會包含 SuperHero、MissionStatus、Villain1、Villain2、Villain3 和 SecretIdentity 等屬性。再舉一例,Department (部門) 項目可能會有 DepartmentID、Name、Manager 等屬性;People (人員) 資料表可能包含 PersonID、LastName、FirstName 等屬性。DynamoDB 中的屬性在許多方面來看,就類似於其他資料庫管理系統的欄位或資料欄。
主索引鍵 建立資料表時,除了資料表名稱,您也必須指定資料表的主索引鍵。如同其他資料庫,DynamoDB 的主索引鍵可用於唯一識別表格中的個別項目,因此沒有任何項目會有重複的索引鍵。您在新增、更新或刪除資料表中的項目時,必須指定該項目的主索引鍵屬性值。主值是必要的,絕對不能省略。DynamoDB 支援兩種主索引鍵類型:分區索引鍵和分區索引鍵與排序索引鍵。
次要索引 在 DynamoDB 中,您可以提供主索引鍵屬性值來讀取資料表中的資料。如果您想要使用非索引鍵屬性來讀取資料,可以使用次要索引。在資料表中建立次要索引後,您從索引中讀取資料的方式與從資料表中讀取資料的方式幾乎相同。使用次要索引,則除了按照主索引鍵值存取資料之外,您的應用程式還能使用多種查詢模式。
AWS IDENTITY AND ACCESS MANAGEMENT 文件
AWS Identity and Access Management (IAM) 是一種 Web 服務,可讓 Amazon Web Services (AWS) 客戶在 AWS 中管理使用者和使用者許可。該服務的目標客群為有多個雲端使用者或系統採用 AWS 產品 (如 Amazon DynamoDB、AWS Lambda 和 AWS 管理主控台) 的組織。使用 IAM,您可以集中管理使用者、安全登入資料 (如存取金鑰),以及許可,以控制使用者可存取的 AWS 資源。如需詳細資訊,請參閱 https://aws.amazon.com/iam/。
AWS LAMBDA
AWS Lambda 是一種運算服務,可在雲端提供可調整大小的運算容量,讓開發人員更容易進行 Web 規模的運算。只要將程式碼上傳到 AWS Lambda,AWS Lambda 會替您完成佈建與管理用於執行程式碼的伺服器。AWS Lambda 支援多種程式語言:Node.js、Java 或 Python。 您可以將 AWS Lambda 使用在以下兩種用途:
- 當作事件驅動運算服務使用,讓 AWS Lambda 執行程式碼來回應事件,例如您會在此實驗室看到的上傳影像檔案。
- 當作運算服務使用,執行程式碼來回應使用 Amazon API Gateway 或 API 呼叫的 HTTP 請求。
AWS Lambda 可延續 Amazon 規模的財務優勢。Lambda 僅在需要時執行程式碼並自動擴展,從每天幾個請求到每秒數千個皆可執行。Lambda 可讓您輕鬆為 Amazon S3 和 Amazon DynamoDB 等 AWS 服務建立資料處理觸發條件、處理存放於 Amazon Kinesis 的串流資料,或以 AWS 的規模、效能和安全性建立自己的後端。
本實驗室指南會逐步說明 AWS 的基本概念。但是,本指南僅對 Lambda 的概念提供簡要概觀。如需詳細資訊,請參閱 Lambda 的官方 Amazon Web Services 文件,網址為 https://aws.amazon.com/documentation/lambda/。如需定價詳細資訊,請參閱 https://aws.amazon.com/lambda/pricing/。
Tags
Related Courses
Données et services numériques, dans le nuage et ailleursCertificat informatique et internet via France Université Numerique Introduction to Digital Curation
University College London via Independent Excel Avanzado
Miríadax SAP Business Warehouse powered by SAP HANA
SAP Learning Programming Mobile Applications for Android Handheld Systems: Part 2
University of Maryland, College Park via Coursera