AWSにおけるデータベース・サービスの活用

Similar documents
データベースの近代化:シンプルなクロスプラットフォーム、最小のダウンタイムで実現するクラウド移行

10年オンプレで運用したmixiをAWSに移行した10の理由

Enterprise Cloud + 紹介資料

TC-01 ビッグデータだけじゃない! Amazon DynamoDB の活用事例 Cassandra から DynamoDB への移行で見えたその特徴 サイバーエリアリサーチ株式会社中西健

使ってみよう!データベースとストレージ ~ Getting Started with AWS Database and Storage Services ~

AWS およびパートナーサービスを使った、データの集約および活用設計パターン

【Cosminexus V9】クラウドサービスプラットフォーム Cosminexus

データセンターの効率的な資源活用のためのデータ収集・照会システムの設計

AWS Deck Template

SIOS Protection Suite for Linux v9.3.2 AWS Direct Connect 接続クイックスタートガイド 2019 年 4 月

AWS の NoSQL 入門 〜Amazon ElastiCache, Amazon DynamoDB〜

アジェンダ はクラウド上でも十分使えます 1. の概要 とは の導入事例 で利用される構成 2. をクラウドで使う クラウドサービスの分類 Amazon Web Services による構成例 2

PowerPoint Presentation

製品概要

PostgreSQL による クラスタ構成の可能性 SRA OSS, Inc. 日本支社 取締役支社長 石井達夫

AWS Simple Monthly Calculator (簡易見積ツール) 使い方説明

Oracle Real Application Clusters 10g: 第4世代

ネットアップクラウドデータサービス

Amazon RDS 入門

はじめてみよう AWS ~これだけでわかる、できる、AWS のコアサービスを活用した基本のシステム構成~

クラウド開発者のためのCloud Design Pattern 入門

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

V8_教育テキスト.dot

PowerPoint プレゼンテーション

PowerPoint Presentation

PowerPoint プレゼンテーション

スライド 1

PHP 開発ツール Zend Studio PHP アフ リケーションサーハ ー Zend Server OSC Tokyo/Spring /02/28 株式会社イグアスソリューション事業部

vdi_service_details

利用約款別紙 SkyCDP for AWS 基本サービス仕様書 この仕様書は SkyCDP for AWS の基本サービスに関する内容 方法について記述したものです 尚 SkyCDP for AWS オプションサービスをご利用のお客様は各 SkyCDP for AWS オプションサービスのご契約内容

新製品 Arcserve Backup r17.5 のご紹介 (SP1 対応版 ) Arcserve Japan Rev. 1.4

そこが知りたい!AWSクラウドのセキュリティ

~ アドレス収集くん ~ セキュリティ対策御説明資料

AWSストレージ関連サービスの正しい理解と使い方講座

目次 概要 S/4HANAの導入方式 NECがご提供するサービス S/4HANA 導入ロードマップ策定支援サービス

Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ

使える! IBM Systems Director Navigator for i の新機能

PowerPoint_template_v1.3.pptx / パワーポイントテンプレート

PowerPoint プレゼンテーション

PowerPoint Presentation

AWSアンチパターン祭り

タイトルを1~2行で入力 (長文の場合はフォントサイズを縮小)

2015 年 4 月 6 日 Biz ホスティング Enterprise Cloud における Oracle Database Enterprise Edition RAC の提供開始について ~Oracle Database Enterprise Edition RAC をクラウド基盤で利用可能と

PowerPoint Presentation

Insert VERITAS™ FAQ Title Here

ナビタイムサービスにおける、Amazon ECS を活用したシステム移行 ~『乗換NAVITIME』での移行事例 ~

PowerPoint Presentation

Microsoft Word - AWSBlueprint final.docx

スライド 1

CLUSTERPROXSingleServerSafe SingleServerSafe ご紹介 2007 年 10 月

Oracle SQL Developerの移行機能を使用したOracle Databaseへの移行

Microsoft PowerPoint - AWS-RatesSystem-JP_ pptx

サーバレスアーキテクチャで実現した M-1 グランプリ敗者復活戦投票システム

Oracle Cloud Adapter for Oracle RightNow Cloud Service

AWSアンチパターン祭り

PowerPoint Presentation

PowerPoint Presentation

InfiniDB最小推奨仕様ガイド

Transcription:

AWS における データベース サービスの活用 アマゾンデータサービスジャパン株式会社 八木橋徹平

自己紹介

