先進的な国内事例に学ぶ AWS活用の最新トレンド アマゾンウェブサービスジャパン株式会社 シニアソリューションアーキテクト 小林正人 2016/06/03
Gold Sponsor Silver Sponsor
Bronze Sponsor
DemoPit for Business DemoPit for Developers
Twitter で AWS Summit に参加しよう! 公式アカウント @awscloud_jp をフォローしたお客様に フリクションボールペンをプレゼント! 配布場所 ロビーや展示会場のコンパニオンが配布中! お気軽にお声かけください
自己紹介 小林 正人(こばやし まさと) エンタープライズソリューション部 シニアソリューションアーキテクト 主に大企業のお客様を担当し いわゆる社内IT のみならず幅広い分野でお客様をご支援 AWSブログ 週刊AWS の和訳を担当 好きなAWSのサービス EBS
本セッションの目的 エンタープライズ企業における先進的な事例を通じて 最近のAWS活用のトレンドをご理解いただくこと それぞれの事例について 設計の趣旨と技術的なポイン トについて理解を深めていただくこと 実際に採用されたAWSのサービスについての概要をつ かみ システム設計時に考慮できるようになっていただ くこと
アジェンダ AWS活用における近年のトレンド 事例① 株式会社ゲオホールディングス様 店舗基幹系データベース移行事例 事例② 株式会社毎日新聞社様 mainichi.jpマイグレーション事例 事例③ 株式会社ゼンリンデータコム様 tredina(トレディナ)事例 まとめ
AWS 活用における 近年のトレンド
昨年から今年にかけての大きなトレンド
昨年から今年にかけての大きなトレンド 1. ミッションクリティカルで大規模なシステム データベースの移行事例が引き続き増加
昨年から今年にかけての大きなトレンド 1. ミッションクリティカルで大規模なシステム データベースの移行事例が引き続き増加 2. エンタープライズ企業を含む多くのお客様で Amazon RDS for Auroraの活用が進む
昨年から今年にかけての大きなトレンド 1. ミッションクリティカルで大規模なシステム データベースの移行事例が引き続き増加 2. エンタープライズ企業を含む多くのお客様で Amazon RDS for Auroraの活用が進む 3. マネージドサービスの積極活用による開発期間 の短縮や運用コスト削減事例が目立つ
事例 1: 株式会社ゲオホールディングス様 Exadata マイグレーション事例
お客様について 社名 株式会社ゲオホールディングス 会社設立 1989年1月 本社 愛知県名古屋市 店舗数 1,609店舗 メディアショップGEO 2nd STREET JUMBLE STORE ウェアハウス
事例の概要 Oracle Exadata V2が保守期限切れによ り移行先の検討が必要に 検証を経てEC2+EBSで稼働するOracle EEを軸としつつ オフロード可能な機 能の分散を図る構成を採用 インフラも開発も内製 移行期間4.5ヶ 月で移行プロジェクトを完遂 冗長性はActive Data Guardで担保
移行前の構成 店舗売上データ 2min間隔で転送 店舗売上データ 店舗売上データ Active Data Guard Exadata V2 (店舗基幹系統合 DB 集計バッチ) Exadata X2 (分析 災害 対策)
移行後の構成 店舗売上データ 2min間隔で転送 店舗売上データ OracleDB on EC2 店舗基幹系統合DB Active Data Guard 店舗売上データ Exadata X2(DR用途 今後撤去) 内製インメモリDB
構成のポイント Exadata特有の機能に依存するアプリケー ションとなっていたため 一般的なクエリ チューニングを実施 部分一致検索のパフォーマンスを改善する ため インメモリDBの仕組みを内製開発 しオフロード EBSは汎用SSDを採用しコストを抑えつつ 複数を並べることでスループットを確保
Amazon Elastic Compute Cloud (EC2) 仮想クラウドサーバ 特徴 必要な時に必要なだけ1時間単位の従 量課金で利用できる仮想サーバ 世界12箇所のリージョンで利用可能 様々なスペック OSを選択可能 価格体系 インスタンス利用料 データ転送量(AWS 外部のみ課金)
Amazon Elastic Block Store (EBS) EC2で利用するブロックストレージ EC2 EBS 特徴 OSやデータ用など幅広い用途に対応 高耐久のバックアップ機能を提供 各種ボリュームタイプから用途に合 わせて選択可能 EBS 作成 リストア EBS Snapshot (バックアップ) 価格体系 容量 全タイプ Snapshotストレージ 全タイプ IOPSやI/O命令回数 一部タイプ
EBSのボリュームタイプ SSDベースのタイプ 汎用SSD 容量に応じて最大10,000IOPSまで性能が向上 プロビジョンドIOPS 20,000IOPSまでの範囲で指定できる HDDベースのタイプ ストリーミング最適化HDD シーケンシャルアクセスに最適化 最大500MB/s コールドHDD シーケンシャルアクセス向きで最大250MB/s
EBSのパフォーマンスを決める要素 EBSのパフォーマンスは3つの要素が影響しうるので システム 全体としてのボトルネックを把握することが重要 1. EC2インスタンス側のスループット 2. EBSが処理できるI/O命令の回数(IOPS) ②EBS自体が処理で きるI/O命令の量 3. 各EBSボリュームのスループット ①EC2インスタン ス側のスループッ ト上限 EBS Data EC2 EBS Data ③EBSボリューム単 体としてのスルー プット上限
Oracle DB稼働サーバ構成 汎用SSD 3.4TB r3. 8xlarge 汎用SSD 3.4TB 汎用SSD 3.4TB 汎用SSD 3.4TB 汎用SSD 3.4TB 汎用SSD 3.4TB メモリ容量の観点からr3.8xlarge を選択 EBS帯域は10Gbps EBSのボリュームタイプは汎用 SSDを選択 IOPSが最大となる 3.4TBを確保 複数のボリュームを利用すること でトータルでのIOPSを稼ぐ構成 複数ボリュームへの分散はOracle のASMを利用
お客様からのフィードバック 現行世代のCPUやSSDストレージが利用可能でExadata V2が持つ専用ハードウェアに対抗できる性能を出せた いつでも環境変更が可能でサイジングにシビアにならずに 済み 調達も迅速だった EC2のスループットの改善を希望 インスタンス間通信と EBS向け通信のバランスに手間取ったため より高速なも のがあるとより便利
今後の展開 Oracleからのマイグレーションを推進 会員DBをAWSに単純移行 本年4月に完了 会員DBのAurora化 本年8月予定 取引先向けシステムの移行 本年6月予定 既設DCのAWS移行完了 本年9月予定 店舗系基幹DBのAurora化 2017年予定 現在検討中
事例 2: 株式会社毎日新聞社様 mainichi.jp マイグレーション事例
お客様について 社名 株式会社毎日新聞社 創刊 1872年2月 本社 東京都千代田区 事業内容 日刊新聞の発行 雑誌 書籍の発行 デジタルメディア事業の展開 その他各種の事業
事例の概要 2015年12月6日よりニュースサイト mainichi.jpをawsでフルリニューアル コンテンツデータベースとしてAmazon Auroraを採用 トラブル無く運用中 CloudSearchやElastiCacheなどのマ ネージドサービスをフル活用 システム開発は内製にて実施
mainichi.jpについて 毎日新聞のニュース 情報サイト 様々なニュースの配信 や速報記事も提供 会員サービス向けの有 料コンテンツも配信
システム構成概要 Auroraクラスタ Route53 Web/AP サイト管理者 ELB(CMS) Web/AP (CMS) ELB Web/AP Auto Scaling EB App ElastiCache (memcached) EB App 他システム Amazon S3 ユーザ Amazon S3 CloudFront SQS EB App CloudSearch
構成のポイント 記事データはAuroraに格納 ElastiCache を併用しデータベースへの負荷を削減 記事更新にはS3とSQSを活用 画像配信用 のS3+CloudFrontや記事検索用のCloud Searchへの通知を疎結合で実現 負荷がかかる可能性がある箇所はスケーラ ビリティを考慮 冗長化を図ることで無停 止でのメンテナンスを実現
記事取得のフロー Auroraクラスタ Route53 Web/AP サイト管理者 ELB(CMS) Web/AP (CMS) 記事取得 ELB Web/AP Auto Scaling EB App ElastiCache (memcached) EB App 他システム Amazon S3 ユーザ Amazon S3 CloudFront SQS EB App CloudSearch
Amazon Elastic Load Balancing (ELB) 負荷に応じて伸縮するロードバランサーサービス ユーザー mylb-xxx.elb.amazonaws.com ELB EC2 アベイラビリティ ゾーン a EC2 アベイラビリティ ゾーン b 特徴 マネージドなロードバランサーサー ビス 複数のアベイラビリティゾーンに 跨って 高レベルの耐障害性を実現 ELB自体が自動的に処理能力を増減 価格体系 ELBの起動時間 ELBのデータ転送量
Amazon RDS for Aurora Amazonがクラウド時代に再設計したデータベース 特徴 MySQL5.6互換で容易に移行可能 複数のAZを利用し高い耐久性を実現 ディスクが64TBまでディスクがシー ムレスにスケールする 価格体系 インスタンスタイプに応じた単価 実際に利用したディスク容量 バックアップストレージ容量
Amazon Auroraの特徴 クエリ性能の向上 セキュリティにも配慮 スケーラブル MySQL5.6互換 高コストパフォーマンス 高可用性 高耐久性
Amazon Auroraの特徴 MySQL5.6とクエリ互換性があるため移行が容易 ストレージが10GBから64TBまで自動的に拡張される 高いストレージ耐久性 3つのAZを活用し6本のディスクに書き込みを実施 2カ所で障害が起きても問題なし 3カ所でも読み込みは継続可能 リードレプリカによる負荷分散で高いスループットを発揮 10-20ミリ秒程のレプリケーション遅延 VPC内で稼働しアクセス制御が容易
Auroraのアーキテクチャ DBエンジンそのものとロギング 部分やストレージを分離するこ とで各種の特長を実現 各ノードがストレージを共有す ることでレプリカ遅延を極小化 Data Plane SQL Transactions Caching Logging + Storage Amazon S3を利用して 99.999999999%の耐久性でス トリーミングバックアップ Amazon S3 Control Plane Amazon DynamoDB Amazon SWF Amazon Route 53
Amazon ElastiCache フルマネージド キャッシュサービス 特徴 マネージドMemcached/Redis フェイルオーバーやパッチの適用 バックアップ(Redis)を自動で実行 Memcached用のAuto Discovery対 応Client Libraryも提供中 価格体系 インスタンスタイプに応じた単価 バックアップを有効にした場合は バックアップストレージ利用量
画像取得のフロー Auroraクラスタ Route53 Web/AP サイト管理者 ELB(CMS) Web/AP (CMS) ELB Web/AP Auto Scaling EB App ElastiCache (memcached) EB App 他システム Amazon S3 ユーザ Amazon S3 CloudFront SQS EB App CloudSearch 画像取得
Amazon Simple Storage Service (S3) マネージドオンラインストレージサービス Amazon S3 特徴 99.999999999%の高い耐久性 格納容量無制限 利用した分のみ課金 スタティックなコンテンツを配信する ホスティング機能を持つ 価格体系 データ格納容量 データ転送量(OUT) APIリクエスト数
Amazon CloudFront マネージドCDN(Contents Delivery Network)サービス 特徴 サイトとサーバの負荷軽減を実現 様々な規模のアクセスを処理するこ とが可能 世界54箇所のエッジロケーション Amazon CloudFront 配信 クライアント レスポンス向上 オフロード キャッシュ Webサーバ 負荷軽減 価格体系 データ転送量(OUT) HTTP/HTTPSリクエスト数 (利用する場合)SSL独自証明書 など
記事検索のフロー Auroraクラスタ Route53 Web/AP サイト管理者 ELB(CMS) Web/AP (CMS) ELB Web/AP Auto Scaling EB App ElastiCache (memcached) EB App 他システム Amazon S3 ユーザ Amazon S3 CloudFront SQS EB App CloudSearch 記事検索
Amazon CloudSearch フルマネージドなクラウド型検索エンジン Amazon CloudSearch トラフィック増加に 自動対応 データ増加に 自動対応 特徴 検索エンジンを容易に導入可能 現時点で34 の言語をサポート 豊富な検索機能 高度な日本語解析処理機能 価格体系 検索インスタンス数 ドキュメントバッチの投入回数 INDEX再作成リクエスト回数
記事投稿 管理のフロー Auroraクラスタ 記事投稿 管理 Route53 Web/AP サイト管理者 ELB(CMS) Web/AP (CMS) ELB Web/AP Auto Scaling EB App 記事投稿 管理 ElastiCache (memcached) EB App 他システム Amazon S3 ユーザ Amazon S3 CloudFront SQS EB App CloudSearch
Amazon Simple Queue Service (SQS) 高い可用性と信頼性を提供する フルマネージドなメッセージキューサービス message Producer 特徴 複数AZを活用し高い信頼性を誇るマ message ネージドメッセージキュー 多数の送信者/受信者に対応 polling メッセージが増加しても高スループッ Consumer トを出し続ける 価格体系 リクエスト100万件あたり0.5ドル 無料利用枠あり
AWS Elastic Beanstalk インフラ構成の構築 アプリデプロイの自動化サービス 特徴 インフラ構築からアプリケーション スタックの管理までを自動化 負荷に応じて自動的にスケーリング SQSを介したバッチ処理もサポート 価格体系 Beanstalkとしての追加料金なし 起動したAWSリソース EC2, S3, RDSなど に対して課金
お客様からのフィードバック 注目度の高いニュース配信時も安定稼働 マネージドサービスをフル活用することで開発工数や保 守運用費用の劇的な削減を実現できた 疎結合なアーキテクチャを採用することで機能毎のメン テナンスが可能となり 機能追加も容易となった Route53のInternal DNS機能を活用し本番環境と開発 環境で設定差違を無くし 品質向上に繋がった
今後の展開 記事データ反映に利用しているSQSと Elastic Beanstalkを SQSとLambdaに 変更予定 これによってリソース管理を軽減し保守 工数を削減に繋がると期待 API化を推進しBtoBビジネスの展開を検討
詳細は本日 16:20~ のセッションにて!
事例 3: 株式会社ゼンリンデータコム様 tredina( トレディナ ) 事例
お客様について 社名 株式会社ゼンリンデータコム 設立 2000年4月 本社 東京都港区 事業内容 ネットサービス事業 ITS事業 海外事業
事例の概要 美に関するトレンドを共有するソー シャルメディアtredina(トレディナ)を AWS上で構築 DynamoDB StreamsやLambdaなど最 新のサービスをフル活用 EC2の利用は どうしても必要な箇所だけに限定 マネージドサービスの活用により運用 コストが1/3に 開発期間は1/10に Hair Salon
tredina(トレディナ)について ヘアスタイルなど美容に 関連した画像を軸とした ソーシャルメディア サロンスタッフやユー ザーの投稿をフォローし ファッションの参考に https://tredina.com サロンの予約もワンス トップで実現
tredina(トレディナ)について お気に入りのスタイルに いいね を付けて流行 のトレンドをキャッチ フォローしたユーザの投 稿をタイムラインでまと めて確認 https://tredina.com タグを利用して興味のあ るジャンルをまとめて チェック
システム構成概要 Cognite Route53 ElastiCache SES SNS(Push) DynamoDB Streams ELB DynamoDB Web/AP サーバ Lambda Elasticsearch Service 外部連携先 検索エンジン 管理サーバ AWS cloud Amazon S3
構成のポイント ユーザからのトレンド投稿や いいね コメント投稿など無限に増えるデータは DynamoDBに格納する フォローやコメントといったイベント発生 時はDynamoDB SteamsからLambdaを起 動し 速やかにプッシュ通知を行う 店舗情報やトレンドなど 検索対象となる データはElasticsearch Serviceに格納 サ ジェスト機能も提供する
ユーザアクセスのフロー Cognite Route53 ElastiCache 動的コンテンツ へのアクセス ELB SES SNS(Push) DynamoDB Streams Web/AP サーバ DynamoDB Lambda Elasticsearch Service 外部連携先 管理サーバ 静的コンテンツ AWS cloud へのアクセス 検索エンジン Amazon S3
Amazon DynamoDB Amazonが提供する高い信頼性 スケーラビリティ 低レイテ ンシで安定した性能を兼ね備えたNoSQLデータベースサービス DynamoDBの使いドコロ ゲーム 広告配信 DMP センサーデータ モバイルアプリケーションの バックエンド いずれも 高いスループットと低 いレイテンシが求められ 更に扱 うデータ量が大きくなりやすいと いう共通の特徴を持つ 特徴 複数AZにデータを複製し高い耐久性 と可用性を提供実現 任意のスループットを指定でき 低い レイテンシで安定した性能を発揮する 容量確保不要で自動的にスケールする 価格体系 スループットキャパシティ ストレージ: $0.285/GB
Amazon Elasticsearch Service ELK(Elasticsearch, Logstash, Kibana)スタックをサポートした マネージドAnalyticsサービス Data Source Logstash Amazon ES 特徴 ElasticsearchのAPIを利用可能 構築するとすぐにKibanaが利用可能 日本語解析に対応 Elasticsearch ICUプラグイン Elasticsearch Kuromojiプラグイン 価格体系 Elasticsearchインスタンス時間 Amazon EBSストレージ
プッシュ通知のフロー Cognite ElastiCache Route53 データ更新 ELB SES Lambda起動 DynamoDB Web/AP サーバ SNS(Push) プッシュ通知 Lambda Elasticsearch Service 外部連携先 検索エンジン 管理サーバ AWS cloud Amazon S3
DynamoDB Streams DynamoDBに行われた追加 更新 削除の変更履歴を 保持し取り出せるようにする機能 ストリームをトリガーとしてLambdaを起動することが できる
AWS Lambda イベントをトリガーにコードを実行するコンピュートサービス 特徴 インフラの管理不要 3 1 元画像 サムネイル画像 様々なイベントをトリガにコードを 2 実行できる Amazon S3 Bucket イベント AWS Lambda アプリからの同期/非同期呼び出し 値チェックや別テーブルへのコピー 価格体系 別テーブルを更 新 コード実行時間 100ms単位 Amazon DynamoDB AWS Table and Stream リクエスト回数 Lambda プッシュ通知 無料利用枠あり イメージのリサイズやサムネイルの作成
Amazon SNS Mobile Push モバイル向けのクロスプラットフォームなプッシュ通知サービス ios Apple APNS Internet Google GCM Baidu CP Amazon SNS Cross-platform Mobile Push 特徴 世界中のクロスプラットフォームの ユーザにプッシュ通知を送信可能 個々の通知だけでなく多数の受信者 への同報通知も可能 フルマネージドなので高速かつス ケーラブルで管理不要で非常に安価 Amazon ADM Windows WNS and MPNS 価格体系 リクエスト単価
コンテンツ生成のフロー Cognite ElastiCache Route53 データ更新 ELB SES Lambda起動 DynamoDB Web/AP サーバ Elasticsearch Service 外部連携先 Lambda コンテンツ 格納 検索エンジン 管理サーバ AWS cloud SNS(Push) Amazon S3
お客様からのフィードバック マネージドサービスを利用することで開発期間と運用コス トの双方を大幅に削減することができた AWSのマネージドサービスを活用することはエンジニア にとって刺激的でモチベーションにつながる 開発メンバーの口癖が Lambda使えばいいんじゃない となるくらい積極的になり この価値はプライスレス
今後の展開 サービス拡張により新たな機能を追加 する EC2インスタンスで稼働するAPI機能を API Gatewayに移行することでサーバ 台数をさらに削減する DynamoDBのキャパシティコントロー ルを精緻化することでコストのさらな る最適化を図る
まとめ
本セッションのまとめ 基幹系DBをはじめとする非常に高負荷な ワークロードであっても AWS上で稼働す るようになってきている エンタープライズ企業のマネージドサービ ス活用が加速 仮想サーバは本当に必要な 箇所だけに絞るのが主流に マネージドサービスを活用すると 開発期 間の短縮やシステムの安定運用というメ リットが得られる
おしらせ 各サービスの概要から セキュリティ 導入プロセスや運用まで 導入のコツ を一冊に凝縮 オンプレミスシステムの移行方法から 移行後に最適化を進めるための考え方 までを解説