42
Copyright© BookLive Co., Ltd. 現場担当が語る! AWSでのパーソナライズ導入事例 ~Amazon Redshift, Amazon S3, DynamoDB, Amazon Kinesis~ 株式会社BookLive 技術開発本部 システム開発部 マネージャー 外山 英幸 ストア事業本部 マーケティング部 牧田 純

現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

現場担当が語る!

AWSでのパーソナライズ導入事例~Amazon Redshift, Amazon S3, DynamoDB, Amazon Kinesis~

株式会社BookLive

技術開発本部 システム開発部 マネージャー 外山 英幸

ストア事業本部 マーケティング部 牧田 純

Page 2: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

目次

1電子書籍の会社です

会社概要・自己紹介

2利用全域と今日のお話の範囲

BookLiveにおけるAWSの利用範囲

3導入の検討と経営層へのアピール

何故Redshiftを使おうと思ったか

4DWHの必要性と課題の解決方法

DWHの構築とパーソナライズ実装

5AWSへの印象や苦労したこと

プロジェクトを進めた結果

6今後の展望

最後に

Page 3: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1電子書籍の会社です

会社概要・自己紹介

2利用全域と今日のお話の範囲

BookLiveにおけるAWSの利用範囲

3導入の検討と経営層へのアピール

何故Redshiftを使おうと思ったか

4DWHの必要性と課題の解決方法

DWHの構築とパーソナライズ実装

5AWSへの印象や苦労したこと

プロジェクトを進めた結果

6今後の展望

最後に

Page 4: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1.会社概要 ~そもそもどんな会社?~

商号 株式会社BookLive

事業内容 電子書籍ストア事業及び、電子書籍配信プラットフォーム事業

所在地 東京都港区芝浦3-19-26

設立 2011年1月28日

代表者 代表取締役社長 淡野 正

資本金 48億8117万5千円

従業員数 137名(2016年4月1日現在)

1. 電子書籍ストア事業

・総合電子書籍ストア「BookLive!」の運営

・電子コミックストア「H a n d y コミック」の運営

2. 電子書籍配信プラットフォーム事業

・電子書籍アプリ「BookLive!Reader」の開発・運用

・ユーザビリティの高いクラウド書庫の実現

※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Page 5: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1.自己紹介 ~こんな2人です~

某アイドル育成ゲーオタ

名前:外山 英幸(とやま ひでゆき)

所属:技術開発本部 システム開発部 ストア開発チーム

役職:マネージャー

通称:まっきー(27歳)

アニメ・ゲーム大好き

厨二マネージャー(33歳)

いろいろ開発する人です

名前:牧田 純(まきた じゅん)

所属:ストア事業本部 マーケティング部 マーケティング2チーム

役職:一般職

いろいろ企画する人です

Page 6: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1電子書籍の会社です

会社概要・自己紹介

2利用全域と今日のお話の範囲

BookLiveにおけるAWSの利用範囲

3導入の検討と経営層へのアピール

何故Redshiftを使おうと思ったか

4DWHの必要性と課題の解決方法

DWHの構築とパーソナライズ実装

5AWSへの印象や苦労したこと

プロジェクトを進めた結果

6今後の展望

最後に

Page 7: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

2. BookLiveにおけるAWS利用範囲

Amazon EC2

主にWebサーバーとして数十~数百台

利用

CloudFront

コンテンツ配信やリソース等で月数百

GB以上利用

Amazon S3

様々なデータを配置しており、現在

200TB以上利用

ElasticCache

キャッシュ系のデータ保管先として redis

を利用

DynamoDB

クラウド本棚やしおり、ユーザーの行動履

歴等で多数利用

Amazon RDS

Mysqlやpostgresを多数利用

Amazon Redshift

DWHのコア。本日の主役。

Amazon VPC

基本的なネットワークの構成と、ダイ

レクトコネクト等で利用

AWS Route 53

DNSサーバーとして利用

Amazon CloudTrail

APIのログ処理として利用

Amazon CloudWatch

主にマネージドサービス系の

サーバー監視で利用

Amazon SES

メールサービスで利用。

Amazon Kinesis

