Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Keyspaces 基礎
Search
2t3
August 13, 2021
Technology
0
380
Amazon Keyspaces 基礎
Cassandra Meetup in Tokyo, Summer 2021で発表したAmazon Keyspacesに関する資料です。
2t3
August 13, 2021
Tweet
Share
Other Decks in Technology
See All in Technology
AWS CDK 開発を成功に導くトラブルシューティングガイド
wandora58
3
140
「クラウドコスト絶対削減」を支える技術—FinOpsを超えた徹底的なクラウドコスト削減の実践論
delta_tech
4
180
LLM時代の検索
shibuiwilliam
2
620
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
4
710
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
600
ゼロからはじめる採用広報
yutadayo
3
1k
衛星運用をソフトウェアエンジニアに依頼したときにできあがるもの
sankichi92
1
210
VS CodeとGitHub Copilotで爆速開発!アップデートの波に乗るおさらい会 / Rapid Development with VS Code and GitHub Copilot: Catch the Latest Wave
yamachu
2
300
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
290
Lakebaseを使ったAIエージェントを実装してみる
kameitomohiro
0
170
Contributing to Rails? Start with the Gems You Already Use
yahonda
2
120
Amplify Gen2から知るAWS CDK Toolkit Libraryの使い方/How to use the AWS CDK Toolkit Library as known from Amplify Gen2
fossamagna
0
150
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Facilitating Awesome Meetings
lara
54
6.5k
Why Our Code Smells
bkeepers
PRO
336
57k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
How GitHub (no longer) Works
holman
314
140k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Balancing Empowerment & Direction
lara
1
440
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
A better future with KSS
kneath
238
17k
Code Review Best Practice
trishagee
69
19k
Transcript
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Amazon Keyspaces (for Apache Cassandra) Tsutsumi, Hayato Solutions Architect, AWSJ スケーラブルで可用性の高い Apache Cassandra 互換の マネージドデータベースサービス
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 自己紹介 堤 勇人 (Tsutsumi, Hayato) @2t3 Amazon Web Service Japan ソリューションアーキテクト 前職はERPベンダーの開発者で Cassandraを使ってシステムを作っていた 好きなAWSのサービス:DynamoDB、Keyspaces 趣味:スキー、街歩き、ゲーム
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Apache Cassandra • オープンソースのワイドカラムデータストア • 高速読み取り/書き込みのパフォーマンスを必要と する大規模なアプリケーション向けに設計 • SQLライクな、 Cassandra Query Language (CQL) API • 一般的なユースケース: – ユーザープロファイル – デバイスメタデータ – イベントロギング
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. • ソフトウェアの導入、構成、管理に必要な専門知識 • クラスターをスケールダウンしてリソースを最適化する複雑さ • バージョンアップグレードの難しさ • 同時性の確保が難しいバックアップ/復元 • ビルトイン暗号化によるデータ保護 • クラスタインフラストラクチャのパッチ適用、更新、保守 Cassandraの管理に関する難しさ
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 「Cassandra のワーク ロードをより簡単に」
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Amazon Keyspaces — スケーラブルで可用性が高く、フルマ ネージドな Apache Cassandra互換のデータベースサービス Apache Cassandraとの互換性 サーバーレス 大規模でも一貫したパフォーマンス 高可用性とセキュリティ
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 既存の Cassandra Query Language (CQL) コードを利用可能 • キースペースとテーブルの作成、更新、削除 • データの読み取りと書き込み • ほとんどのオープンソースの Cassandra ドライバおよびツールとの互換性 • サポートされているCQL APIのリストは、キースペースのドキュメントにあります。 Amazon Keyspacesは 3.11.2 の 9-node clusterに見えます • 3.11.2 と互換性があるドライバとクライアントで接続 • 3.11.2 と同様の下位互換性を提供 • Java、Node.js、Python、Go、.NET、および Perlの各 Cassandra ドライバで 利用可能なステップバイステップのセットアップ手順とコードサンプル Apache Cassandraとの互換性
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. サーバーのプロビジョニング、 パッチ適用、管理不要 サーバーレス ソフトウェアのインストール、 保守、運用不要
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. • サーバーレス — 管理ノードや低レ ベルのクラスター運用が不要 • CompactionやTombstonesなし • Java 仮想マシンの設定やガベージ コレクションのチューニングなし • キースペースとテーブルの管理の み サーバー管理不要 Cluster Node JVM Storage Keyspaces Tables
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 読み取り/書き込みキャパシティーオプション On-demand capacity 実際の読み取りと書き込み分のみの 支払い Provisioned capacity with auto scaling スループット容量を事前に設定して 価格を最適化
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. • 大規模でパフォーマンスに敏感なワークロードをサポート • あらゆる規模での安定した一桁ミリ秒の 読み取り/書き込みのパフォーマンス • テーブルは実際のアプリケーショントラフィックに従って 自動的にスケールアップおよびスケールダウン • テーブルやパーティションのサイズに事実上制限なし 大規模なワークロードでのパフォーマンス
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 高可用性とセキュリティ レプリカ数 3 で、複数の AWS アベイラビリティーゾーン にデータを自動的にレプリケート シングル AWS リージョン内での 99.99% の可用性 SLA Amazon CloudWatch を使用してパフォーマンスをモ ニタリング
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Keyspaces CloudWatch metrics • プロビジョンされたキャパシティ • 消費されたキャパシティ • キャパシティ使用率 • リクエストレイテンシ • ユーザーエラー • 失敗したlightweight transactions • システムエラー パフォーマンスと可用性のモニタリング
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. • AWS Key Management Service (AWS KMS)に保存されている暗 号化キーを使用して、保存時にデータを暗号化 • TLS を使用したクライアントからのセキュアな接続 • AWS Identity and Access Management (IAM)を使用して、個々の キースペースとテーブルへのアクセスを管理 • AWS PrivateLink を介して Amazon Virtual Private Cloud (Amazon VPC) のリソースに Keyspaces を接続 • 管理用データ定義言語 (DDL) アクションは AWS CloudTrail に記 録 組み込みセキュリティ
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 高度なセキュリティ規格に対応
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 偶発的な削除と更新からの保護に役立ちます テーブルデータは継続的にバックアップされます テーブルデータは過去 35 日間で任意の時刻(秒) に 復元可能です テーブルの可用性やパフォーマンスに 影響を与えません ポイントインタイムリカバリ (PITR)
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Amazon Keyspacesをどこから始めるべきか 既存のアプリケー ションの移行とモダ ナイズ 運用コストの削減 マイグレーション リソースを迅速にデ プロイする 自由にリソースを スケールアップ 新しいアプリケー ション 開発者は新しいアイ デアを考え実験でき る テスト/開発ワーク ロード 研究開発
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Q&A
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved.
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Appendix: アーキテクチャ
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 可用性が高く、非常にスケーラブルなアーキテクチャ Availability Zone 1 KS KS KS KS KS KS KS KS KS KS Availability Zone 3 KS KS KS KS KS KS KS KS KS KS Availability Zone 2 KS KS KS KS KS KS KS KS KS KS 接続 コンピューティング ストレージ
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Appendix: 互換性
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 互換性の違い • 非推奨である Apache Thrift API はサポートされていません • Control plane API は不要です (フルマネージドサービス) • いくつかの実験的な機能および、既知のスケーラビリティの問題があ る機能はサポートされていません • Materialized viewsとglobal secondary indexes • Change data capture • アグリゲータとユーザー定義関数
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Appendix: キャパシティ管理
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. オンデマンドキャパシティモード 実際に実行された読み取りと書き込 みに基づく料金 ワークロードトラフィックの変化に ほぼ瞬時に対応 ピーク容量は30分ごとに倍増可能 可用性を重視するモード
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Maximum throughput ピーク容量は30分ごとに倍増可能 Request rate
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. Application Auto Scalingに基づいて構築 最小および最大のスループット設定とターゲッ ト使用率を指定します。 CloudWatch メトリクスを監視して、読み取りお よび書き込みトラフィックの変化を検出します。 Keyspaces がトラフィックの持続的な増加を検出 すると、数分以内に反応します。 可用性を確保するために徐々にスケールダウン Auto Scaling を使用したプロビジョンドキャパシティ
© 2021, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. © 2021, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Auto scaling On-demand capacity • 新規または非常にスパイキーなワー クロード • 自動化された容量管理 • 容量はこれまでのピーク負荷に、ほ ぼ瞬時にスケールアップ可能 • ピーク容量は30分毎に倍増可能 • 予測可能なトラフィックを持つワー クロード • 最小および最大のスループットと目 標使用率を定義 • 目標使用率を維持するために容量を 自動的に調整 • バーストキャパシティを使用して短 いトラフィックバーストに対応