Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AWS re:Invent 2019 recap For Digital Native Business

1,439 views

Published on

2019.01.23 開催「AWS re:Invent 2019 recap For Digital Native Business」での発表資料です。

Published in: Internet
  • Be the first to comment

  • Be the first to like this

AWS re:Invent 2019 recap For Digital Native Business

  1. 1. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS re:Invent 2019 recap For Digital Native Business 2020. 1. 23 Amazon Web Services Japan K.K.
  2. 2. Speakers
  3. 3. Agenda 1. AWS re:Invent 2019 概要 2. おすすめサービスアップデート 3. おすすめ事例セッション
  4. 4. AWS re:Invent2019 • AWS世界最大の「学習型」カンファ レンス • 65,000+の参加者 • 日本からも1,800+の参加 • 3,000+のセッション • パートナー展示ブースや各種ハンズ オン、認定試験など • ネットワーキングパーティーなど各 種のイベントも 5
  5. 5. 1 Have fun Events and 4 Keynotes
  6. 6. 2 more Have funs Japan Night re:Play
  7. 7. Tuesday Keynote Andy Jassy
  8. 8. 怒涛の発表
  9. 9. 一部は会期前から発表を開始 新サービス・機能の発表 275+(昨年は100+) ※ 2019/11/13-2019/12/5 の AWS What’s New 掲載数 https://aws.amazon.com/new/?nc1=h_ls
  10. 10. 2015年はどうだったかというと... 5 開催概要 • 2015年10⽉6⽇-10⽉9⽇ • ベネチアンホテル@ラスベガス • 18,000⼈以上の参加者 • ⽇本から500⼈以上のお客様がご参加 – 約350⼈のお客様がツアーをご利⽤ • 今年で4回⽬の開催 6 コ ンテンツ • 基調講演と新サービス発表 • 250以上のセッション • ブートキャンプ&ハッカソン • パートナー展⽰ブース • AWS認定試験&ラウンジ • セルフペースドラボ • 様々なイベント – ウェルカムレセプション、パブクロール、re:Play パーティなどの各種エンターテインメント 16 新たに発表さ れたサービス・ アッ プデート 11.RDS for MariaDB 12.AWS Config Rules 13.CloudWatch Dashboard 14.Lambda Update 15.Amazon ECS 機能追加 16.EC2 Instance Update 17.Auroraが東京リージョンに 18.API Gatewayが東京リージョンに 1. AWS IoT 2. Amazon QuickSight 3. Amazon Kinesis Stream 4. Amazon Kinesis Firehose 5. Amazon Kinesis Analytics 6. Amazon Inspector 7. AWS Import/Export Snowball 8. AWS Database Migration Service 9. AWS Mobile Hub 10.Amazon EC2 Container Registory
  11. 11. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  12. 12. 12/1(日)発表分 1. EC2 Image Builderを発表 2. AWS End-of-Support Migration Program for Windows Serverを発表 3. AWS DeepComposerを発表 4. Amazon Transcribe Medicalを発表 5. AWS DeepRacerのアップデート 6. Amazon SageMaker Operators for Kubernetesを発表 7. AWS IoT SiteWiseで5つの新機能と価格体系の更新 8. Amazon EventBridge Schema Registryのプレビューを開始 9. AWS License ManagerがDedicated Hostに対応 10. AWS License Managerの自動化機能を強化
  13. 13. 12/2(月)発表分 1. Amazon Braketを発表 2. AWS IAM Access Analyzerを発表 3. Access Analyzer for Amazon S3を発表
  14. 14. 12/3(火)発表分 ① 1. Graviton 2搭載インスタンス提供をプレアナウンス 2. Amazon EC2のInf1インスタンスを発表 3. AWS Compute Optimizerを発表 4. AWS Nitro Enclavesを発表 5. AWS Local Zonesを発表 6. AWS Outpostsが一般利用可能に 7. AWS Wavelengthを発表 8. AWS LambdaのProvisioned Concurrencyを発表 9. AWS Fargate for Amazon EKSを発表 10. AWS Fargate Spotを発表 11. Amazon ECS, EKS, AWS App MeshがOutpostsに対応 12. Amazon ECS Capacity Providersが利用可能に 13. Amazon ECSのCluster Auto Scalingが一般利用開始
  15. 15. 12/3(火)発表分 ② 14. Amazon S3 Access Pointsを発表 15. NitroベースのEC2インスタンスでEBS帯域が向上 16. EBS Direct APIsを発表 17. Amazon RDS Proxyを発表 18. Amazon RDS on AWS Outpostsのプレビューを開始 19. Amazon EMR on AWS Outpostsが利用可能に 20. Amazon Redshiftのデータレイク連携機能を強化 21. Redshift RA3 InstanceとManaged Storageを発表 22. AQUA for Amazon Redshiftを発表 23. Amazon Elasticsearch ServiceのUltraWarmを発表 24. Amazon Managed Apache Cassandra Serviceを発表 25. Transit GatewayのMulticastとリージョン間接続 26. Transit Gateway Network Managerを発表
  16. 16. 12/3(火)発表分 ③ 27. Amazon VPC Ingress Routingを発表 28. Accelerated Site-to-Site VPNを発表 29. Amazon SageMaker Studioを発表 30. Amazon SageMaker Model Monitorを発表 31. Amazon SageMaker Experimentsを発表 32. Amazon SageMaker Debuggerを発表 33. Amazon SageMaker Autopilotを発表 34. Amazon SageMakerのNotebookに関する改善 35. Amazon SageMakerにProcessing機能を追加 36. Deep Graph LibraryがSageMakerで利用可能に 37. AWS Deep Learning AMIをアップデート 38. Amazon Augmented AIを発表 39. Deep Java Libraryを発表
  17. 17. 12/3(火)発表分 ④ 40. Rekognitionがカスタムラベルに対応 41. Amazon Kendraを発表 42. Amazon Fraud Detectorを発表 43. Amazon CodeGuruを発表 44. AWS Detectiveを発表 45. Contact Lens for Amazon Connectを発表 46. AWS Step Functions Express Workflowsを発表 47. Chimeが14のリージョンで会議をホスト可能に 48. AWS Security HubのIAM Access Analyzerとの統合
  18. 18. 12/4(水)発表分 1. 新たに2つのコンピテンシーを発表 2. APN Grobal Startup Programを発表 3. APN Immersion Daysを発表 4. AWS Service Ready Programを発表 5. SCSK株式会社がプレミアパートナーに認定 6. Amazon ECSがWindowsのgMSAをサポート 7. EKSのARM搭載インスタンス対応のアップデート 8. Amazon API GatewayのHTTP APIを発表 9. Amazon Neptune Workbenchを提供開始 10. Amplify DataStoreを発表 11. Amplify iOSとAmplify Andoridを発表 12. Amazon Chime Meetings App for Slackが利用可能に
  19. 19. 12/5(木)発表分 1. Amazon Builder’s Libraryを発表
  20. 20. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. 全部は無理です 🙇♂️
  21. 21. Service Updates • Compute / Container / Serverless • Management / Security ----ここでバトンタッチ---- • Databases • Analytics / AI,ML
  22. 22. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  23. 23. これまでのEC2世代変遷 Classic Virtualization Nitro System 独自ASIC Nitroシステムで高スループット、低レイテンシー、低価格を実現 AWS re:Invent 2019 - Keynote with Dr. Werner Vogels https://www.youtube.com/watch?v=OdzaTbaQwTg
  24. 24. サーバー: 幅広いニーズにこたえるEC2インスタンスファミリー バースト可能 汎用 ストレージ 最適化 高速コンピューティング メモリ 最適化 コンピュート 最適化 • 需要に合わせて、インスタンスタイプ、サイズの変更が可能 • vCPU: 1 〜 128 • RAM: 0.5GB 〜 4TB *注: インスタンスタイプにより選択可能なサイズは異なります 主にSAP HANA用のu-12tb1.metalは、448 vCPU, 12TiB RAM c5d.xlarge インスタンス ファミリー サイズ 世代 追加機能 GPU FPGAARM a1 a1.metal m5 m5a m5ad m5n m5dn m5.metl m5d.metal r5 r5a r5d r5ad r5n r5dn r5.metal r5d.metal t3 t3a p3dn i3 i3en i3.metal i3en.metal c5 c5d c5n c5dn c5.metal c5d.metal c5n.metal g3 g3s g4dn d2 h1u.metal z1d z1d.metal f1x1 x1e ML ASIC inf1 m6g m6gd c6g c6gd r6g r6gd
  25. 25. Graviton2 instances
  26. 26. Graviton 2搭載インスタンス • 64bit ARMのAWS Graviton 2を搭載したインス タンス • 汎用(M6g, M6gd) : 1-64vCPU, Max 256GiB RAM • コンピュート最適化(C6g, C6gd) : 1-64vCPU, Max 128GiB RAM • メモリ最適化(R6g, R6gd) : 1-64vCPU, Max 512GiB RAM • 各インスタンスは最大25Gbpsのネットワーク帯域と、最大 18GbpsのEBS帯域を持つ • AWS Nitro Systemを利用してインスタンス上の メモリは起動時に生成される256-bit鍵で暗号化、 インスタンス外部から読み取ることは不可 • 2020年にさらなる情報を公開予定 7nmプロセスによる AWS独自設計プロセッサ
  27. 27. AWS Inferentia / Inf1 instances
  28. 28. AWS Inferentia • AWSによる独自設計推論プロセッサ • 4 Nuronコア / チップ • チップ当たり最大128 TOPS (2,000 TOPS @24xlarge) • 2ステージ メモリハイアラーキー • - 大容量オンチップ キャッシュとDRAMメモリ • FP16, BF16, INT8 データタイプをサポート • FP32で構築された学習モデルをBF16で実行可能 • 高速チップ間通信をサポート • Nuronコア間、プロセッサ間をパイプラインモードで接続することにより、大規模 モデルを各オンチップキャッシュメモリ上に展開し、高スループット、低レイテン シを実現 TPB 5 TPB 6 TPB 8 TPB 7 Memory Memory Memory Memory Neuron Engine Neuron Engine Neuron Engine Inferentia Neuron Core cache Memory Neuron Core cache Memory Neuron Core cache Memory Neuron Core cache Memory
  29. 29. Amazon EC2のInf1インスタンスを発表 • 機械学習の推論を低レイテンシかつ安価に実現するために設計された AWS Inferentiaを搭載したインスタンスファミリを発表 • G4インスタンスと比較して推論処理で最大3倍のスループット、最大 40%のコスト削減効果を期待できる • 4つのインスタンスサイズから選択でき、CPUはIntel Xeon(Cascade Lake)を搭載。バージニアとオレゴンのリージョンで利用可能 • 以下のサービスからも利用可能になる予定 • Amazon SageMaker • Amazon ECS • Amazon EKS Inf1ファミリ Inferentia チップ数 vCPU メモリ (GiB) EBS帯域 (Gbps) NW帯域 (Gbps) On-Demand 価格 inf1.xlarge 1 4 8 Max 3.5 Max 25 $ 0.368 / hr inf1.2xlarge 1 8 16 Max 3.5 Max 25 $ 0.584 / hr inf1.6xlarge 4 24 48 3.5 25 $ 1.905 / hr inf1.24xlarge 16 96 192 14 100 $ 7.619 / hr
  30. 30. Amazon EC2を使用したML推論の選択肢 AWS Inferentia EC2 Inf1 インスタンス GPU based EC2 G4 インスタンス CPU based EC2 C5 インスタンス Network Attach Elastic Inference 一般的な ML フレームワーク を利用したアプリケーション CUDA, CuDNN, TensorRT等、 NVIDIA社のライブラリを利 用したアプリケーション 小さなモデルや高い性能を求 めない場合に利用 要件にあったvCPU/メモリサ イズのEC2と組合せて TensorFlowおよびMXNetモデ ルの推論処理を安価に AWS Inferentia 推論プロセッ サ搭載 NVIDIA T4 GPU搭載 Amazon EC2 G4 インスタン ス Intel Skylake/Cascade Lake CPU AVX-512/ VNNI 命令セット をサポート GPU クラウド上でのML推論でベス トプライスパフォーマンスを 提供 G4インスタンスと比較し、推 論処理当たり最大40%低価格、 3倍のスループットを提供 Available today! ローンチ済 ! ローンチ済 ! ローンチ済 ! ※BERTベースのモデルをTensorFlowで実行した結果の例
  31. 31. その他のUpdates
  32. 32. Amazon EC2 Image Builderを発表 • ゴールデンAMIを最新に保つ事を容易にする ためのサービスで、パッチ適用や最新版のミ ドルウェアインストール等の作業を自動化す る • 個別のビルドやテスト手順をComponentとし て定義。これらを組み合わせたRecipeを元に Build PipelineがAMIを自動的に作成する • Amazon Linux 2とWindows Server 2012, 2016, 2019をサポート • ImageBuilder自体は無料だが、作成させるリ ソースには費用が発生 • VM Import/Exportを介してオンプレミスの VMイメージも出力できる AMI VM Image Amazon EC2 Image Builder Operator AMI VM Image
  33. 33. • Application Load Balancerに紐付けられた ターゲットグループ毎に流入するトラフィッ ク量を制御できるようになった • ターゲットグループ毎に0-999の重みを設定 すると、それぞれが全体に占める割合に応じ たトラフィックが流入するようALBが制御す る • Blue/Greenデプロイやカナリアリリースを行 いたいときにも有益 • すべてのリージョンで利用でき、追加費用は なし Instances Instances Application Load Balancer Target Group #1 Target Group #2 ALBが重み付け負荷分散をサポート
  34. 34. Application Load BalancerでLeast Outstanding Requests(LOR)アルゴリズムが利用可能になった 処理中のリクエスト数が最小のインスタンスに新 たなトラフィックをルーティングするように動作 する 従来のアルゴリズムではリクエストの内容によっ て負荷が変わる場合に、負荷のムラを抑えること が期待できる Spot Fleetなどでバックエンドのインスタンスタイ プが混在している場合や、WebSocketのように持 続する接続を分散したい場合に有益 Application Load Balancer Instance Instance ALBがLORアルゴリズムによる負荷分散に対応
  35. 35. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  36. 36. クラウドの利用率は増加傾向が続く,,,,,,が 73%すでにクラウドを利用中の組織 17%1年以内にクラウドを利用予定の組織 出典: https://www.idg.com/tools-for-marketers/2018-cloud-computing-survey/
  37. 37. 金融機関 高頻度取引(HFT)、 取引所プラットフォーム、 コアバンキング コンテツ作成、配信、 ゲーム企業 ロスレス信号処理、VDI, ライブイベント、 ゲームストリーミング 製造業 製造装置、センサー制御、 ロボティクス 通信事業者 Virtual Network Functions ヘルスケア ライフサイエンス 患者診断、研究分析 移動体事業 経路案内、フリート管理、レコ メンデーション 超低レイテンシを求めるアプリケーションは残り続ける
  38. 38. AWS Outposts ネイティブのAWSサービス、インフラストラクチャ、運用モデルを ほぼすべてのデータセンター、コロケーションスペース、オンプレミスの 施設で利用でき、真に一貫したハイブリッドエクスペリエンスを実現。 低レイテンシー、もしくはローカルでデータを処理する必要があるために オンプレミスに残されているワークロードをサポート
  39. 39. AWS Outposts ラック • 業界標準 42U ラック • 最終設置場所に設置できるフルアセンブ ルされた状態で発送 • AWSチームが設置し, あとは電源とネッ トワークをつなぐのみ • 集中かつ冗長化された電源変換ユニット と 直流配電システムにより信頼性・実行 効率・運用容易性を実現 • 冗長なアクティブコンポーネントとして TOR(Top of Rack) スイッチやホットスペ アホストを用意 ラック寸法 • 幅 24” • 奥行 48” • 高さ 80”
  40. 40. 運用保守 AWS Outpostsはフルマネージドサービス パッチ、監視、故障検知、故障部品交換はAWSが実施 ハードウェアに問題がある場合は、お客様に通知 全てのハードウェアは二重化 AWSチームがお客様先で故障部品を交換 キャパシティ(インスタンスの利用率)はCloudWatchで監視
  41. 41. AWS Wavelength 5Gネットワークのエッジにある通信プロバイダーデータセンターに AWSのコンピューティングおよびストレージサービスを組み込んだ AWSインフラストラクチャをデプロイメント
  42. 42. AWS Wavelengthを発表 • 通信キャリアの5GネットワークエッジにAWS のCompute/Storageサービスを組み込み、 AWSサービスにアクセス可能にする仕組み • ゲームやビデオのストリーミング、推論処理 など端末から計算資源間を1桁msの遅延で到 達する必要があるシステムを構築可能にする • 世界中の5Gネットワークにおいて、一貫した 開発者エクスペリエンスを提供。使い慣れた AWSサービスやツールを利用して開発可能 • 日本を含む世界各国の通信キャリアとのパー トナーシップにより、2020年のサービス開始 を目指し準備中
  43. 43. AWS Osaka Local Region Expansion to Full Region 現在、申請制・制限付きでご利用いただいている大阪ローカルリージョン が、2021年初旬を目標に正式リージョン化することが発表 正式リージョン化に伴い、3AZ構成、かつ自由にお使いいただけるように Stay Tuned !
  44. 44. リージョンまでの通信で大きな通信遅延が課題 AWS Region Availability Zone Subnet VPC Availability Zone Subnet Mobile+ Internet Internet/DX DX
  45. 45. 通信先インスタンスのSubnetを近くに設置する 複数の選択肢( Outposts, Local Zone, Wavelength) AWS Region Availability Zone Subnet VPC Availability Zone Subnet Wavelength Zone Local Zone Outposts Subnet Subnet Subnet 5G Internet/ DX LAN
  46. 46. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  47. 47. コンテナにおける3大リクエスト EKS on EC2だとインスタンス管理が手間 ECS on EC2は使いたいが、EC2とコンテナレイヤー別々に オートスケーリングを設定・運用するのが難しい Fargateをより安価に使いたい… 😥 😥 😥
  48. 48. コンテナにおける3大リクエスト EKS on EC2だとインスタンス管理が手間 AWS Fargate for Amazon EKS ECS on EC2は使いたいが、EC2とコンテナレイヤー別々に オートスケーリングを設定・運用するのが難しい Cluster Auto Scaling + Capacity Providers Fargateをより安価に使いたい… Fargate Spotの登場 (70%安い) + Saving Planで更に安価に 😊 😊 😊 コンテナの運用がより楽に安価に
  49. 49. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  50. 50. Amazon ECS Capacity Providers が利⽤可能に • タスク(コンテナ)の配置先を決定するための 新しい方法 • タスク配置先の柔軟なコントロールが可能に • 例えば60%はオンデマンドで残りはスポット、等 • EC2 と Fargate の双方で利⽤可能 • EC2 の場合は作成済みの EC2 ASG に Capacity provider を 紐付ける • Fargate ⽤ Capacity provider は自動的に⽤意される (既存 クラスタへは CLI で追加可能) • 東京を含む、ECS を利⽤可能な全てのリー ジョンで利⽤可能 Capacity Provider #1 Capacity Provider #2 Capacity Provider #1 Capacity Provider #2 Strategy : 重み=3 https://aws.amazon.com/about-aws/whats-new/2019/12/amazon-ecs-capacity-providers-now-available/
  51. 51. ECS Capacity Provider Strategy とは ECS Cluster EC2 Auto Scaling Group EC2 Auto Scaling Group Capacity Provider 1 Capacity Provider 2 ECS Service weight: 5 weight: 1 これが Capacity Provider Strategy Fargate Spotでも 使えます🎉
  52. 52. ECS Capacity Provider Strategy とは ECS Cluster EC2 Auto Scaling Group EC2 Auto Scaling Group Capacity Provider 1 Capacity Provider 2 ECS Tasks (run-task) base: 2 weight: 1 weight: 1 Capacity Provider Strategy base ”base” 値は比率では なく実際に配置する 最小タスク数 ”weight” 値によリ比率計算 され配置されたタスク
  53. 53. AWS Fargate Spot • AWS Fargateで中断処理に強いワーク ロードを実行するための新しいオプショ ン • 通常のFargateの価格と比較して最大 70%の割引 • Capacity ProviderのFargate Spotキャパ シティとして利用可能 ※ Fargate Spotは、ECSのみのサポートで、EKSは現状未 サポート AWS Fargate Spot
  54. 54. AWS Fargate Spot • ECS Clusterを作成 • Capacity ProviderでFARGATE_SPOTをあらかじめ指 定して作成 • aws ecs create-cluster --cluster-name FargateCluster --capacity-providers FARGATE FARGATE_SPOT --region us-west-2 • wizard画面からFargateを指定して作成すると FARGATE, FARGATE_SPOT のCapacity Providerが Clusterに紐づいている • run-taskやcreate-serviceで、 FARGATE_SPOTを指定してTaskを起動す る Getting started!! ECS Cluster AWS Fargate AWS Fargate Spot Capacity Provider Capacity Provider ECS TasksECS Tasks base: 1 weight: 1 weight: 1
  55. 55. AWS Fargate Spot AWSにキャパシティが必要になったとき、 Fargate Spotで稼働するタスクは2分前 の通知とともに中断される - ECS Task State ChangeとしてAmazon EventBridgeにイベント送信 - SIGTERMシグナルが実行中のタスクに送信 SIGTERM Taskの中断について AWS Fargate Spot Spot 中断 Amazon EventBridge Task Container Container Task Container Container Service ECS Task State Changeとしてイ ベント送信 SIGTERMシグナル が実行中のタスク に送信 中断が許容できないワークロードをFargate Spotで稼働させるべきではなく、 一方で中断耐性のあるワークロードに対しては、コスト最適化に大きく貢献する
  56. 56. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  57. 57. ECS Capacity Providers + ECS Cluster Auto Scaling • ECS Capacity Provider との組み合わせにより 「アプリケーション・ファースト」な EC2 ス ケーリングが可能に • “CapacityProviderReservation”メトリクスに より、クラスタレベルでノード数ゼロから、 もしくはゼロへのスケーリングが可能に • 東京を含む、ECS と AWS Auto Scaling が利⽤ 可能なリージョンで利⽤可能 Auto Scaling group Amazon Elastic Container Service 相互に矛盾がないよう 個別に設定・制御 Auto Scaling group Amazon Elastic Container Service https://aws.amazon.com/about-aws/whats-new/2019/12/amazon-ecs- cluster-auto-scaling-now-available/ ECS が ASG の スケーリング設定を管理
  58. 58. ECS Cluster ECS Cluster と EC2 Auto Scaling グループ EC2 Auto Scaling Group EC2 Instances ECS Tasks ECS CapacityProvider,ECS ClusterAuto Scaling以前の仮想マシンレイヤのスケーリング
  59. 59. EC2 Auto Scaling Group EC2 Instances ECS Tasks ECS Cluster ECS Cluster と EC2 Auto Scaling グループ ECS CapacityProvider,ECS ClusterAuto Scaling以前の仮想マシンレイヤのスケーリング
  60. 60. ECS Capacity Providers + ECS Cluster Auto Scaling ECS Cluster ECS Capacity Provider EC2 Instances ECS Tasks EC2 Auto Scaling Group アプリケーション・ファーストなスケーリング
  61. 61. CapacityProviderReservation メトリクス スケールアウト時の様子
  62. 62. CapacityProviderReservation メトリクス スケールイン時の様子
  63. 63. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  64. 64. Management of the Kubernetes control plane Phase 1 Phase 2 Management of the Kubernetes data plane
  65. 65. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  66. 66. Amazon EKS Managed Node Groups 1コマンドでの ノード群の構築 常に最新の状態を保つ 高い可用性 EKS コンソール、API、eksctl、 CloudFormation、Terraform Kubernetes ラベルの付与も サポート 最新の EKS-optimized AMI から起動 1コマンドで最新の AMI を利⽤した ノード群にローリングアップデート ノードを複数の AZ にまたがって展開 Cluster Autoscaler Discovery ⽤タグ付け ノードグループ設定の状態チェック 自動的な cordon と drain
  67. 67. Managed Node Groups のコンソール
  68. 68. Node Group Configuration 画面
  69. 69. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  70. 70. Amazon EKS on AWS Fargate 既存 Pods の実行 プロダクション・レディ 適切なサイジングと インテグレーション 既存 Pods の変更不要 Kubernetes で実行している既存 のワークフローやサービスが Fargate で動作する Pods の実行に必要なリソースについ てのみ課金 ネットワークやセキュリティのネイテ ィブな AWS インテグレーション Pods の迅速な起動と、容易な複数 AZ への展開 各 Pod はそれぞれが独立した環境 で実行され、カーネルやCPU/メモ リリソース、ENI は Pod 間で共有 されない
  71. 71. AWS Fargate Profile AWS Fargate Profile とは • どのような条件にマッチした Pod を Fargate で動かすかを事前に宣言するためのもの • Profile は 最大 5つのセレクタを指定可能 各セレクタには namespace (必須) と 最大 5つの Label (オプション) を指定 AWS Fargate Profile - Amazon EKS https://docs.aws.amazon.com/eks/latest/userguide/fargate-profile.html
  72. 72. EKS on Fargate - 料金と対応リージョン EKS クラスタの料金: $0.20/時間 vCPU とメモリに対する Fargate の料金 (ECS/Fargate と同一の金額設定) 全ての新規 1.14 クラスタで一般利⽤可能 • 新規クラスタ作成 • 1.13 クラスタの 1.14 へのアップデート • 既存の 1.14 クラスタに対しては今後数週間以内にアップデートを配信 東京、北バージニア、オハイオ、ダブリンで利⽤可能
  73. 73. Public Containers Roadmap https://github.com/aws/containers-roadmap/projects/1
  74. 74. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  75. 75. 従来のLambdaの課題 😥 😥 😥 LambdaからRDSへのアクセス(コネクション数が増えすぎる) LambdaをVPCにアタッチする際のコールドスタート問題(数10s程の遅延) コールドスタートが遅い or スパイク時に追従できない
  76. 76. 従来のLambdaの課題 LambdaからRDSへのアクセス(コネクション数が増えすぎる) LambdaをVPCにアタッチする際のコールドスタート問題(数10s程の遅延) コールドスタートが遅い or スパイク時に追従できない 😊 😊 😊 RDS Proxyがコネクションプールする 🎉 改善された 🎉 Provisioned Concurrencyにより事前起動が可能に 🎉 より様々なユースケースでサーバーレスが使いやすく
  77. 77. AWS Lambda Update
  78. 78. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. SQL
  79. 79. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  80. 80. クライアント RDSとの接続性 (ブロッカー)
  81. 81. クライアント RDSとの接続性 (ブロッカー) 大量のDB接続リクエストが 発生する可能性 RDS 側のリソースが パンクする
  82. 82. これまでの AWS Lambdaでの対策 同時リクエスト数を制御 or 入り口でスロットリングする 1 DB接続数を制御する2 Amazon DynamoDB 分散型のDBを使う3
  83. 83. これまでの AWS Lambdaでの対策 同時リクエスト数を制御 or 入り口でスロットリングする 1 DB接続数を制御する2 Amazon DynamoDB 分散型のDBを使う3
  84. 84. Using Amazon RDS Proxy with AWS Lambda • RDS Proxy の発表 • コネクションプールの管理を行い、データベースへのコネクション要求が過剰に発生した場合にも、 クライアントの接続を待機させたり、既存のコネクションを効率的に再利用させることができる • RDS MySQL 5.6 / 5.7、Aurora MySQL にて利用可能 • 東京、バージニア北部、オハイオ、オレゴン、アイルランドの 5 リージョンでプレビュー利用開始 • AWS Lambda と RDS Proxy の統合 • RDS Proxy を利用することで、これまでの AWS Lambda と RDS との間で発生しやすかった、 コネクションの過剰使用を抑止することができる • AWS Lambda のコンソールから RDS Proxy を作成でき、シームレスな統合を実現 • RDS Proxy を配置する VPC と、AWS Lambda を接続する必要あり ... ☓ ... waitfail
  85. 85. Using Amazon RDS Proxy with AWS Lambda 利用方法 AWS Lambda のコンソールより Add database proxy をクリック 接続先の RDS インスタンスを選択し、RDS インスタン スへ接続するための認証情報を格納する Secrets Manager のシークレット ARN を指定する。 IAM ロールには、Secrets Manager のシークレットに対 する読み取り権限を持ったロールを指定する。 AWS Lambda からの接続には、Secrets Manager から取 得した認証情報を利用することが推奨されるが、関数 にハードコードしたものや Lambda 関数の環境変数に 格納した認証情報を利用して接続することも可能。
  86. 86. Using Amazon RDS Proxy with AWS Lambda 利用方法 AWS Lambda のコンソールより Add database proxy をクリック 接続先の RDS インスタンスを選択し、RDS インスタン スへ接続するための認証情報を格納する Secrets Manager のシークレット ARN を指定する。 IAM ロールには、Secrets Manager のシークレットに対 する読み取り権限を持ったロールを指定する。 AWS Lambda からの接続には、Secrets Manager から取 得した認証情報を利用することが推奨されるが、関数 にハードコードしたものや Lambda 関数の環境変数に 格納した認証情報を利用して接続することも可能。
  87. 87. Using Amazon RDS Proxy with AWS Lambda (再掲)• RDS Proxy の発表 • コネクションプールの管理を行い、データベースへのコネクション要求が過剰に発生した場合にも、 クライアントの接続を待機させたり、既存のコネクションを効率的に再利用させることができる • RDS MySQL 5.6 / 5.7、Aurora MySQL にて利用可能 • 東京、バージニア北部、オハイオ、オレゴン、アイルランドの 5 リージョンでプレビュー利用開始 • AWS Lambda と RDS Proxy の統合 • RDS Proxy を利用することで、これまでの AWS Lambda と RDS との間で発生しやすかった、 コネクションの過剰使用を抑止することができる • RDS Proxy を配置する VPC とAWS Lambda を接続する必要あり ... ☓ ... waitfail
  88. 88. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  89. 89. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  90. 90. AWS Lambda VPC接続の改善 ( 2019 fall )
  91. 91. AWS Lambda VPC接続の改善 ( 2019 fall )
  92. 92. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  93. 93. クライアント スパイキーなアクセス(ブロッカー) リクエストが急増 Lambda関数がColdStart
  94. 94. Provisioned Concurrency for Lambda Functions • Lambda 関数のコールドスタート問題に対応 • 代表例として Java ランタイムを利用するケースなど、関数の初回起動時に大きく時間を要する場合、 この機能を使うことで、事前にウォームアップした状態から関数を実行開始することが可能となる • Lambda 関数のバーストに備えることが可能 • AWS Lambda では、関数の実行が一度に大量に行われた (バーストした) 場合、仮に Lambda 関数の 同時実行数を上限緩和していても、初期同時実行数のバースト制限 (東京リージョンの場合は 1000) までしか一度に実行できず、以降は 1 分ごとに 500 ずつ同時実行可能な数が増加する • この機能により、あらかじめ同時実行数をプロビジョニングしておくことが可能となるため、関数の 実行数のバーストにあらかじめ備えておくことが可能となる (※) ... ... ...
  95. 95. 利用方法 同時実行数のメニューから プロビジョニングされた 同時実行 より、追加もしくは Add Configuration を クリック Lambda 関数のエイリアス、もしくはバージョンを選択する。 $LATEST をポイントしているエイリアスや、バージョン未発行の Lambda 関数には設定できないので注意。 プロビジョニングする同時実行数を入力する。 100 件分が他の関数の実行のため予約されており、入力可能な最大値は東 京リージョンの場合、既定で 900 になる。自身で同時実行数を他に予約し ている場合は、その分も減算される。 Provisioned Concurrency for Lambda Functions
  96. 96. VPC Spike RDS (preview)
  97. 97. Amazon API Gateway update
  98. 98. HTTP APIs for Amazon API Gateway (beta) • 低コスト 最初の 3 億回リクエストまで $1/million それ以降は $0.9/million + データ転送料 • 低レイテンシー • 統合 Lambda, HTTP プロキシ統合のみ • 認証 JWT オーソライザ • ステージへのオートデプロイ • CORS 設定の簡素化 • プロトコルは HTTPS Amazon API Gateway HTTP Endpoint AWS Lambda function
  99. 99. まとめ • AWS LambdaでRDSに対する接続性が向上 • Amazon API Gatewayで簡易にHTTPSのエンドポイント作成可能に • AWS Step FunctionsのExpressが登場、より高スループットに • AWS Lambdaを非同期に使うワークロードに対するエラーハンドリング がより簡単に • ServerlessのCICDパイプラインの構築が簡単に • Amazon EventBridgeを利用して、EventDrivenなSaaS連携 From re:Invent and pre:Invent
  100. 100. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  101. 101. Amazon CloudWatch: Updates (2019/10) 1. Anomaly Detection GA 2. ECS Service Events as CloudWatch Events 3. Metric Math additional functions slice / sort / if / remove_empty 4. Additional Metric Support Service Quotas VPC Traffic Mirroring Lambda percentiles Managed Blockchain
  102. 102. Amazon CloudWatch: Updates (2019/11-12) 1. Cross-Account and Cross-Region Dashboard 2. Container Insights (EKS / ECS) GA 3. Synthetics 4. ServiceLens 5. Embedded Metrics Format 6. Contributer Insights 7. Contrituter Insights for DynamoDB 8. Application Insights 機能強化 9. Grafana support CW as DataSource
  103. 103. Amazon CloudWatch サービスの方向性 1. 監視コンポーネントの提供から統合監視システムへ 2. 構造化ログデータを元にした詳細なメトリクス作成 3. システムのObservability向上(特に分散システム)
  104. 104. CloudWatch Alarms CloudWatch Events CloudWatch Metrics CloudWatch Logs CloudWatch Logs Insights AWSサービス お客様システム time-baseevent-base メトリクスを送信 ログを送信 メトリクスに応じた アクションの実行 ログの可視化 イベントに応じた ターゲットによる処理 CloudWatchの全体像 (before re:Invent 2019) CloudWatch Dashboards メトリクスを送信
  105. 105. CloudWatch Alarms Anomary Detection CloudWatch Events CloudWatch Metrics (Quota等の追加) CloudWatch Logs CloudWatch Logs Insights AWSサービス お客様システム [統合監視] CloudWatch Dashboards CrossRegion/CrossAccount Dashboards time-baseevent-base メトリクスを送信 ログを送信 メトリクスに応じた アクションの実行 ログの可視化 イベントに応じた ターゲットによる処理 CloudWatch Logs Embedded Metrics Format 構造化ログから メトリクスを生成 [個別サービス可視性の向上] Container Insights Contributor Insights Contributor Insights for DynamoDB [サービス間可視性の向上] ServiceLens (w/X-Ray) Application Insights [外形監視] Synthesis CloudWatchの全体像
  106. 106. Amazon CloudWatch ServiceLensを発表 • アプリケーションの健全性、パフォーマンス などを視覚化し分析を容易にするための機能 • CloudWatchメトリクスとログ、X-Rayからの トレース情報を結びつけてアプリとその依存 関係をビジュアライズする • メトリクスデータとトレースデータを可視化 することでシステム全体を俯瞰し問題箇所を 特定、原因を掘り下げることが容易に • 東京リージョンを含むX-Rayが利用可能なリー ジョンで利用可能。ServiceLens自体は無料だ がX-Rayのトレース費用が発生する
  107. 107. CloudWatch Syntheticsのプレビュー開始を発表 • アプリケーションの稼働状況をカナリヤトラ フィックを通じて外形監視するための新機能 • 継続的にテスト用のリクエストを送信し、ア プリケーションに問題がないことをチェック し続けることが可能 • REST API, URL, コンテンツ監視, XSSによる不 正な変更などをチェックできる • チェック毎に$0.0012の費用(バージニア) • バージニア、オハイオ、アイルランドのリー ジョンでプレビュー提供中 Amazon CloudWatch
  108. 108. Amazon CloudWatchアップデート • Embedded Metric Format • ログデータと一緒にメトリクス値を送信できるEmbedded Metric Formatが利用可能になった • コンテナやLambda関数など短時間しか存続しないリソースから のログ収集と共に、有意なカスタムメトリクスデータを採取する ことができる • サービス上限に対する利用率モニタリング • EC2/DynamoDB/Kinesis Data Firehose/KMS/CloudHSM/ CloudWatchについて、サービス上限(リソース数やAPIコール数) に対する実際の利用率を参照できる • 「上限の80%に到達したらアラームを発報し上限緩和申請の手続 きを開始する」といった使い方が可能 Amazon CloudWatch
  109. 109. AWS IAM Access Analyzerを発表 • リソースにアタッチされたアクセスコント ロールポリシーを数学的に分析。パブリック または他のアカウントからアクセス可能なリ ソースを特定する • アクセス許可状況を継続的に可視化するため、 意図しない外部からのアクセスからリソース を保護することが容易に • 検知内容はCloudWatch Eventsに連携できる • S3バケット、IAMロール、KMSキー、Lambda 関数、SQSキューが対象 • 無料で全てのリージョンで利用可能
  110. 110. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  111. 111. Analytics アップデート一覧 Amazon Athena Athena Federated Query User Defined Funtion 新しい4つのCloudWatch Metrics SQLによる機械学習モデルの呼び出し Apache Hive Metastoreへの接続 Amazon EMR Apache Hudi for Amazon EMR Amazon EMR on AWS Outposts Runtime for Apache Spark Amazon EMR 6.0(Beta 2)をリリース 複数ステップの並列実行とキャンセル Step Functionsとの統合 Amazon Kinesis Kinesis Data FirehoseでBYOKによるサーバサイド暗号化 AWS for Fluent BitがKinesis Data Streamsをサポート Kinesis Data AnalyticsのVPCアクセス Amazon Elasticsearch Service Elasticsearch Service UltraWarm AWS Glue 独自JDBCドライバ Glue 1.0でFindMatches ML Transform Amazon QuickSight APIサポート テーマと条件付き書式をサポート SageMakerモデルとの統合 QuickSight Mobileアプリケーション クロスデータソース結合に対応 ダッシュボードの操作性改善 SPICEデータセットの取り込み履歴参照 now()関数サポート Amazon Redshift Redshift RA3インスタンス Redshift Advanced QUery Accelerator (AQUA) Redshift Data Lake Export Redshift Federated Query マテリアライズドビューに対応 クロスインスタンスリストア テーブルソートキーの動的変更 自動テーブルソート Elastic Resizeのスケジュール実行 空間データの取り扱い マネジメントコンソールのアップデート
  112. 112. Analytics アップデート一覧 Amazon Elasticsearch Service Elasticsearch Service UltraWarm Amazon Athena Athena Federated Query User Defined Funtion 新しい4つのCloudWatch Metrics SQLによる機械学習モデルの呼び出し Apache Hive Metastoreへの接続 Amazon EMR Apache Hudi for Amazon EMR Amazon EMR on AWS Outposts Runtime for Apache Spark Amazon EMR 6.0(Beta 2)をリリース 複数ステップの並列実行とキャンセル Step Functionsとの統合 Amazon Kinesis Kinesis Data FirehoseでBYOKによるサーバサイド暗号化 AWS for Fluent BitがKinesis Data Streamsをサポート Kinesis Data AnalyticsのVPCアクセス AWS Glue 独自JDBCドライバ Glue 1.0でFindMatches ML Transform Amazon QuickSight APIサポート テーマと条件付き書式をサポート SageMakerモデルとの統合 QuickSight Mobileアプリケーション クロスデータソース結合に対応 ダッシュボードの操作性改善 SPICEデータセットの取り込み履歴参照 now()関数サポート Amazon Redshift Redshift RA3インスタンス Redshift Advanced QUery Accelerator (AQUA) Redshift Data Lake Export Redshift Federated Query マテリアライズドビューに対応 クロスインスタンスリストア テーブルソートキーの動的変更 自動テーブルソート Elastic Resizeのスケジュール実行 空間データの取り扱い マネジメントコンソールのアップデート
  113. 113. データ量の指数関数的な増加が、 管理、パフォーマンス、スケーリングを困難に 0 200 400 600 800 1000 1200 1990 2000 2010 2020 Enterprise Data Data in Warehouse データ増加量は? 処理能力とストレージのニーズは 独立しており多様である 処理能力のスケーリング: • ピーク時に増加するクエリ負荷をさばきたい • データを素早く取り込んでニアリアルタイムで クエリすることを可能にしたい ストレージのスケーリング: • クエリや監査用のデータを貯めたい • 処理能力の用途とは独立して、ストレージの料 金を安いレートで支払いたい Datasize
  114. 114. データ量の指数関数的な増加が、 管理、パフォーマンス、スケーリングを困難に 0 200 400 600 800 1000 1200 1990 2000 2010 2020 Enterprise Data Data in Warehouse データ増加量は? 処理能力とストレージのニーズは 独立しており多様である 処理能力のスケーリング: • ピーク時に増加するクエリ負荷をさばきたい • データを素早く取り込んでニアリアルタイムで クエリすることを可能にしたい ストレージのスケーリング: • クエリや監査用のデータを貯めたい • 処理能力の用途とは独立して、ストレージの料 金を安いレートで支払いたい Datasize コンピュート層とストレージ層の 分離💡
  115. 115. 第3世代Redshift コンピュートインスタンス: RA3 (1/2) 定常的に必要となる処理能力のみに 基づいてデータウェアハウスをスケール ストレージと処理能力を分けて支払い 自動化され、ワークフローを変えることも ストレージを管理する必要もない 広帯域ネットワークマネージドストレージ 高速キャッシュ JDBC/ODBC Redshift Managed Storage
  116. 116. RA3.16xl • コンピュートノード料金 • 料金: $15.347/ノード/時間 • リザーブドインスタンスで 60%以上ディスカウント • ストレージ料金 • 1ノードあたり最大64TBの マネージドストレージ • 料金: $0.0261/GB-月 Coming Soon—RA3.4xl • DS2.8XLと比較して2倍のパフォーマンスと 2倍のストレージ容量を同一価格で • 他のクラウドDWと比較して価格性能比で最 大3倍のパフォーマンス • 最小サイズ(2ノード構成)の RA3.16XL ク ラスタで 128TB (圧縮後) まで、必要性のみ に応じたサイズでスケール可能 • 最大(128ノード構成)のクラスタでは 8 PB (圧縮後) まで可能 第3世代Redshift コンピュートインスタンス: RA3 (2/2)
  117. 117. 今Redshift使っているけど、移行した方が良い? 10TB未満のデータ量
  118. 118. Redshift Spectrumとの違い・使い分け
  119. 119. Redshift がコストの増加なく他のクラウドデータウェアハウスより10倍速くなる AQUA はデータを移動させる必要がないようストレー ジレイヤーで処理をする S3の上にある高速キャッシュがスケールアウトし、多 数のノードでデータを並列処理する AWSがデザインしたプロセッサがデータの圧縮、暗号 化、データ処理を高速化する 現バージョンのRedshiftと100%の互換性 AQUA (Advanced Query Accelerator) for Amazon Redshift (1/2)
  120. 120. Compute Clusters Compute Clusters Compute Clusters Compute Clusters Redshift Cluster AQUA node AQUA node AQUA node AQUA node Amazon Redshift Managed Storage Compute Clusters Compute Clusters Compute Clusters Compute Clusters Redshift Cluster Compute Clusters Compute Clusters Compute Clusters Compute Clusters Redshift Cluster 新しい、分散かつハードウェアで高速化された処 理層 AQUAを使うことで、Amazon Redshift は追加コス トなしに他のクラウドデータウェアハウスより最 大10倍高速に AQUAノードはAWSがデザインしたカスタムアナ リティクスプロセッサを搭載し、オペレーション (圧縮、暗号化、フィルタリング、集約)を従来 のCPUよりも高速に処理 RA3ノードでプレビュー可能。コード変更不要。 AQUA (Advanced Query Accelerator) for Amazon Redshift (2/2)
  121. 121. Amazon S3 Active Backup Backup UltraWarm UltraWarm UltraWarm Data Node Data Node Data Node Data Node Kibana • 90%のコスト削減 • インタラクティブで統合されたログ分析 • Multi-PB スケール ログ分析用にクラウドに 最適化されたアーキテクチャ Amazon Elasticsearch Service : UltraWarm (1/3) • バージニア、オハイオ、オレゴンでプレ ビュー開始 • Version 6.8の検索ドメインで利用可能
  122. 122. ノード:パフォーマンスの最適化 最適化されたNitroインスタンスが広帯域のS3アクセスを提供 多くのパフォーマンスポイント: • キャッシュデータにヒットしたクエリはホット領域のように高速 • 多くの日にち/インデックスを含む未キャッシュデータに対する スキャンでもHDDベースのウォームインスタンスより最大2倍高速 • 少ない日にち/インデックスの未キャッシュデータへのクエリは秒単 位で実行完了 複数の層や粒度でのキャッシング、適応性のある先読み、 インタラクティブ性を提供するためのクエリエンジン最適化 ローカルキャッシュでもS3でも透過的にクエリを実行 Amazon Elasticsearch Service : UltraWarm (2/3)
  123. 123. ストレージ:コスト、スケール、耐久性を改善 Amazon Elasticsearch Service : UltraWarm (3/3) • S3にデータを保管 • Elasticsearchレベルでのレプリカやスナップショットを除去 • ストレージを使用した分だけのお支払い • これまでのI3ベースのAmazon Elasticsearch Serviceと 比較して、GB単価で最大90%のコスト削減 • 数ヶ月や数年単位で Elasticsearch/Kibanaでデータを アクセス可能な状態にし続けておくことが可能 通常のデータノードとは別にUltraWarm用のデータノードが必要。また、ストレージ容量について費用が発生。
  124. 124. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  125. 125. Database アップデート一覧 Amazon Managed Apache Cassandra Service Preview Available Amazon Aurora Aurora MySQL 5.7 で多数の新機能 Amazon Aurora Machine Learning Multiple Secondary Regions PostgreSQL 11 互換をサポート Amazon RDS RDS on Outposts Amazon RDS Proxy PostgreSQL手動スナップショットからのアップグレード Oracle Database 19c をサポート Oracle Cross-region Read Replicas Performance Insights: SQL-level Metrics Oracle: sqlnet.oraに設定可能なパラメータを追加 SQL Server: アウトバウンドネットワークアクセスをサポート SQL Server: ログファイルをAmazon CloudWatch Logsに発行 SQL Server: 差分バックアップ / トランザクションログからの復元を サポート SQL Server: Amazon S3との統合 PostgreSQL: PostgreSQL 12.0 Preview Amazon DynamoDB CloudWatch Contributor Insights for Amazon DynamoDB NoSQL Workbench for Amazon DynamoDB カスタマー管理CMKをサポート Isolate Frequently Accessed Items バックアップから復元時、テーブル設定の構成をサポート Amazon Neptune Amazon Neptune Workbench 全文検索機能
  126. 126. Database アップデート一覧 Amazon Managed Apache Cassandra Service Preview Available Amazon Aurora Aurora MySQL 5.7 で多数の新機能 Amazon Aurora Machine Learning Multiple Secondary Regions PostgreSQL 11 互換をサポート Amazon RDS RDS on Outposts Amazon RDS Proxy PostgreSQL手動スナップショットからのアップグレード Oracle Database 19c をサポート Oracle Cross-region Read Replicas Performance Insights: SQL-level Metrics Oracle: sqlnet.oraに設定可能なパラメータを追加 SQL Server: アウトバウンドネットワークアクセスをサポート SQL Server: ログファイルをAmazon CloudWatch Logsに発行 SQL Server: 差分バックアップ / トランザクションログからの復元を サポート SQL Server: Amazon S3との統合 PostgreSQL: PostgreSQL 12.0 Preview Amazon DynamoDB CloudWatch Contributor Insights for Amazon DynamoDB NoSQL Workbench for Amazon DynamoDB カスタマー管理CMKをサポート Isolate Frequently Accessed Items バックアップから復元時、テーブル設定の構成をサポート Amazon Neptune Amazon Neptune Workbench 全文検索機能
  127. 127. Amazon Managed Apache Cassandra Service (1/3) • 高スケーラビリティと高可用性を実現した マネージド型 Apache Cassandra 互換データベースサービス • 東京リージョンなどでプレビューを開始
  128. 128. Amazon Managed Apache Cassandra Service (2/3) Cassandraを自己管理するときの課題 • 構築および管理するために高度な専門知識が必要 • クラスターをスケールアップおよびスケールダウンが複雑 • ピーク負荷に対応したクラスターを構築する必要があり、 過剰なインフラストラクチャコストが必要 • 新しいバージョンにアップグレードするのが困難 • データのバックアップとリカバリーが複雑 • パッチ適用、アップデート、およびメンテナンスが必要
  129. 129. Amazon Managed Apache Cassandra Service (3/3) 主な特徴 • Apache Cassandra CQL API と互換性 • 既存のアプリケーションコードやツールをそのまま利用することが可能 • サーバー管理が不要 • プロビジョニング、パッチ適用などサーバー管理が不要。 ピーク時のワークロード計画が不要で、使用したリソース分だけの支払い • 高いスケーラビリティ • どんなスケールでも安定して一桁ミリ秒のレスポンス時間を実現。 大規模なスループットと容量を実現可能 • 高可用性とセキュリティ • デフォルトで暗号化されたテーブルを複数の Availability Zone に3重書き込み
  130. 130. Amazon Aurora: Machine Learning のサポート (1/3) 使い慣れたSQL Amazon Auroraから、Amazon SageMaker と Amazon Comprehend を SQL関数から呼び出すことが可能 幅広いMLアルゴリズム SageMakerでは幅広いモデルの選択が可能。 また、Comprehendを利用して トレーニングなしでセンチメント分析が可能 パフォーマンス AuroraとSageMaker, Comprehendは直接統合 されており、ネットワーク遅延を削減。ま た、MLレーニングと推論はSageMakerと Comprehend側で行われるため、Auroraの パフォーマンスへの影響がない
  131. 131. Amazon Aurora: Machine Learning のサポート (2/3) • Amazon SageMakerとの連携
  132. 132. Amazon Aurora: Machine Learning のサポート (3/3) • Amazon Comprehendとの連携 (Preview) “これはとても使いやすい。書いてくれてありがとう!”); “面白い書き込みだ。詳細の追加をお願いします。”); “すごい、この機能を待っていた。”); “こんな感じの作りは嫌い。”); ‘ja’ ‘ja’
  133. 133. Amazon Aurora MySQL 5.7 でパフォーマンスと 管理性を高める多数の機能をサポート • Amazon Aurora MySQL 5.7 で多数の機能をサポート • Amazon Aurora MySQL 5.6 との機能差異が縮まった • サポート機能 • AWS Lambda 同期呼び出し • Hot row contention • Backtrack • Hash Join (ラボモードではなく正式サポート) • Zero-Downtime Patching • Global Database 詳細: https://aws.amazon.com/jp/about-aws/whats-new/2019/11/amazon-aurora-mysql-57-expands-list-of-supported-features-to-improve-performance-and-manageability/ https://aws.amazon.com/jp/about-aws/whats-new/2019/11/amazon-aurora-mysql-5-7-now-supports-zero-downtime-patching/
  134. 134. Amazon CloudWatch Contributor Insights for Amazon DynamoDB • 最もアクセスされたkey、 スロットリングされたkeyを 可視化 • Hot keyの特定、修正が容易に
  135. 135. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  136. 136. Machine Learning 直近のアップデート Amazon SageMaker Family Amazon SageMaker Studio Amazon SageMaker Notebooks Amazon SageMaker Autopilot Amazon SageMaker Processing Amazon SageMaker Debugger Amazon SageMaker Experiments Amazon SageMaker Model Monitor Amazon Augmented AI New Services Amazon Kendra Amazon Fraud Detector Amazon CodeGuru Contact Lens for Amazon Connect Inf1 インスタンス AWS Inferentia Amazon Transcribe Medical AWS Neuron SDK Amazon Braket Amazon Quantum Solutions Lab New Features/Updates Multi-model Endpoint Amazon Rekognition Custom Labels Amazon SageMaker Operators for Kubernetes Deep Graph Library (DGL) on SageMaker AWS Step Functions Data Science SDK Amazon Athena で SQL クエリから ML 実行 Amazon Aurora Machine Learning DeepRacer Evo
  137. 137. Machine Learning 直近のアップデート Amazon SageMaker Family Amazon SageMaker Studio Amazon SageMaker Notebooks Amazon SageMaker Autopilot Amazon SageMaker Processing Amazon SageMaker Debugger Amazon SageMaker Experiments Amazon SageMaker Model Monitor Amazon Augmented AI New Services Amazon Kendra Amazon Fraud Detector Amazon CodeGuru Contact Lens for Amazon Connect Inf1 インスタンス AWS Inferentia Amazon Transcribe Medical AWS Neuron SDK Amazon Braket Amazon Quantum Solutions Lab New Features/Updates Multi-model Endpoint Amazon Rekognition Custom Labels Amazon SageMaker Operators for Kubernetes Deep Graph Library (DGL) on SageMaker AWS Step Functions Data Science SDK Amazon Athena で SQL クエリから ML 実行 Amazon Aurora Machine Learning DeepRacer Evo
  138. 138. VISION SPEECH TEXT SEARCH NEW CHATBOTS PERSONALIZATION FORECASTING FRAUD NEW DEVELOPMENT NEW CONTACT CENTERS NEW Amazon SageMaker Ground Truth Augmented AI SageMaker Neo Built-in algorithms SageMaker Notebooks NEW SageMaker Experiments NEW Model tuning SageMaker Debugger NEW SageMaker Autopilot NEW Model hosting SageMaker Model Monitor NEW Deep Learning AMIs & Containers GPUs & CPUs Elastic Inference Inferentia FPGA Amazon Polly Amazon Transcribe +Medical Amazon Comprehend +Medical Amazon Translate Amazon Lex Amazon Personalize Amazon Forecast Amazon Fraud Detector Amazon CodeGuru Amazon Textract Amazon Kendra Contact Lens For Amazon Connect SageMaker Studio IDE NEW AWS の ML スタック AI サービス: 機械学習の深い知識なしに利⽤可能 ML サービス: 機械学習のプロセス全体を効率化するマネージドサービス ML フレームワークとインフラストラクチャ: 機械学習の環境を自在に構築して利⽤ NEW NEW New Amazon Rekognitions +Custom labels NEW
  139. 139. これまでの Amazon SageMaker ラベリング 開発 学習 モデル変換・デプロイ これまでの開発・学習・デプロイの方式 を大きく変えることなく、機械学習プロセス全体を効率化できる • 開発・学習・デプロイのインフラ管理は不要 • 既存のコード・コンテナなどを持ち込んで学習・推論可能 • ラベリング・モデル変換などもサポート
  140. 140. これまでの SageMaker: お客様から多かったご要望 共同開発環境を提供してほしい • 前処理やアルゴリズム選択 を手軽に実行したい 分析・可視化・管理 学習過程を解析するデバッガーがない モデルの監視 人間の介入
  141. 141. Amazon SageMaker の Update 一覧 開発 Build 学習 Train デプロイ Deploy
  142. 142. Amazon SageMaker Studio https://aws.amazon.com/jp/blogs/news/amazon-sagemaker-studio-the-first-fully-integrated-development-environment-for-machine-learning/
  143. 143. NEW!
  144. 144. Amazon SageMaker Studio
  145. 145. Amazon SageMaker Notebooks • AWS SSO • 待ち時間なくワンクリック https://aws.amazon.com/about-aws/whats-new/2019/12/introducing-the-new-amazon-sagemaker-notebook-experience-now-in-preview/
  146. 146. Amazon SageMaker Autopilot https://aws.amazon.com/blogs/aws/amazon-sagemaker-autopilot-fully-managed-automatic-machine-learning/
  147. 147. Amazon SageMaker Autopilot Candidate Definition Notebook
  148. 148. Amazon SageMaker Autopilot Candidate Definition Notebook
  149. 149. Amazon SageMaker Processing https://aws.amazon.com/blogs/aws/amazon-sagemaker-processing-fully-managed-data-processing-and-model-evaluation/
  150. 150. Amazon SageMaker Debugger https://aws.amazon.com/jp/blogs/news/amazon-sagemaker-debugger-debug-your-machine-learning-models/ S3 Bucket
  151. 151. Amazon SageMaker Experiments https://aws.amazon.com/jp/blogs/news/amazon-sagemaker-experiments-organize-track-and-compare-your-machine-learning-trainings/ アルゴリズム パラメーター データセット など モデル、 チェックポイ ント、 メトリック
  152. 152. Amazon SageMaker Model Monitor https://aws.amazon.com/about-aws/whats-new/2019/12/introducing-amazon-sagemaker-model-monitor/
  153. 153. Amazon SageMaker Model Monitor
  154. 154. Amazon Augmented AI 入力データ 推論モデル Augmented AI 確信度が高い結果は修正なし 確信度が低い結果は人間に よる修正を行う アプリ ケーション https://aws.amazon.com/about-aws/whats-new/2019/12/announcing-amazon-augmented-ai/
  155. 155. Amazon SageMaker の Update 一覧
  156. 156. マルチモデルエンドポイント(MME)が利用可能に https://aws.amazon.com/blogs/machine-learning/save-on-inference-costs-by-using-amazon-sagemaker-multi-model- endpoints/ • 一つのエンドポイントの裏で複数のモデルを切り替えて 推論コストを削減 • 学習済みモデルは S3にストアしてエンドポイントを動的 に切り替え可能に
  157. 157. Amazon Kendra • 機械学習を利⽤した高精度な文書検索 • 自然文の質問に対応する回答の検索 • 関連文書をランキング表⽰ • コネクタを利⽤して様々なデータソース を取り込むことが可能 • 学習なしで、IT、金融、保険など、各業種 の文章に対応(追加学習も対応予定) • 対応言語: 米国英語のみ • リージョン: バージニア、オレゴン、アイ ルランド https://aws.amazon.com/kendra/
  158. 158. Amazon Kendra の特徴 自然言語によるクエリ キーワードクエリ 検索精度の継続的な向上
  159. 159. 既に Kendra が対応しているコネクタ …and more coming in 2020
  160. 160. 利用開始方法 Step 1 インデックスの作成 Kendra で検索できるように データソースのための index を作成する Step 2 データソースを保存 S3 などのデータソースから データを読み込み、index へ追 加する Step 3 テストとデプロイ データを同期した後、検 索コンソールからテスト を行い、その後 Kendra を 検索アプリへデプロイ
  161. 161. Amazon Fraud Detector • 機械学習による不正検知サービス • 学習なしで利⽤可能で、以下の既存テンプ レートから利⽤を開始できる • アカウント作成 • オンライン決済、など • Fraud Detector の予測結果に対して、ルー ルベースで最終的な不正検知が可能 • バージニアリージョンでPreview可能 https://aws.amazon.com/fraud-detector/
  162. 162. Amazon Fraud Detector でのモデル構築
  163. 163. Fraud Predictions の活⽤ Guest Checkout: Purchase IP: 1.23.123.123 email: joe@example.com Payment: Bank123 … Fraud Detector returns: Outcome: Approved ML Score: 160 Purchase Approved Call service with: IP: 1.23.123.123 email: joe@example.com Payment: Bank123 … AWS Cloud
  164. 164. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon CodeGuru
  165. 165. Amazon CodeGuru • コードレビューの自動化と性能改善のため のガイドを行う開発者向けのサービス • CodeGuru Reviewer スレッドセーフでないなどの様々な問題 を検出する • CodeGuru Profiler 本番環境で継続的に稼働し、アプリケー ションパフォーマンスの最適化を図る • リージョン: バージニア、オレゴン、オハ イオ、アイルランド、シドニー https://aws.amazon.com/codeguru/
  166. 166. 本番環境での容易な パフォーマンス監視と改善 CodeGuru Profiler 事前に高負荷な コードの 検出と最適化 組み込み code reviews による改善の推薦 CodeGuru Reviewer コードレビューとパフォーマンスの最適化
  167. 167. Amazon CodeGuru Reviewer の仕組み ユーザーからの Pull Request 入力: ソースコード try (GZip gzip = GZIPInputStream.create( url.openStream())) { use(gzip); } catch (Exception e) { handle(); } 意味的特徴や パターンの抽出 特徴の抽出 gzip = GZIPInputStream .create(stream) use(gzip) ENTRY EXIT stream = url.openStream() gzip.close() handle() throw Exception 機械学習とプログラムによる コード上の欠陥の検知 機械学習 Code corpus Pull Request への コメントとして 改善提案を確認 出力: 改善の提案
  168. 168. CodeGuru Reviewer Step 1: Repositoryの関連付け
  169. 169. CodeGuru Reviewer Step 2: Pull Request
  170. 170. CodeGuru Reviewer Step 3: Provide Feedback
  171. 171. Customer’s application Profiler thread Customer’s application Profiler thread Customer’s application Profiler thread Customer’s application Profiler thread Actionable recommendations CodeGuru Profiler の仕組み
  172. 172. Contact Lens for Amazon Connect • コンタクトセンターにおける業務を AI で効率 化するためのサービス • 通話やチャットのセンチメント分析 • 問い合わせ内容の自動分類 • 会話が途絶えている状況の自動検出、など • 分析のための UI を提供 • 対応言語: 米国英語 https://aws.amazon.com/connect/contact-lens/
  173. 173. Contact Lens for Amazon Connect コンタクトセンターにおける業務を AI で効率化 https://aws.amazon.com/jp/blogs/contact-center/announcing-contact-lens-for-amazon-connect-preview/
  174. 174. The Amazon Builders’ Library アーキテクチャ, ソフトウェアデリバリ, そして運用 Amazon の senior technical executives や engineers による 詳細な説明が付いた、実世界におけるプラクティス コンテンツはウェブサイト上で無償で公開
  175. 175. The Amazon Builders’ Library
  176. 176. Builder’s Library • Amazon.com、AWSのシステムの構築及び実行方法を説明する記事 のコレクション https://aws.amazon.com/builders-library • カテゴリ別に整理 • アーキテクチャ • Software Delivery & Operations
  177. 177. アーキテクチャカテゴリ • Avoiding insurmountable queue backlogs • Challenges with distributed systems • Static stability using availability zones • Avoiding fallback in distributed systems • Caching challenges and strategies • Leader election in distributed systems • Timeouts, retries and backoff with jitter • Workload isolation using shuffle-sharding • Going faster with continuous delivery • Ensuring rollback safety during deployments • Using load shedding to avoid overload • Implementing health checks
  178. 178. re:Invent 2019期間中に発表された主な新サービスと主要な機能アップデート 「12/1 発表の新機能一覧」 1. EC2 Image Builderを発表 2. AWS End-of-Support Migration Program for Windows Serverを 発表 3. AWS DeepComposerを発表 4. Amazon Transcribe Medicalを発表 5. AWS DeepRacerのアップデート 6. Amazon SageMaker Operators for Kubernetesを発表 7. AWS IoT SiteWiseで5つの新機能と価格体系の更新 8. Amazon EventBridge Schema Registryのプレビューを開始 9. AWS License ManagerがDedicated Hostに対応 10. AWS License Managerの自動化機能を強化 「12/2 発表の新機能一覧」 1. Amazon Braketを発表 2. AWS IAM Access Analyzerを発表 3. Access Analyzer for Amazon S3を発表 「12/4 発表の新機能一覧」 1. 新たに2つのコンピテンシーを発表 2. APN Grobal Startup Programを発表 3. APN Immersion Daysを発表 4. AWS Service Ready Programを発表 5. SCSK株式会社がプレミアパートナーに認定 6. Amazon ECSがWindowsのgMSAをサポート 7. EKSのARM搭載インスタンス対応のアップデート 8. Amazon API GatewayのHTTP APIを発表 9. Amazon Neptune Workbenchを提供開始 10. Amplify DataStoreを発表 11. Amplify iOSとAmplify Andoridを発表 12. Amazon Chime Meetings App for Slackが利⽤可能に 13. Amazon Builder’s Libraryを発表 「12/3 発表の新機能一覧①」 1. Graviton 2搭載インスタンス提供をプレアナウンス 2. Amazon EC2のInf1インスタンスを発表 3. AWS Compute Optimizerを発表 4. AWS Nitro Enclavesを発表 5. AWS Local Zonesを発表 6. AWS Outpostsが一般利⽤可能に 7. AWS Wavelengthを発表 8. AWS LambdaのProvisioned Concurrencyを発表 9. AWS Fargate for Amazon EKSを発表 10. AWS Fargate Spotを発表 11. Amazon ECS, EKS, AWS App MeshがOutpostsに対応 12. Amazon ECS Capacity Providersが利⽤可能に 13. Amazon ECSのCluster Auto Scalingが一般利⽤開始 14. Amazon S3 Access Pointsを発表 15. NitroベースのEC2インスタンスでEBS帯域が向上 16. EBS Direct APIsを発表 「12/3 発表の新機能一覧②」 17. Amazon RDS Proxyを発表 18. Amazon RDS on AWS Outpostsのプレビューを開始 19. Amazon EMR on AWS Outpostsが利⽤可能に 20. Amazon Redshiftのデータレイク連携機能を強化 21. Redshift RA3 InstanceとManaged Storageを発表 22. AQUA for Amazon Redshiftを発表 23. Amazon Elasticsearch ServiceのUltraWarmを発表 24. Amazon Managed Apache Cassandra Serviceを発表 25. Transit GatewayのMulticastとリージョン間接続 26. Transit Gateway Network Managerを発表 27. Amazon VPC Ingress Routingを発表 28. Accelerated Site-to-Site VPNを発表 29. Amazon SageMaker Studioを発表 30. Amazon SageMaker Model Monitorを発表 31. Amazon SageMaker Experimentsを発表 32. Amazon SageMaker Debuggerを発表 33. Amazon SageMaker Autopilotを発表 34. Amazon SageMakerのNotebookに関する改善 35. Amazon SageMakerにProcessing機能を追加 36. Deep Graph LibraryがSageMakerで利⽤可能に 37. AWS Deep Learning AMIをアップデート 38. Amazon Augmented AIを発表 39. Deep Java Libraryを発表 40. Rekognitionがカスタムラベルに対応 41. Amazon Kendraを発表 42. Amazon Fraud Detectorを発表 43. Amazon CodeGuruを発表 44. AWS Detectiveを発表 45. Contact Lens for Amazon Connectを発表 46. AWS Step Functions Express Workflowsを発表 47. Chimeが14のリージョンで会議をホスト可能に 48. AWS Security HubのIAM Access Analyzerとの統合
  179. 179. re:Invent 2019期間中に発表された主な新サービスと主要な機能アップデート 「12/1 発表の新機能一覧」 1. EC2 Image Builderを発表 2. AWS End-of-Support Migration Program for Windows Serverを 発表 3. AWS DeepComposerを発表 4. Amazon Transcribe Medicalを発表 5. AWS DeepRacerのアップデート 6. Amazon SageMaker Operators for Kubernetesを発表 7. AWS IoT SiteWiseで5つの新機能と価格体系の更新 8. Amazon EventBridge Schema Registryのプレビューを開始 9. AWS License ManagerがDedicated Hostに対応 10. AWS License Managerの自動化機能を強化 「12/2 発表の新機能一覧」 1. Amazon Braketを発表 2. AWS IAM Access Analyzerを発表 3. Access Analyzer for Amazon S3を発表 「12/4 発表の新機能一覧」 1. 新たに2つのコンピテンシーを発表 2. APN Grobal Startup Programを発表 3. APN Immersion Daysを発表 4. AWS Service Ready Programを発表 5. SCSK株式会社がプレミアパートナーに認定 6. Amazon ECSがWindowsのgMSAをサポート 7. EKSのARM搭載インスタンス対応のアップデート 8. Amazon API GatewayのHTTP APIを発表 9. Amazon Neptune Workbenchを提供開始 10. Amplify DataStoreを発表 11. Amplify iOSとAmplify Andoridを発表 12. Amazon Chime Meetings App for Slackが利⽤可能に 13. Amazon Builder’s Libraryを発表 「12/3 発表の新機能一覧①」 1. Graviton 2搭載インスタンス提供をプレアナウンス 2. Amazon EC2のInf1インスタンスを発表 3. AWS Compute Optimizerを発表 4. AWS Nitro Enclavesを発表 5. AWS Local Zonesを発表 6. AWS Outpostsが一般利⽤可能に 7. AWS Wavelengthを発表 8. AWS LambdaのProvisioned Concurrencyを発表 9. AWS Fargate for Amazon EKSを発表 10. AWS Fargate Spotを発表 11. Amazon ECS, EKS, AWS App MeshがOutpostsに対応 12. Amazon ECS Capacity Providersが利⽤可能に 13. Amazon ECSのCluster Auto Scalingが一般利⽤開始 14. Amazon S3 Access Pointsを発表 15. NitroベースのEC2インスタンスでEBS帯域が向上 16. EBS Direct APIsを発表 「12/3 発表の新機能一覧②」 17. Amazon RDS Proxyを発表 18. Amazon RDS on AWS Outpostsのプレビューを開始 19. Amazon EMR on AWS Outpostsが利⽤可能に 20. Amazon Redshiftのデータレイク連携機能を強化 21. Redshift RA3 InstanceとManaged Storageを発表 22. AQUA for Amazon Redshiftを発表 23. Amazon Elasticsearch ServiceのUltraWarmを発表 24. Amazon Managed Apache Cassandra Serviceを発表 25. Transit GatewayのMulticastとリージョン間接続 26. Transit Gateway Network Managerを発表 27. Amazon VPC Ingress Routingを発表 28. Accelerated Site-to-Site VPNを発表 29. Amazon SageMaker Studioを発表 30. Amazon SageMaker Model Monitorを発表 31. Amazon SageMaker Experimentsを発表 32. Amazon SageMaker Debuggerを発表 33. Amazon SageMaker Autopilotを発表 34. Amazon SageMakerのNotebookに関する改善 35. Amazon SageMakerにProcessing機能を追加 36. Deep Graph LibraryがSageMakerで利⽤可能に 37. AWS Deep Learning AMIをアップデート 38. Amazon Augmented AIを発表 39. Deep Java Libraryを発表 40. Rekognitionがカスタムラベルに対応 41. Amazon Kendraを発表 42. Amazon Fraud Detectorを発表 43. Amazon CodeGuruを発表 44. AWS Detectiveを発表 45. Contact Lens for Amazon Connectを発表 46. AWS Step Functions Express Workflowsを発表 47. Chimeが14のリージョンで会議をホスト可能に 48. AWS Security HubのIAM Access Analyzerとの統合
  180. 180. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  181. 181. Sessions in AWS re:Invent 2019 アーキテクチャ関連 ARC335 - Designing for failure: Architecting resilient systems on AWS (Snapchat) DAT319 - How Uber stores financial transactions in ledgers using Amazon DynamoDB SEC338 - How FINRA builds serverless data-masking pipelines across accounts ARC340 - Amazon.com automating machine learning deployments at scale ANT331 - AWS analytics enables fraud prevention for Sony’s PlayStation DAT359 - How Amazon.com migrated its applications from Oracle to AWS databases DAT220 - Real-world customer use cases with Amazon Neptune (NBC Universal) CON307 - Top 5 container and Kubernetes best practices (NewRelic) EUC404 - How Facebook deployed Amazon WorkSpaces globally
  182. 182. Designing for failure: Architecting resilient systems on AWS Snapchat • コミュニケーションアプリ • DAU 2.1億, スナップの投稿 35億/日 Snapchatがモノリスかつシングルリージョンで運用していたサービスを マイクロサービス化/マルチリージョン化 ARC335 システム概要と従来システムの課題 • モノリシックなサービス/ 単一リージョンでの運用 • コード変更時の影響範囲が大きかった • パフォーマンスと可用性に課題があった https://www.youtube.com/watch?v=BJVzwaTiOdk
  183. 183. ARC335 マイクロサービス化/マルチリージョン化を実施 • 各マイクロサービスの可用性をTier分け • 2リージョンで同一構成をデプロイ(Active-Active) • 99.95%の可用性を担保するよう設計 アーキテクチャ • アプリケーションレイヤーはEKS上にホスト • ユーザーは地理的に近いリージョンのAPIをコール • Writeリクエスト/強い整合性を必要とするリクエス トは、強制的にPrimary Regionにルーティング • Primary Regionに書き込まれたデータはDynamo DB Streamを使用して、Secondary Regionの ElastiCache, DynamoDB, その他サービスにレプリ ケーション • 今後DynamoDB Global Tablesを採用しすべてのリー ジョンでWriteできるようにする予定 Designing for failure: Architecting resilient systems on AWS
  184. 184. DAT319 Uberにおけるアカウント間の支払いトランザクション管理 • 1500万/day以上のライドシェアによる移動 • アカウント間でお金のやりとりが行われる • 1つの台帳に時系列に管理していきたい 課題 • トランザクションを元に様々な形式のレポートが必要 • 多段なデータ処理ではバグが混入しやすい • 数値の妥当性の検証が難しい Uber’s ledger Storeの要件 • 強い整合性のある書き込みと時系列インデックス • 検証可能、変更不可能なレコード • オンラインとオフライン両方のワークロードへの対応 Uber社が決済トランザクションデータベースにDynamoDBを利用 How Uber stores financial transactions in ledgers using Amazon DynamoDB https://www.youtube.com/watch?v=iN6mhI5hFt4
  185. 185. DAT319 強い整合性の書き込みは2つのテーブルを使って実現 1. IndexテーブルにIntent(書き込み中)フラグをつけてレコードを追加 2. RecordテーブルにPrimary Keyとしてレコードのキーを利用して、DynamoDBの条件式付き書 き込みを利用してアトミックに書き込み 3. Recordテーブルに書き込みに成功した場合、IndexテーブルのレコードのIntentフラグをNoに 更新 How Uber stores financial transactions in ledgers using Amazon DynamoDB
  186. 186. DAT319 レポーティング用途では時間軸でレンジクエリするため2段階インデクシングを利用 • 時間をパーティションキーにした場合、書き込み時1つのシャードにアクセスが集中してしまう • BufferテーブルとLongTermテーブルの2段階に分割し、書き込み時は日別のBufferテーブルへ シャード分散書き込み • バッチ処理でSparkをつかってリシャードを行い、時系列にインデックスされたLongTermテーブ ルへレコードを移動させる • テーブルの作成、レプリケーションの設定、Provisinedキャパシティの設定、LongTermテーブル へ移すためのテーブルライフサイクル管理も実装 How Uber stores financial transactions in ledgers using Amazon DynamoDB
  187. 187. DAT319 データの完全性の担保 • マニフェストによる検証可能なデータストア • 固定時間幅に含まれるレコードの数と checksumのdigestをManifestとして記録 • DDB Streamを利用しManifestを生成 • 3 Way verification • RecordテーブルとIndexテーブルの検証 • 作成されたManifestとTime Indexを比較検証 • リージョン間のManifestの比較検証 • データは検証されるまで有効ではない • 複数のシステムを組み合わせたシステム • バグの混入する可能性はどこにでもありえる How Uber stores financial transactions in ledgers using Amazon DynamoDB
  188. 188. How FINRA builds serverless data-masking pipelines across accounts SEC338 https://www.youtube.com/watch?v=EI9TrCbK1p0 FINRA社のBigData規模 • 1550億/日のトランザクション • 50,000computeノード、30PBストレージ • 150種類のアプリケーション データ利用の課題 • 複数のシステムでデータをコピー・マスキングして利用 • 機密データを扱うためコンプライアンス準拠が必要 • データの取得は、チケットベースでの申請フロー + 手動 スクリプト実施のため、全体プロセスに数日を要す • データ量やデータコピーを実施するチームに依存するの でスケールができない 機密データマスキングのコンプライアンス準拠、可観測性、自動化を実現
  189. 189. How FINRA builds serverless data-masking pipelines across accounts SEC338 アーキテクチャ • Step Functions + Lambdaでデータの コピー・マスキング処理のプロセス を自動化 • IAMベースでの認証 • Security Groupで本番データアクセス できる権限を限定 • CloudWatchでパイプライン実行状況 をモニタリング • データ容量次第で実行時間が長くな る難読化処理はECS+Fargateで実施 • 事前にセキュリティチームに承認さ れたスクリプトがコンテナイメージ として提供されており、利用者は データの重要度に応じてイメージを 選択して実行
  190. 190. How FINRA builds serverless data-masking pipelines across accounts SEC338 移行結果のメトリクス、効果 • データコピーの件数が数ヶ月の間に200以上 増加 • 最大のデータコピー容量は1500GB • 所要時間は数日→数時間に短縮 • 以前に比べてスケールすることが可能 • 一時的なリソース利用のためコスト最適化 • サーバレスアーキテクチャによる運用コスト の低減 • 監査可能性、追跡可能性、集中管理 • 「Maskopy」というOSSで公開 https://finraos.github.io/maskopy/
  191. 191. ARC340 Amazon,comの機械学習ワークフロー • データの収集 • 特徴量エンジニアリング • モデルの開発/学習/本番環境へのデプロイ • モデルのモニタリング • 必要に応じた再学習 Amazon.comの決済基盤で、機械学習のためのCI/CDパイプライン生成を自動化 Amazon.com automating machine learning deployments at scale https://www.youtube.com/watch?v=_mfTG63sAF0 機械学習のワークフローにおける課題 • 手作業が多く効率が悪い • 本番環境に安全にモデルをデプロイしづらい • バージョニングや監査の仕組みがない
  192. 192. ARC340 • 機械学習ワークフロー生成を自動化するためのCloudFormationテンプレートを作成 • Code系サービスでデプロイパイプラインを構築 • 学習や推論にはSageMakerを、学習推論パイプライン管理にはStep Functionsを利用 • Lambdaでモデルのパフォーマンスを監視し、自動で再学習や再デプロイが走る仕組みを構築 Amazon.com automating machine learning deployments at scale
  193. 193. AWS analytics enables fraud prevention for Sony’s PlayStation トランザクション時の不正をリアルタイムに検知する Event Verification for Enterprise (EVE) を構築 • 購入: 高い承認トランザクション率・低いチャージバック率 • ログイン: ユーザーとネットワークを悪意のある行為から保護 Why AWS? • 社内コアシステムの AWS への移行時期と EVE 構築プロジェクトの時期が一致 • マネージドサービスへの投資により インフラ管理よりもビジネスに集中 https://www.youtube.com/watch?v=DRDiIVjX-vo Sony Interactive Entertainment社がPlayStation Network におけるリアルタイム不正 検知・分析システムをAWSのAnalyticsサービスを利用して実現 ANT331
  194. 194. AWS analytics enables fraud prevention for Sony’s PlayStation EVE で求められたシステム要件 • 処理速度:可能な限りユーザがプラットフォームと高速に 連携できること • 拡張性:トラフィックの変化や新しいイベントが追加され てもシステムを成長できること • レジリエンシー:人間や機械のエラーにも耐えられること ANT331
  195. 195. AWS analytics enables fraud prevention for Sony’s PlayStation Technical Challenge 1:読み込み速度の最適化 • リアルタイムに発生するRawデータを日、時、分のインターバルでアグリゲートし DynamoDBに格納することで、DynamoDBのスループットを最適化 スキーマデザイン • Hash Keyにはアグリゲートした項目種別とインターバルを指定 • Sort Keyにはインターバル時間を指定 例:accountid_123XYZ_hour | 2019-11-02 21 ip_192.168.0.0_minute | 2019-11-02 21.05 ANT331 あるユーザーがここ1ヶ月で何回購買をしたか、という クエリを実行したい場合もスピードビュー/バッチビュー 合わせてもせいぜい60クエリを実行すれば取得できる
  196. 196. AWS analytics enables fraud prevention for Sony’s PlayStation Technical Challenge 2:データサイズの最適化 • 数百万/日のトランザクションデータを長期間のインターバルでアグリゲーションすると単一アイ テムのデータセットが大きくなる(DynamoDBの制限を超える) • HyperLogLog+というハッシュアルゴリズムを利用して、アグリゲート後のデータを近似値で表現 • 高パフォーマンス • 1%程度の誤差 • 一番大きいデータをセットでも20KB以下に ANT331
  197. 197. AWS analytics enables fraud prevention for Sony’s PlayStation EVE 導入後の改善結果 • 購入処理 • 承認率が 3% 以上改善(月間で見ると相当な売上改善) • レスポンスが ~2 秒から ~195 ミリ秒に改善 • 誤検知の数は70%前後から40%以下に大幅に減少 • ログイン(8月に EVE を導入) • 不審な動きがあったことをプロアクティブに警告可能に • メールでの警告では潜在的に15,000 人のユーザーを不 正利用から保護 • 不正があったユーザーを強制的に2要素認証にすること でさらに不正利用を減らしている ANT331
  198. 198. DAT359 マイグレーションの背景 • 市場とデータ量の拡大に伴う負荷対策 • 2019年のPrime dayには18カ国で1.75億もの注文が • あるチームはPrime Day対策に60週を費やしていた • Prime VideoやAlexaなどのサービスはレイテンシーも重要 • 75PBを超えるデータは指数関数的に増加 • ハード・ソフト両面のコスト • ライセンス管理やベンダーとの交渉が困難 • レガシーコード/アーキテクチャによる可用性低下 • 数百人単位でシステムのスケールアップ/ダウンを実行 • データの一貫性や可用性は100%保証する必要があった • ハードウェア管理に伴うオペレーションコスト Amazon.comがOracleからDynamoDB, Aurora, Redshiftへの移行を完了 How Amazon.com migrated its applications from Oracle to AWS databases https://www.youtube.com/watch?v=vPF9l9OmiXE
  199. 199. DAT359 マイグレーション戦略 1. KPIとメトリクスの可視化 • Oracleの現存数、新規追加数、完了数、所有者 • SQLトラッカーを組込み、すべてのクエリを中央に集約して分析 2. 経営陣によるサポートを促進 • VPがマイグレーションのKPIを持つ • ダッシュボードで進捗と追跡 3. FUD(Fear Uncertainty Doubt)と技術的問題への対処 • Oracle DBAにマイグレーション後のキャリアパスを提供する 4. Force multipliersの創出 • 積極的な事例共有やトレーニングを通してイネーブラーを養成 5. AWSチームとの協働 How Amazon.com migrated its applications from Oracle to AWS databases
  200. 200. DAT359 マイグレーションの成果 • 約7500のOracle DatabaseをDynamoDBとAuroraに移行 • 303以上のビジネスクリティカルなサービスを DynamoDBに • 40%-90%のコスト削減 • 2~4倍の負荷で40%のパフォーマンス向上 • プライムデーなどの大規模イベントの負荷対策コスト が減少 Amazon.comのその他AWS利用事例 https://pages.awscloud.com/AWS-Innovators-Amazon.html How Amazon.com migrated its applications from Oracle to AWS databases
  201. 201. DAT220 Real-world customer use cases with Amazon Neptune NBC Universal : ユーザの動画視聴データを Neptune に移管 NBC Universal • USの3大放送系列であるNBCを含むメディ ア・エンターテイメントグループ • 映画会社ユニバーサル・スタジオも傘下 システム概要と従来システムの課題 • アプリ利用ユーザの動画視聴データをNoSQL で管理、複雑なアクセスパターンが存在 • パーソナライズされたデータであるため キャッシュが非効果的 • システムの運用負担が増大 • スケールアップ・ダウンの運用コストが高い ため、過剰プロビジョニングでの運用 https://www.youtube.com/watch?v=6dHiJSMdbjc 移行先DBとしてNeptuneを採用 • GraphDBが適切なツールであると判断 • 移行は従来システムと並行運用しつつ、 バックエンドをNeptuneに段階的に移管
  202. 202. Real-world customer use cases with Amazon Neptune 得られた効果 • システム全体で約6倍の速度向上 • 安定性の向上 • スケールアップ・ダウンが容易に • 〜40%のコストダウン • データ活用の幅が広がった DAT220 段階移管中のシステムパフォーマンス Neptuneへの移行が進むにしたがって、平均レスポンスタ イムが改善 (約230ms → 約40ms)
  203. 203. DAT220 Real-world customer use cases with Amazon Neptune Uber ATG : 自動運転向け地図データのバージョン管理システムで Neptune を採用 自動運転用の地図データの バージョン情報管理にNeptuneを採用 • 地図データは自動運転向けに頻繁に情報が 更新されると共に、地図のバージョンに複 数の分岐が発生 • 地図データ本体は巨大なためS3に保存、更 新は差分情報のみがS3に保存される(容量 は1PBを超える) • この地図データ群のバージョン情報の管理 にNeptuneが採用されている • 平均0.1秒以下のデータ編集・平均0.01秒以 下のバージョン作成が可能に Neptuneの採用理由 • バージョニングモデルがグラフ構造に置き 換えやすかった • 書き込み読み込み共にスケールしやすい • マネージドサービス
  204. 204. Top 5 container and Kubernetes best practices NewRelic社がKubernetesを使う上で安定した環境を維持するための5つの ベストプラクティスを紹介 https://www.youtube.com/watch?v=bG9NrjznH3U 1. コンテナイメージを小さく Why? • Build 時間の短縮、セキュリティリスクの最小化 • 少ないストレージ容量、イメージ Pull が高速 How? • アプリケーションに必要なものを特定 • 不要なリソースは排除(パッケージ、ファイル) • 最適な base image を選択(alpine etc) • Build Cache を活用できるようDockerFileの記述順序に留意 CON307
  205. 205. Top 5 container and Kubernetes best practices 2. Namespace を活用 Why? • 管理とセキュリティの向上 • パフォーマンスの向上 • 問題が起こった際の特定速度の向上 How? • 管理するチームの変更、規模の拡大に備えて NamespaceはA,B,Cという連番は避ける • Newrelicを利用する場合、 YOUR_CLUSTER_NAMEをNamespaceに指定 CON307 3. Health Check を設定 Why? • トラブルシューティングと問題解決が早くなる • クラスターで起こっている全てのイベントを監視 • スケーリングイベントなど特定のイベントをトラック How? • K8sのヘルスチェック機能を利用 • Readiness probe, Liveness probe • initialDelaySecondsの変更を忘れないように • ネットワークトラブルの監視には外形監視を併用
  206. 206. Top 5 container and Kubernetes best practices https://www.youtube.com/watch?v=bG9NrjznH3U 4.リソースの requests と limits を利用 Why? • リソースリミットは不安定や終了を引き起こす • Pod が CPU 不足 = スロットル、Memory 不足 = 終了 • 必要量が確保できないとそもそもPending How? • 設定ファイルで limits と requests を指定 • Kubectl describe nodes で requests と limit をリ ストで確認 CON307 5.ログにより問題のコンテキストを理解 Why? • 環境のふるまいに関するコンテキストをより提供 • 問題発生時のトラブルシューティングを高速に How? • Newrelicを利用する場合、log output pluginを利用
  207. 207. How Facebook deployed Amazon WorkSpaces globally Facebookが直面した課題 • ブラウザベースの24x365オペレーションを世界中のサードパーティにアウトソースしている • Facebookのコンプライアンスに準拠したデスクトップの提供が必要 • スケーラビリティの十分な確保から、複数リージョンを用いた冗長化までを担保したい Workspacesによる解決 • Facebook-Managed VDIを各パートナーに提供 • 各サイトで同一の作業環境の提供を可能にした • FacebookのデータにはWorkspacesからのみ可能 • AWSのリージョンは世界中にある=VDI環境も世界中にあるということ Facebook社3rdパーティベンダーにWorkspaces環境を提供し、セキュアなブラウザ オペレーション環境を実現 EUC404 https://www.youtube.com/watch?v=wYOHMQoYWIA
  208. 208. How Facebook deployed Amazon WorkSpaces globally EUC404 セキュリティ • Teradici PCoIPを使用したZero Clientを使用する ことでセキュリティを高めた • Sophos UTM導入 冗長性/可用性 • Route 53のフェイルオーバーすることでマルチ リージョンでの可用性を実現 • Teradici Connection Manager for AWS • ベンダー毎にVPCを分けBlast Radiusを最小化 ADコネクション • Transit GatewayでFacebookのDCと各リージョ ンのVPCとを接続し高可用なAD接続を実現
  209. 209. AWS re:Invent2019 • AWS世界最大の「学習型」カンファ レンス • 65,000+の参加者 • 日本からも1,800+の参加 • 3,000+のセッション • パートナー展示ブースや各種ハンズ オン、認定試験など • ネットワーキングパーティーなど各 種のイベントも 217
  210. 210. © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  211. 211. Thank you! © 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

×