セッションの目的 AWS 上の様々なデータベース サービスの概要と使い分を事例を交えてご紹介し システム構築時における活用方法をご理解いただく

アジェンダ データベース サービスの概要 AWS のデータベース サービス Amazon RDS Amazon Redshift Amazon ElastiCache Amazon DynamoDB Databases on EC2 まとめ

データベースの分類 多種 多用なデータベース製品 RDBMS Key-Value Document Graph 最適なデータベースを 選択されていますか? Many more

データベース選定の要因 技術要件 ボリューム 秒間あたりのトランザクション数 レイテンシ クエリー キー アクセス 構造化 or 半構造化 鮮度 揮発性 ACID 属性 バックアップ レプリケーション 高可用性 (HA) 管理 監視ツール 解析ツールとの連携 ビジネス要件 初期費用 メンテナンス コスト 移行コスト 社内標準 ( 政治 ) 過去の実績 技術者の熟練度 ( 社内 社外 )

SQL vs. NoSQL 日本では SQL 対応のデータベースが多用されている テーブル構造に対するSQLの : トランザクション処理 or 分析処理 ( データウェアハウス ) ACID 属性 vs. BASE 属性 NoSQL の利用価値は? 低レイテンシ 高スループット シンプルなAPI Webセッション管理 Publish Subscribeモデル イベント処理 JSON 形式データの格納 ソーシャル グラフ BOM(Bill of material) ツリーの検索等

AWS データベース サービスの概要 フルマネージド データベースの特性に応じた使い分け 低レンテンシ インメモリ NoSQL 3 拠点間でのレプリケーション SSD に永続化 Amazon ElastiCache Amazon DynamoDB トランザクション処理 RDBMS のプロビジョニング SQL 集計 分析処理 データウェアハウス ( 大容量データ ) Amazon RDS Amazon Redshift + Databases on EC2

アジェンダ データベース サービスの概要 AWS のデータベース サービス Amazon RDS Amazon Redshift Amazon ElastiCache Amazon DynamoDB Databases on EC2 まとめ

Amazon RDS

Amazon RDS とは? 構築 数クリック or API で DB サーバを操作 EC2 同様 初期費用無し 時間単位の従量課金移行 4 種類のエンジンをサポート 既存アプリケーションの変更不要運用 可用性向上のための機能 モニタリング 障害検出 / 復旧 パッチ スケーリングが容易セキュリティ セキュリティグループ VPC 対応

vs. RDS App optimization Scaling High availability Database backups DB s/w patches DB s/w installs OS patches OS installation Server maintenance Rack & stack Power, HVAC, net App optimization Scaling High availability Database backups DB s/w patches DB s/w installs OS patches OS installation Server maintenance Rack & stack Power, HVAC, net App optimization Scaling High availability Database backups DB s/w patches DB s/w installs OS patches OS installation Server maintenance Rack & stack Power, HVAC, net オンプレミス On EC2 RDS お客様がご担当する作業 AWS が提供するマネージド機能

簡単に高性能 可用性の構成を実現 可用性スループット増レイテンシ Multi-AZ スケールアップ Multi AZ リードレプリカ プロビジョンド IOPS スケールアップ リードレプリカ Availability zone Region Availability zone プロビジョンド IOPS