様々なログ取得で利用。

本日の主役の一人

Amazon SQS

キューを使ったバッチ処理を容易

に実装するために利用

Page 8: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

2. BookLiveにおけるAWS利用範囲 ~今回の発表範囲~

Amazon EC2

主にWebサーバーとして数十~数百台

利用

CloudFront

コンテンツ配信やリソース等で月数百

GB以上利用

Amazon S3

様々なデータを配置しており、現在

200TB以上利用

ElasticCache

キャッシュ系のデータ保管先として redis

を利用

DynamoDB

クラウド本棚やしおり、ユーザーの行動履

歴等で多数利用

Amazon RDS

Mysqlやpostgresを多数利用

Amazon Redshift

DWHのコア。本日の主役。

Amazon VPC

基本的なネットワークの構成と、ダイ

レクトコネクト等で利用

AWS Route 53

DNSサーバーとして利用

Amazon CloudWatch

主にマネージドサービス系の

サーバー監視で利用

Amazon Kinesis

様々なログ取得で利用。

本日の主役の一人

Amazon SQS

キューを使ったバッチ処理を容易

に実装するために利用

Amazon CloudTrail

APIのログ処理として利用

Amazon SES

メールサービスで利用。

Page 9: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

2. BookLiveにおけるAWS利用範囲 ~今回の発表範囲 - DWHとしての利用~

Amazon Redshiftを利用したDWH基盤を構築し、

DOMOやCognos等のBIツールで様々な指標を表示

Page 10: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

2. BookLiveにおけるAWS利用範囲 ~今回の発表範囲 -パーソナライズ~

例えばトップページから、

ある作品ページを閲覧し…

その後、トップに戻ると…見た作品に対応したレコメンド

が出る!※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Page 11: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1電子書籍の会社です

会社概要・自己紹介

2利用全域と今日のお話の範囲

BookLiveにおけるAWSの利用範囲

3導入の検討と経営層へのアピール

何故Redshiftを使おうと思ったか

4実装時の苦労や課題

DWHの構築とパーソナライズ実装

5AWSへの印象や苦労したこと

プロジェクトを進めた結果

6今後の展望

最後に

Page 12: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

3. 何故Redshiftを使おうと思ったか

そもそもBookLiveは全インフラの

AWS移行を進めていました。

なぜ?

Page 13: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

3. 何故Redshiftを使おうと思ったか

ピークに応じて柔軟にインフラのコントロールが可

能。

必要な分だけを使用するのでインフラの無駄を減

らせ、コスト削減が可能。

ピーク予測による先行でのインフラ調達が必要

使わない無駄な

キャパシティの発生

AWSオンプレミス

ビジネスの成長予測が想定と違った場合

AWSは、ピークに応じて柔軟にインフラをコントロールすることが可能なため、

成長に合ったインフラを利用することができるので、想定相違はリスクとならない。

TIPS

Page 14: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

3. 何故Redshiftを使おうと思ったか

来年以降のAWSサミットにご期待ください。

インフラのAWS移行については、

今回のテーマよりはるかに大きな規模であるため割愛。

では本題。

何故Amazon Redshiftを使おうと思ったのか?

Page 15: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

3. 何故Redshiftを使おうと思ったか ~エンジニア側の考え~

2014年8月…システム開発部は悩んでいた

• BookLiveのシステムは完全内製

• アジャイルっぽい感じの開発

• 最低でも週1回はリリースがある状況

• 基本的にベンダー物が嫌いな人揃い

• でもAWSは大好き(楽はしたい)

BookLiveにおける開発 ベンダー製DWHを導入した場合

• 内製と比較してとにかく高い

• ドキュメントのやり取りが非常に多い

• データの変更で逐一連携が必要

• ブラックボックスな部分が多い

• モチベーションの低下

システム開発部 「外部のコンサル会社がめっちゃ価格の高いDWHの導入話を持ってきた…しかも偉い人たちは乗り気だし…どうしよう…」

Page 16: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

( ゚д゚ ) ガタッ.r ヾ

__|_| / ̄ ̄ ̄/_\/ /

そうだ!

