20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

63
ソフトウェアベンダーが AWSを活用して 急にSaaSをはじめた話 小椋 一宏/Kazuhiro Ogura CTO of HDE, Inc. @goura fb.me/rgoura

description

JAWSUG 東京 2013/12/13 ソフトウェアベンダーが
AWSを活用して
急にSaaSをはじめた話

Transcript of 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

Page 1: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

ソフトウェアベンダーが AWSを活用して

急にSaaSをはじめた話小椋 一宏/Kazuhiro Ogura

CTO of HDE, Inc. @goura

fb.me/rgoura

Page 2: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話
Page 3: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話
Page 4: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

なぜSaaSをはじめたのか

Page 5: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

はじめたかったから

Page 6: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

3.11以降、企業で変化が起きた

Page 7: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話
Page 8: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

3.11以降、HDEでも変化が起きた

Page 9: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

HDEが提供するセキュリティサービス

Page 10: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話
Page 11: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話
Page 12: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

HDEメールサービスとは

Page 13: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

メールアーカイブツール市場シェア

※株式会社富士キメラ総研「富士マーケティング・レポート・BT"クラウド型コラボレーション系サービス及び周辺ビジネス市場動向"」(2013)

Page 14: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

約 550社

40万ユーザー

Page 15: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

処理通数:約3.0億通/月 保管通数:約1.0億通/月

Page 16: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

急激にデータ量が増加

Page 17: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

アーカイブサービスについて

Page 18: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

アーカイブ主要コンポーネント

Page 19: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

ストレージについて

Page 20: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

メインストレージには何を使うか?

Page 21: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

・無限に増加するデータの安全な保管 ・現実的なパフォーマンスで検索可能にする (検索インデックスの作成) ・目標稼働率 99.99%

要件

Page 22: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

• オブジェクト数上限:なし • ストレージ総容量制限:なし • オブジェクト容量制限: 5TBまで • 可用性: 99.99% • 三つ以上のデータセンターに分散 • GBあたり単価: $0.10/GB

S3の採用

Page 23: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

使いたかったから

Page 24: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

無限に増加するデータを保存する

Page 25: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

S3の課題: I/O性能

HTTPベースのAPI:単体でのアクセスは遅い

Page 26: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

課題解決: I/O性能

Page 27: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

S3のパフォーマンス

出典: Donald Kossmann, Tim Kraska, Simon Loesing. An Evaluation of Alternative Architectures for Transaction Processing in the Cloud, 2010.

Page 28: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

書き込み→並列化

Page 29: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

SMTPサーバーの並列化

Page 30: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

課題解決: I/O性能

Page 31: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

読み出しの高速化

Page 32: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

課題解決: I/O性能

Page 33: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

S3でメインストレージを構築

Page 34: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

検索インデックスについて

Page 35: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

アーカイブサービス画面

Page 36: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

全文検索エンジン ゼロから開発

Page 37: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

作りたかったから

Page 38: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

検索インデックス作成:SQSで分散

SQSでジョブをワーカーに分配

Page 39: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

何のグラフ?

Page 40: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

昼夜の流量差に応じたスポットインスタンスの起動

台数半分 !価格1/4 !

Page 41: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

めでたしめでたしのようだが……

Page 42: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

克服できなかった弱点

Page 43: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

S3の課金体系PUTはGETの

約10倍

Page 44: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

• 当社の検索方式はN-gram風 • 全文検索インデックス処理では、メール1通につき3000~5000キーの更新が発生する !

• そのままS3に書き込んでしまうと、、

インデックス処理にかかる金額

Page 45: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

S3だとパケ死する

Page 46: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

しょうがないので MongoDB

Page 47: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

EBS+インスタンス構成でスタート

Page 48: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

…増えつづけるDBサーバーに苦戦!

Page 49: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

S3を使えなかった理由は 更新・書き込みが多いから

!

ならば !

更新が終わったら S3に移せばいいかも

Page 50: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

そうだついでに圧縮して 料金を節約しよう

Page 51: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

更新が無くなったインデックスをEMRでS3に移動

Page 52: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

EMR

Page 53: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

使いたかったから

Page 54: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

工夫:S3上のZIP形式を直接読む• Range付きGETでCentral Directoryを読み • 各ファイルのオフセットを取得してまたRange付GET

• 1000個のキーを書き込むときなど、PUTリクエスト課金を節約できる

http://en.wikipedia.org/wiki/File:ZIP-64_Internal_Layout.svg

Page 55: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話
Page 56: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

ここまでのまとめ

• S3 + SQS でたいていのことはできる • 書き込み→並列化 • 読み込み→キャッシュで弱点克服 • 細かいデータをたくさん書く用途は、従来型のシステムとのハイブリッド型も選択肢の一つ

Page 57: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

Glacier登場

!

•ストレージコストはS3のおよそ1/8 •100TB貯めても12万円/月 •読み出しにはお金がかかる→バックアップ用 •削除にはお金がかからない

2012/8 Glacierの発表

Page 58: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

使いたかったので使いどころを必死で考えた

Page 59: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

Glacierの活用

Page 60: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

ここまでのまとめ

•Glacierは、取り出さない目算が高いデータを格納するのに有効 •AWSを基盤にすることで、AWSの競争力を武器にできる

Page 61: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

話は以上です ありがとうございました

さいごに

Page 62: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

ジョブシェアで人材募集中です!https://job-share.net/jobs/3084

Page 63: 20131213 jawsugソフトウェアベンダーがAWSを活用して急にSaaSをはじめた話

ありがとうございました!小椋 一宏/Kazuhiro Ogura

CTO of HDE, Inc. twitter.com/goura fb.me/rgoura