【每周快報】1013-1021 AWS 服務更新
前言
為了因應全球疫情,不僅需要有醫護人員們的努力,科技產業也不斷推出更多方法來協助控制這次的疫情。像是 Amazon Rekognition 在這周推出了些新功能,現在除了人臉辨識外,還能夠偵測影像中的個人保護裝置,像是有無戴口罩,口罩是否戴在正確的位置…等細節,希望能降低相關人員的工作量。這周,AWS 在資料庫服務也做了些服務的優化,例如 AWS Redshift 現在新增了跨資料庫查詢功能,Amazon Aurora 則是在這次更新後,可以動態的調整資料庫儲存容量大小了!
我們也將在這次的新聞和各位分享 Amazon CloudFront、Session Manager 、AWS Glue、Budgets Actions…等服務的新功能,同時也會帶大家了解這些新功能的應用!
焦點新聞
Amazon Rekognition 可偵測影像中的個人保護裝置(Personal Protective Equipment, PPE)
全球因為 Covid-19 緣故,諸多國家為降低公眾傳播感染風險,在各個公共場所皆要求超過 37.5 度不得進入,且必須攜帶口罩,需要人力在場所內做管控,這會徒增人力成本,即使現在有許多場所設置紅外線感應,以避免高溫民眾進入,但是否有攜帶口罩還需人力檢核,卻沒有辦法百分百的自動化。
Amazon Rekognition 是一個可以在應用程式中加入影像和影片分析的服務,可識別影像和影片中的各種物體、人物、文字、場景和活動,也可以偵測任何不當的內容,不僅如此,也提供了高度準確的臉部分析和臉部搜尋功能,可用於偵測、分析和比較臉部資料,助於各種使用者驗證、人數統計。此次更新後,可偵測人像是否有攜帶口罩,以幫助入口管控的審核。
現在開始,使用者可以透過 Console 看到 PPE 的選項。從 AWS 提供的 demo 畫面來看,Rekognition 偵測到圖中四人皆穿戴口罩與安全帽,且正確地穿戴在對應的身體部位上:
而 AWS 也實際測試將 Rekognition DetectProtectiveEquipment 功能結合 web application 的效果。以下圖為例,透過 PPE 可以偵測到人像身上是否有攜帶口罩:
除此之外,透過個人保護裝置(Personal Protective Equipment, PPE)偵測,也很適合用在高度管控場所,像是製程場所人員皆需帶帽子、手套。
參考來源至:Amazon Rekognition now detects Personal Protective Equipment (PPE) such as face covers, head covers, and hand covers on persons in images 參考來源至:Automatically detecting personal protective equipment on persons in images using Amazon Rekognition
Amazon CloudFront 推出 Origin Shield 功能
Amazon CloudFront 是一項可幫助使用者實現 content delivery network (CDN) 的 AWS 服務。當 Client 第一次向 Server 遞送 request 時,會檔案暫存在 Cache Server,而下一次有其他 request 需要相同檔案時,即可從最靠近 Client 端的 Cache Server 快速地回覆請求。
而 CloudFront 會利用 AWS 在全球的 Edge Location 作為 Caching 的端點,將資料暫存在 Edge Location,以便快速的回覆給 Client。
圖片來源至:CloudFront Documentation – How CloudFront delivers content
雖然 CloudFront 可幫助加速 Server 回覆給 Client 的時間,並降低 Server 端的 workload,但 CloudFront 仍存在於「並非所有資料皆會暫存在 Edge Location」的問題。當某一物件因長期未被 Client 取用,CloudFront 便會將該物件從 Edge Location 移除,以騰出更多的空間給其餘有較多 Client 請求的物件,發揮 Cache 最大的價值。因此如果下一次 Client 再度 request 該物件時,CloudFront 就需要回到 Origin 端拿資料,仍會消耗到 Origin 端的效能。
在此次更新之前,CloudFront 已有 Regional Edge Cache 來嘗試改善上述的問題,期望提高 cache hit ratio,因此在更最接近 Server 的 Regional Edge Cache 端,多做一層的 Cache;當 Client 送出 request 之後,會依照 Global Edge Location -> Regional Edge Cache -> Origin
的順序詢問是否有指定的物件,如果在前一個位置已找到需要的物件,就會直接回覆給 Client,不再往後詢問。
- 如下圖的案例,透過設置兩層的 Cache,降低 Origin 端的 workload,並提高 cache hit ratio。此外,使用 Regional Edge Cache 是不會額外收費的。
此次更新後,使用者多了 CloudFront Origin Shield 的選擇,AWS 強調 CloudFront Origin Shield 更能夠降低 Origin 端的 workload。每一項物件僅會從 Origin 端請求一次,接著便會存放在 CloudFront Origin Shield 端;因此當 Client 提出 request 時,第一次會依序 Global Edge Location -> Regional Edge Cache -> CloudFront Origin Shield -> Origin
詢問物件,之後針對同一物件的 request,最多詢問到 CloudFront Origin Shield 端,藉此有更大的機率可以提高 cache hit ratio。
- 使用 CloudFront Origin Shield 之後:
使用者若要開始使用 CloudFront Origin Shield,僅需要兩個步驟:在 CloudFront Origin Settings 啟用 CloudFront Origin Shield 功能,並選取最接近 Origin 的 Regional Edge Cache 作為 Origin Shield Region 即可。
Origin Shield 具備高可用及 failover 的特性,當 Region 內的 Cache 端無法提供服務,也會自動轉移至同一 Region 中可正常服務的 Cache 端。
參考來源至:Announcing Amazon CloudFront Origin Shield
圖片來源至:Amazon CloudFront Documentation – Using Amazon CloudFront Origin Shield
其他服務更新
Session Manager 新增 shell profile 功能
Session Manager 是 AWS Systems Manager 服務中的一項常用功能,讓使用者可直接於 AWS 主控台中透過 SSH 連線至 EC2 Instance。
此次更新後,使用者可以自訂使用 Session Manager 的 shell profile ,當使用者連線至 EC2 shell 時,會自行運行 shell profile 中的指令,例如:顯示主機名稱、設定快捷指令等,來訂製符合使用者需求的自動化腳本。
參考來源至:Now customize your Session Manager shell environment with configurable shell profiles
Amazon QLDB 新增 GO SDK
Amazon QLDB 新增 GO SDK,讓使用 GO 的開發人員提供了一種存取 QLDB 的方法,並提供了用於處理 QLDB session、簡化 PartiQL 語法和處理 ION 資料的功能。
AWS Redshift 新增跨資料庫查詢(cross-database queries)功能
AWS Redshift 是專門在存放龐大數據的服務,適合用在數據分析場景,但之前常會遇到一個困擾,就是如果要同時查詢多個資料庫的數據,需要先將其資料做整合查詢,這會增加多餘的資料庫副本,以致成本攀升,這並不是使用者所樂見的,此次更新後,AWS Redshift 新增跨資料庫查詢,以解決上述痛點。
參考來源至:Announcing cross-database queries for Amazon Redshift (preview)
Amazon Aurora 可動態的調整資料庫儲存容量大小
Amazon Aurora 是一個支援 MySQL 和 PostgreSQL 資料庫服務,其最大特色就是使用者不需要先預設資料庫容量,最大可以擴充到 128 tebibytes(TiB),Aurora 會根據資料的大小做擴充,以降低高估成本的風險,造成不必要的成本支出,但是會發現到一旦擴充過的容量,即使現在資料小於 Aurora 容量,Aurora 也不會自動縮容,長期下來,會造成大量的支出,此次更新後,Aurora 會自動調整資料庫儲存容量大小,也就是說資料小於 Aurora 容量時,Aurora 會自動縮小容量,在使用上更加友善、便利。
參考來源至:Amazon Aurora enables dynamic resizing for database storage space
AWS Glue 支援讀取使用者管理的 Apache Kafka Cluster 作為 Data Source
AWS Glue 是一項全託管的 ETL 服務,使用者可透過 AWS Glue 快速且簡單的載入資料以進行分析。先前使用者如果想讓 Glue 讀取 Apache Kafka 資料,僅能將資料放置在 Amazon Managed Streaming for Apache Kafka(Amazon MSK),再將資料引入 Glue 以進行 ETL。
此次更新後,除了放置在 Amazon MSK 以外,由使用者自行管理的 Apache Kafka 資料(例如:部署在自身地端環境中的 Apache Kafka、部署在 Amazon EC2 的 Apache Kafka…等等),也可以透過 Glue 讀取並進行 ETL 作業。
參考來源至:AWS Glue supports reading from self-managed Apache Kafka
AWS 推出 Budgets Actions 功能
AWS Budgets 可幫助使用者了解 AWS 帳戶內當前的成本花費。使用者可以自訂預算金額,並在成本或用量超過預算金額時提醒使用者該注意成本的狀況。此次更新後,除了可以設立提醒之外,使用者還可以觸發另外三種動作:
- 套用 IAM Policy:當成本超過預算時,使用者可將預先定義的 IAM Policy 套用至特定 IAM User / Group / Role 上面,以管理權限。例如:當成本過高時,限制特定 IAM Group 內的 IAM User 啟用 EC2 Instances 的權限,以確保不會再 launch 過大的 EC2 Instances。
- 套用 Service Control policy(SCPs):與 IAM Policy 相似,以修改權限的方式,限制未來資源使用的狀況。
- 變更 Amazon EC2 / Amazon RDS Instances 狀態:將帳戶內處於 Running 狀態的 EC2 Instances / RDS Instances 進入 Stopped 或是 Terminated 的狀態,以節省成本。另外,也可限定修改位在特定 Region 內的 Instances。
Amazon QuickSight 支援顯示在 Sheet 上的篩選功能控制板
Amazon QuickSight 是一種 Business Intelligence (BI) 工具,可幫助使用者快速產出圖表,像是長條圖、折線圖、圓餅圖等等報表類型圖表的服務,經常用於大數據分析。當使用者利用其餘 AWS 服務處理、分析好資料後,可放入 QuickSight 產生視覺化圖表,此外,QuickSight 也可以事先將資料進行篩選、SQL 查詢、計算,再呈現出來。
此次更新後,使用者可以直接在儀表板上建立篩選器 (Filter),隨時可更改當前圖表顯示的資料區間。篩選器有不同種類型,像是下拉式選單、日曆式選單、拖曳式選單等等,可依據使用者的需求調整,讓圖表中所呈現的資料更容易使人理解。
若要開始使用,可在現有的儀表板或是新的儀表板上,新增篩選器,接著選擇「Add to sheet」,即可顯示在儀表板中。
也可以將篩選器置頂在儀表板最上方。
參考來源至:Amazon QuickSight adds support for on-sheet filter controls
圖片來源至:AWS Blog – Amazon QuickSight adds support for on-sheet filter controls