「もっといいDWH」 を開発側から逆提案すればいいんだ!

システム開発部は思った

Page 17: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

Hadoop…

Hive …Hbase …

Cassandra …

BigQuery …

カタカタ…(ググっただけ)

Page 18: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

3. 何故Redshiftを使おうと思ったか ~エンジニア側の考え~

東京リージョンのSSD 160GB 1台で$0.188 / 1時間 = 16,000円/月

3台並べても48,000円!

理由①:とにかく安い!

結果

費用、導入しやすさ、学習コスト、保守の容易性と他を

圧倒したため、導入を決定。

2か月間無料のトライアル期間があったのでまずは試し

てみる事に。

専門知識?SQLが分かればOK!インターフェイスはPostgresと同じ。

細かい違いやパフォーマンスを引き出す設計はあるが、とりあえず使いながら学べる!

理由②:すごく簡単!

BookLiveは既にAWS全移行中。既存システムとの親和性は抜群。

AWSのマネージドサービスなため構築・停止、バックアップやスケールアウトもボタン1発!

理由③:AWSのサービス!

そこで第一候補に挙がってきたのがAmazon Redshift

Page 19: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

一方その頃

Page 20: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

3. 何故Redshiftを使おうと思ったか ~企画側の考え~

2014年9月…マーケティング部は悩んでいた

マーケティング部 「○mazonみたいにレコメンドをもっと強化していきたい…。でも今導入しているレコメンドシステムじゃ限界だ…」

• ユーザーの行動履歴を蓄積したい

• よりリアルタイムにレコメンドを更新したい

• でもオンプレで作るのは費用がかかる

• 外部サービスだと対応が遅く高コスト

• え、どうすんの…?

当時の問題点 ( ゚д゚ ) ガタッ.r ヾ

__|_| / ̄ ̄ ̄/_\/ /

え?システムが「Redshift」導入するって?

それ使えば割と理想がかなうっぽいだって?

Page 21: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

DynamoDBと組み合わせればリアルタイムな行動データの収集、更新が

出来るらしい

理由①:リアルタイム性の実現

Redshiftならば起こりがちなデータのサーバー圧迫を

気にしなくて良いらしい

理由②:蓄積データの担保

ちょうどその頃AWSを利用したよさげな

レコメンドサービスの提案があった

理由③:互換性の高いレコメンドシステム

Amazon Redshiftを使うと理想がどうかなうか?

開発チームが

導入に意欲的だったので

社内調整が楽だった

理由④:社内調整

3. 何故Redshiftを使おうと思ったか ~企画側の考え~

Page 22: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

つまり

AWSサービスは

当時、社内で出ていた要望に

ことごとくマッチしていた

3. 何故Redshiftを使おうと思ったか

Page 23: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1電子書籍の会社です

会社概要・自己紹介

2利用全域と今日のお話の範囲

BookLiveにおけるAWSの利用範囲

3導入の検討と経営層へのアピール

何故Redshiftを使おうと思ったか

4DWHの必要性と課題の解決方法

DWHの構築とパーソナライズ実装

5AWSへの印象や苦労したこと

プロジェクトを進めた結果

6今後の展望

最後に

Page 24: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

4. DWHの構築とパーソナライズ実装 DWHの必要性について①

システムの成長に伴い、様々なデータが多数のDBやログファイルに分散されていた。

アクセスログ

DB②のデータ

DB①のデータ

テーブル

テーブル

テーブル

・正規化されたテーブルが数百存在

・複雑なサブクエリのexplainに追われる日々

・特定テーブルのレコードが数千万を超えだす

・集計専用のslaveを用意したりテーブル分割をしたり…

・サービス成長に伴い、データソースも複数存在

・バッチを多数管理するが、実行順に複雑な関係が発生

・HadoopのM/Rによる集計を行ったりと四苦八苦

・機能追加時による影響範囲考慮漏れ

同一DB上の集計の場合

異なるデータソースのものを合わせて集計

Page 25: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

もしAmazon Redshiftに全てのデータを集約できた場合…

Redshiftのテーブルの事「だけ」を考えて転送すればOK!

各サービス側(業務用DB)