RDS(MySQL) アーキテクチャ アベイラビリティゾーン A アベイラビリティゾーン B 自動バックスナップシアップ ョット ( 自動 / 手動 ) データ同期 自動フェイルオーバー Binlog ( トランザクショ Binlog ( トランザクションログ ) (5 分間隔ンログ ) (5 分間隔 ) Binlog 非同期レプリケーション S3 Availability Zone A Availability Zone B

RDS の構成例 Amazon Route 53 ( ドメイン名割り当て ) CloudFront ( コンテンツ配信 ) ELB ( ロードバランサ ) AZ-1a AZ-1c EC2 EC2 S3 静的コンテンツ RDS マスタ 自動同期 RDS スレーブ

RDS の使いどころ SQL によるトランザクション処理 既存資産 ( アプリ 人材など ) の活用 運用管理コスト ( バックアップ パッチ適用作業など ) の低減 データセンターを跨いだ容易な冗長構成 (Multi-AZ)

Amazon Redshift

Amazon Redshift とは? Data Warehouse as a Service 分析用の大容量統合業務データの管理サービス ( フルマネージドサービス ) 拡張性 :160GB~1.6PB まで拡張可能 高速 : カラムナ型 超並列演算 (MPP) 低額 : インスタンスの従量課金 ( 初期費用 ライセンス費用不要 )

列指向型データベース Redshift は列指向 ( カラムナ ) 型データベース 行指向 トランザクション処理向き orderid name price 1 Book 100 2 Pen 50 n Eraser 70 列指向 分析処理向き orderid name price 1 Book 100 2 Pen 50 n Eraser 70

Redshift のアーキテクチャ 10GigE Mesh コンピュートノード JDBC/ODBC BI ツール リーダーノード コンピュートノード SQL エンドポイント : クエリーの並列化 結果を生成 コンピュートノード クエリー実行ノード N スケールアウトを実現 ローカルディスク リーダーノードを経由して SQL クエリーを実行 各コンピュートノードで演算が並列実行 各コンピュートノードにローカルストレージを保持 データは S3 DynamoDB EMR から直接コンピュート ノードへ並列ロード S3, DynamoDB, EMR との統合

ノード タイプ 従量課金 = ノード数 x 時間単価 コンピュートノードのみの課金 ( リーダーノードは課金対象外 ) DW1 - Dense Storage vcpu ECU Memory(GB) Storage I/O Price dw1.xlarge 2 4.4 15 2TB HDD 0.30GB/s $1.250 1 時間あたり dw1.8xlarge 16 35 120 16TB HDD 2.40GB/s $10.000 1 時間あたり DW2 - Dense Compute dw2.large 2 7 15 0.16TB SSD 0.20GB/s $0.330 1 時間あたり dw2.8xlarge 32 104 244 2.56TB SSD 3.70GB/s $6.400 1 時間あたり

Redshiftの構成例 オンプレ環境との連携 テキストファイル 1,Book,100 2,Pen,50 n,eraser,10 RDBMS Amazon S3 Webアクセス ログ 2013-06-05 12:00:00 192.168.0.2 http://www.amazon.com 2013-06-05 12:00:01 アプリサーバ 自社DC VPN or Direct Connect Amazon EC2 Amazon Redshift

MUJI Passport の導入目的 ネット リアルの区別なく無印良品のファンの方とコミュニケーションを図る 複数メディアを跨ったデータの収集 解析 ソーシャル メディア 実店舗 インターネット 持続的な来店客数増 -> 売上の向上 値引きの最小化 -> ターゲット マーケティング 25

分析関連のシステム構成 BI ツール 26

Redshift の使いどころ いわゆるデータウェアハウスとしての利用 ( データ容量数百 GB 以上 ) OLTP 用途では使用しない Business Intelligence(BI) ツールからの分析 投資対効果 (ROI) が不透明な中で 大規模な投資リスクを避ける

Amazon ElastiCache

メモリキャッシュとは?(1) Web+DB アプリの典型的な構成 App RDBMS 1. クライアントからのリクエスト 2. App サーバが DB サーバに問い合わせ 3. DB サーバが結果を戻す 4. App サーバがレスポンスをクライアントに返す

メモリキャッシュとは?(2) トラフィックが増えると App RDBMS App RDBMS 5. App サーバ,DB サーバをスケール 6. 効果 効率 コスト的な面 DB をスケールさせる難易度は?

メモリキャッシュとは?(3) データ参照時の操作 データがキャッシュにあるか? あるなら取得して完了キャッシュ App なければ DB へクエリ クエリ結果を取得 RDBMS クエリ結果をキャッシュ 繰り返し

メモリキャッシュとは?(4) 更新時の操作 キャッシュ App Insert / Update RDBMS オブジェクト書き込み 繰り返し

Amazon ElastiCache とは 構築 キャッシュクラスタを数クリックで起動 EC2 同様 初期費用無し 時間単位の従量課金移行 2 種類のエンジン (memcached, redis) をサポート 既存アプリケーションの変更不要運用 可用性を向上させる機能 モニタリング 自動障害検出 復旧 拡張 パッチ管理機能を提供セキュリティ セキュリティグループ VPC 対応

典型的な Web+Cache アーキテクチャ Amazon Route 53 ( ドメイン名割り当て ) CloudFront ( コンテンツ配信 ) 東京リージョン ELB ( ロードバランサ ) AZ-1a AZ-1c EC2 EC2 S3 静的コンテンツ RDS マスタ 自動同期 RDS スレーブ

イベント通知 (Cache Event) ElastiCache で発生した 10 以上のイベントを SNS 経由で Push 通知 再起動 ノード追加 ノードリプレイス 設定変更 メンテナンス終了 etc 監視システムと組み合わせることで運用自動化が容易に Cache Event Message Queue Amazon SNS Email Notification ElastiCache Cache Node Alarm HTTP Notification

Auto Discovery for memcached 従来のクライアント側の設定 Cache Cluster の全エンドポイントを接続先として設定する Auto Discovery クライアント (Java, PHP) Cache Cluster の Configuration Endpoint を接続先として設定すると 全エンドポイントを自動取得 設定し 接続する注意 Configuration Endpoint は Cache Cluster のロードバランサー ( Proxy) ではなく あくまでもメタデータを取得する Endpoint となる CacheCluster App 通常のクライアントライブラリ xxx.0001.apne1.cache.amazonaws.com App Auto Discovery クライアントライブラリ xxx.0002.apne1.cache.amazonaws.com http://docs.aws.amazon.com/amazonelasticache/latest/userguide/autodiscovery.html Configuration Endpoint xxx.cfg.apne1.cache.amazonaws.com

ElastiCache の使いどころ キー ベースでのアクセス set(key, value) value = get(key) あくまでキャッシュであり 主は RDBMS 等に永続化されることを前提とする 更新頻度が低く アクセス頻度が高いデータをキャッシュ => キャッシュ ヒット率が高い

Amazon DynamoDB

Amazon DynamoDB とは? NoSQL as a Service 高速 一貫したパフォーマンスを維持シームレスなスケーラビリティ 低コスト 運用管理必要なし 低レイテンシ SSD プロビジョンスループット 無限に使えるストレージ

特徴 1: 管理不要で高信頼性 SPOF の存在しない構成 データは 3 箇所の AZ に保存されるので信頼性が高い ストレージは必要に応じて自動的にパーティショニングされる クライアント

特徴 2: プロビジョンスループット Read と Write それぞれに対して必要な分だけのスループットキャパシティをプロビジョンする ( 割り当てる ) ことができる例えば一般的な Read ヘビーな DB なら Read : 1,000 Write : 100 ライトヘビーな DB なら Read : 500 Write : 500 この値は DB 運用中にオンラインで変更可能 ただし スケールダウンに関しては日に 4 回までしかできないので注意

特徴 3: ストレージの容量制限がない 使った分だけの従量課金制のストレージ データ容量が増えてきたのでディスクを足したり ノードを足したりという作業が不要

DynamoDB を使い始めるには 1. テーブルの Key や Index を決める 2. Read/Write それぞれのスループッ トを決める That s it, write your code!

アイテム DynamoDB のデータモデル Hash key または Hash key & Range key ハッシュキー A プライマリキー レンジキー 1 レンジキー 2 レンジキー 3 アトリビュート A1-1 アトリビュート A2-1 アトリビュート A3-1

Hash Key+Range Key の例 ユーザーの行動ログの蓄積 AudienceId (Hash key) Timestamp (Range key) 1 2013-10-01 00:01:01 2 2013-10-01 00:02:02 1 2013-10-01 00:21:00 1 2013-10-01 00:42:00 1 2013-10-01 00:56:22 Action (Action-Index) Url Login Login Login ViewHoge PostHoge

DynamoDB の使いどころ キー + クエリーでのアクセス 3 拠点でデータが保全されることによる堅牢なシステムの構築 スループットの容易な増減によるピーク負荷への対応

Databases on EC2

Database on EC2 EC2 上にデータベース ソフトをインストールし 自ら運用管理を行う マネージド データベースのメリットは 享受できないが 特殊な要件の場合に検討 RDS で制限されている Stored Procedure を使いたい AWS で提供されていない NoSQL を利用したい データベースの OS にアクセスし ローカル アクセスでバッチ処理を実行したい等々 運用管理コストが上がる点も考慮する

アジェンダ データベース サービスの概要 AWS のデータベース サービス Amazon RDS Amazon Redshift Amazon ElastiCache Amazon DynamoDB Databases on EC2 まとめ

まとめ データの特性に合わせたデータベースの選択 スケールアップに頼らずに低コストで実現 SQL だけではなく NoSQL 系データベースの活用 処理パターンによっては RDBMS よりも適しているケースも AWS のマネージド サービスでカバーしきれないシナリオの場合 Databases on EC2 を活用 バックアップやパッチ適用作業等も考慮

ご清聴ありがとうございました