Upgrade to Pro — share decks privately, control downloads, hide ads and more …

売れてる SaaS へのオブジェクトストレージ導入にまつわる泥臭い話 / JJUG CCC 2...

売れてる SaaS へのオブジェクトストレージ導入にまつわる泥臭い話 / JJUG CCC 2019 Spring

west-c

May 18, 2019
Tweet

More Decks by west-c

Other Decks in Programming

Transcript

  1. • 累計導入社数 4,382社(2019年3月末) • 2018年度の新規受注 1,355社 の概要 6 17 44

    107 229 417 760 1,236 1,957 3,027 4,382 2 0 1 0 年 3 月末 2 0 1 1 年 3 月末 2 0 1 2 年 3 月末 2 0 1 3 年 3 月末 2 0 1 4 年 3 月末 2 0 1 5 年 3 月末 2 0 1 6 年 3 月末 2 0 1 7 年 3 月末 2 0 1 8 年 3 月末 2 0 1 9 年 3 月末 累計導入社数の推移(単位:社)
  2. 楽楽精算が抱えていた課題 ファイルデータのサイズ増加量が年々加速 8 0 50 100 150 200 250 300

    2010 2011 2012 2013 2014 2015 2016 ファイルデータのサイズ増加量(単位:GB)
  3. id file_name file 1 hoge.pdf … … 26 26 クライアント

    データベース Controller file_name = hoge.pdf file = Before DAO DTO
  4. 27 27 id file_name object_key file 1 hoge.pdf 00123 …

    … クライアント データベース オブジェクトストレージ Controller file_name = hoge.pdf file = After DAO DTO 00123
  5. 28 28 id file_name object_key file 1 hoge.pdf 00123 …

    … クライアント データベース オブジェクトストレージ Controller file_name = hoge.pdf file = After DAO DTO DTOの中身は 変わらない 00123
  6. 32 データベース オブジェクトストレージ id file_name object_key 1 hoge.pdf 00001 id

    file_name object_key ユーザ 既存に倣った設計で 外部ストレージ導入 削除操作 物理削除 物理削除
  7. 33 データベース オブジェクトストレージ id file_name object_key 1 hoge.pdf 00001 id

    file_name object_key 1 hoge.pdf 00001 ロールバック id file_name object_key ユーザ 削除操作 参照先が 存在しない 物理削除 物理削除 既存に倣った設計で 外部ストレージ導入
  8. 採用した設計 34 データベース オブジェクトストレージ id file_name object_key 1 hoge.pdf 00001

    id file_name object_key 1 hoge.pdf 00001 ユーザ 削除操作 論理削除 物理削除 物理削除 id file_name object_key バッチ 削除処理
  9. 35 データベース オブジェクトストレージ id file_name object_key 1 hoge.pdf 00001 id

    file_name object_key 1 hoge.pdf 00001 ロールバック id file_name object_key 1 hoge.pdf 00001 ユーザ 削除操作 論理削除 採用した設計