集計・分析・外部サービスとの連携側

Redshift

Redshift

Redshiftの事「だけ」知って抽出すればOK!

4. DWHの構築とパーソナライズ実装 DWHの必要性について②

Page 26: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

redshiftはSQLによる大量

更新に向かないため、基本的

にS3上に更新ファイルを配置

してcopyで取り込む。

4. DWHの構築とパーソナライズ実装 ~DWHの構築~

アクセスログ

データソース

広告データ

配信履歴データ

商品データ

CRMデータ

購買データ

行動データ

顧客データ

キャンペーン情報

S3

Redshift

DWH

基本的にはサブジェクト単

位での非正規化を行い、

できる限りjoinを行う必要

が無いように設計。

一時格納先

redshiftはSQLによる大量

更新に向かない

最も重視したことは「とにかく短期間でRedshiftの構築をする」ということ。

①テーブル単位で

jsonファイルを作成

(20分割程度)

②manifestを

コピーで取込み

manifest

Jsonファイル

Jsonファイル

Page 27: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

4. パーソナライズ実装 ~課題~

DWHを構築できる見込みは立った。

AWS上で稼働するレコメンドエンジンの提案もあり、

DWHのデータと連携することで自社レコメンドも実現可能。

様々なデータがDWH上には集約される未来への期待が膨らんだ…。

が、サイト上でパーソナライズにあたり求められたものの1つが

「リアルタイム性」

「ユーザーが欲してる内容」を訴求するためにはできる限りタイムラグのないパーソナライズが必要。

しかし、そもそもRedshiftは「オンラインには不向き」 。

そのため、リアルタイム性の担保については別サービスの利用を検討。

Page 28: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

①ページ遷移時に

ログを記録

Webサーバ群

大量のアクセスを記録す

るためには多数のWeb

サーバーが必要

KVS

冗長性を保つためには少

なくとも2台以上のKVS

が必要

②かなりのI/O数を

求められるため、DBではなく

KVSに記録する事が一般的

リアルタイム性を追求するほど

ログを記録・保存するためだけのサーバーが複数台必要になってしまう(アクセス数に比例)

4. パーソナライズ実装 リアルタイム更新① ~既存の処理~

Page 29: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

①ajaxで足跡を記録

kinesis

1シャードで1000回/秒

の書込みが可能。

データソース

②KCLを利用した

バッチで転送

①のput側に関しては負荷に対するケアを何も気にしなくていいに等しい(シャード数くらい)。

②のget側に関してはクライアント用のライブラリ(KCL)もあるため2~3日で作成可能。

用途に合わせた格納先を複数用意することも容易に実現可能。

Kinesis

ユーザ行動履歴DynamoDB

S3 Redshift

500回/秒程度なら月額約43ドル!

BIでの分析やオフライン処理用シャードの増減も容易!

4. パーソナライズ実装 リアルタイム更新② ~kinesisの場合~

Page 30: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

データソース

ユーザ行動履歴DynamoDB

Kinesisの転送先

レコメンドエンジン

書誌データSolr

購入履歴RDS

今回のスコープ外のサービス

パーソナライズ用API

様々なデータソースを利用し、パーソナライズ化された情報を返却するAPIを構築。

軸となる行動履歴はリアルタイムで更新されるため、返却される内容もほぼリアルタイ

ムで変動している状態。

専用のAPIをAWS上に構築

①APIで利用 ②パーソナライズ情報を表示

4. パーソナライズ実装 パーソナライズ化された結果の表示

※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Page 31: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

4. DWHの構築とパーソナライズ実装 ~スケジュール~

Redshift試験利用

テーブル設計

Redshift取込みバッチ開発

検証・再定義

調査・分析

要件定義

パーソナライズ用開発(バッチ・API実装)

★サイト表示開始

自動配信システムでのパーソナライズ開発

★メール配信開始

★DWH利用開始

Page 32: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1電子書籍の会社です

会社概要・自己紹介

2利用全域と今日のお話の範囲

BookLiveにおけるAWSの利用範囲

3導入の検討と経営層へのアピール

何故Redshiftを使おうと思ったか

4DWHの必要性と課題の解決方法

DWHの構築とパーソナライズ実装

5AWSへの印象や苦労したこと

プロジェクトを進めた結果

6今後の展望

最後に

Page 33: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

5.プロジェクトを進めた結果 ~企画者側の視点から~

1. リアルタイムに変化するレコメンドが実現!

2. レコメンドを利用した他施策の実施も!

3. 蓄積したデータを利用した分析が可能に!

push通知でのレコメンド

メールでのレコメンド

※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Page 34: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

5.プロジェクトを進めた結果 ~企画者側の視点から~

社内でシステム構築が実現している汎用性・拡張性がともに高く、開発工数が抑えられている

ことにより

効果が高いパーソナライズ施策を、

コストを掛けずに開発し、収益の最大化が出来るようになった

Page 35: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

5.プロジェクトを進めた結果 ~開発側の視点から~

サービスの提供に注力できる

新しいマネージドサービスが次々に出てくる

DevOpsがやりやすい

モチベーションの向上

スケールアップ・アウトが非常に容易

AWSサービス同士の親和性が高い

本番と同じ構成の試験環境が作りやすい

保守や拡張がしやすい

数値が可視化されておりシミュレーションが容易

開発サーバーは営業時間外は落とすなど工夫可

オンデマンドとリザーブドの使い分けがしやすい

流動的なコスト削減

リザーブド=年間契約のこと

AWSがないと生きていけなくなる

(打倒したいのに…)

デメリット

Page 36: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

5.プロジェクトを進めた結果

導入にあたり、苦労したこともあります。

Page 37: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

5.プロジェクトを進めた結果 ~導入にあたり、苦労したこと~

1. ベストプラクティスが分からない

自社システムに組み込む場合の最適なアーキテクトについては試

行錯誤が必要となります。

ただ、窓口担当者の方も非常に優秀なエンジニアの方であるため、

随時的確なアドバイスを頂く事が可能でした。

2. 古いアプリなどが切り捨てられている

Kinesisを利用する際、提供されているライブラリを利用するとIE8や

Android2.3で不具合がある(サポート外)等の問題が出ました。

中にはライブラリを使うのを諦めるなど、美しくない対応をしたものも

あります。

3. 想定通りのパフォーマンスが出ない事がある

Redshiftへの大量UPDATEや、IOPSを考慮せず各サービスを使うな

どするとパフォーマンスが出ずに苦労することがあります。

当たり前のことですが、ある程度各サービスの特徴をとらえた上で

正しく利用する必要があります。

様々な課題にアドバイス頂いたAmazonの

山田 俊則様・篠原 英治様に感謝の意を表して

~ S p e c i a l T h a n k s ~

Page 38: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

1電子書籍の会社です

会社概要・自己紹介

2利用全域と今日のお話の範囲

BookLiveにおけるAWSの利用範囲

3導入の検討と経営層へのアピール

何故Redshiftを使おうと思ったか

4DWHの必要性と課題の解決方法

DWHの構築とパーソナライズ実装

5AWSへの印象や苦労したこと

プロジェクトを進めた結果

6今後の展望

最後に

Page 39: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

パーソナライズ(Redshift利用)領域はさらに拡大しています

push通知でのレコメンド メールでのレコメンドユーザー作成リストでの

レコメンド

6.最後に ~今後の展開①~

ユーザーの購入傾向を元にしたレコメンド

Page 40: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

新しいマネージドサービスもどんどん利用する予定です

6.最後に ~今後の展開②~

7月から利用開始予定6月から利用開始予定

Amazon EMRAmazon Inspector AWS LambdaAmazon Aurora

Page 41: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

BookLiveでは

エンジニアの技術力向上の一環として

他社との技術交流会(勉強会)も行っています。

エンジニアの皆様、興味があればぜひご連絡ください!

6.最後に

Page 42: 現場担当が語る! · その後、トップに戻ると… 見た作品に対応したレコメンド が出る! ※BookLive!サイトの表示画像から掲載. 書籍に関する権利は各権利元に帰属します

Copyright© BookLive Co., Ltd.

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

https://booklive.jp/