Address
:
[go:
up one dir
,
main page
]
Include Form
Remove Scripts
Accept Cookies
Show Images
Show Referer
Rotate13
Base64
Strip Meta
Strip Title
Session Cookies
More Web Proxy on the site http://driver.im/
Submit Search
東急ハンズのクラウドデザインパターン アーキテクチャー編
•
Download as PPTX, PDF
•
77 likes
•
21,786 views
一成 田部井
Follow
JAWS DAYS 2015 Big Track 「東急ハンズのクラウドデザインパターン」 アーキテクチャー部分の資料です。
Read less
Read more
1 of 25
Download now
Downloaded 145 times
More Related Content
東急ハンズのクラウドデザインパターン アーキテクチャー編
1.
@ Copyright HANDSLAB
INC All Rights Reserved. 2015年3月22日 東急ハンズのクラウドデザインパターン アーキテクチャー編 ハンズラボ株式会社 チーフエンジニア 田部井 一成
2.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 1 自己紹介 名前:田部井 一成 所属:ハンズラボ株式会社 担当:外販案件、特にポイントシステム 特技:シェル芸、電子工作 趣味:ビールクラフト、燻製、歩く、寝る 好きなAWSサービス:
3.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 2 今日お話したいこと 新基幹システムのアーキテクチャーについて
4.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 3 東急ハンズの基幹システム? 本資料では、MDシステムのこと MD:マーチャンダイジング 商品管理、在庫管理、売上管理・・・ 小売業にとっての根幹業務を担うシステム!
5.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 4 開発チーム 東急ハンズの内製化を担当してきた 元店舗従業員も開発 RDB?オブジェクト指向? ネイティブなエンジニアと協業 ユニケージ開発手法 バックエンドの言語はbash データはテキストファイルで保持 ミドルウェアやパッケージを極力排除 フロントエンドはHTML5 レガシーなバックエンドに、フロントは極力最新の WEB技術を組み合わせる
6.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 5 ミッション ① リアルタイム 大原則:フルマネージドサービスを使い倒す! ② 夜間バッチレス ③ スケールアウト
7.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 6 ミッション ① リアルタイム 大原則:フルマネージドサービスを使い倒す! 即時のリアルデータによる、接客向上 将来のEC連携・統合への布石 即時性の必要なデータをDynamoDBに
8.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 7 ①リアルタイム FTPd S3Bucket SQS Worker SNS SQS Worker SQS Worker POSレジ 新POS 売上テーブル 在庫テーブル 新PDA/店舗PC店舗 WEB/APP サーバ レジ売上から在庫・売上データ更新フローの例
9.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 8 ①リアルタイム レジ売上から在庫・売上データ更新フローの例 既存POSからの売上受信 は、POSから直接FTPサー バへ保存。 S3 Event Notifications を 利用し、トランザクションの 書き込みをSQSへキューイ ング。 FTPd S3Bucket SQS Worker SNS SQS Worker SQS Worker POSレジ 新POS 売上テーブル 在庫テーブル 新PDA/店舗PC店舗 WEB/APP サーバ
10.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 9 ①リアルタイム Workerはキューをクロール し、処理区分に応じたSNSト ピックを発行。 SNSは更新対象のSQSへ キューイング。 今回は売上なので、売上と 在庫それぞれのSQSへ。 FTPd S3Bucket SQS Worker SNS SQS Worker SQS Worker POSレジ 新POS 売上テーブル 在庫テーブル 新PDA/店舗PC店舗 WEB/APP サーバ レジ売上から在庫・売上データ更新フローの例
11.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 10 ①リアルタイム Workerは自分の担当の キューをクロールし、 DynamoDBの在庫/売上を 更新する。 店舗従業員は、各自の PDA/店舗PCからアクセス する。 AppサーバはDynamoDB から在庫/売上を取得すると、 現時点の数量がリアルタイ ムに表示される FTPd S3Bucket SQS Worker SNS SQS Worker SQS Worker POSレジ 新POS 売上テーブル 在庫テーブル 新PDA/店舗PC店舗 WEB/APP サーバ レジ売上から在庫・売上データ更新フローの例
12.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 11 ①リアルタイム ポイント 更新処理のトリガーをS3に S3に1ファイル置くだけで、後続処理はよしなに 複数SQSへのキューイングはSNSで 例外処理の省力化 SNSがバッファになる
13.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 12 ミッション 大原則:フルマネージドサービスを使い倒す! ② 夜間バッチレス 夜中に電話で起こされるのはもう嫌・・・ 確定データ作成処理のお守りをする毎日 完了遅延で開店ができない・・・ 日中も常に確定データを作り続け、店舗業務終了と 同時に日次データが完成
14.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 13 ②夜間バッチレス FTPd S3Bucket POSレジ 新POS レジ売上から日次データ更新までの流れ Worker 日次データ 集計データ 新PDA/店舗PC店舗 WEB/APP サーバ 既存POSからの売上受信 は、POSから直接FTPサー バへ保存。 1トランザクション1ファイル で、リアルタイム用とは別の Bucketに保存する
15.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 14 ②夜間バッチレス FTPd S3Bucket POSレジ 新POS レジ売上から日次データ更新までの流れ Worker 日次データ 集計データ 新PDA/店舗PC店舗 WEB/APP サーバ WorkerはS3上の取引ファイル を集めて日次・集計処理。 一日分の取引を、日中常に洗い 替え処理するイメージ。 日次データは当日発生した トランザクションのまとめファ イル。 集計データは、過去データ も含めた、計算済みファイル。
16.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 15 ②夜間バッチレス FTPd S3Bucket POSレジ 新POS レジ売上から日次データ更新までの流れ Worker 日次データ 集計データ 新PDA/店舗PC店舗 WEB/APP サーバ 店舗Appサーバは、過去 データの参照や、リアルタイ ム性が不要な情報は、S3か らファイルを取得する。 店舗業務終了後、サーバを 停止する。 店舗の業務が終わり、デー タが発生しなくなったら、 Workerを止める。 最後の日次処理データ=確 定データ。
17.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 16 ②夜間バッチレス FTPd S3Bucket POSレジ 新POS レジ売上から日次データ更新までの流れ Worker 日次データ 集計データ 新PDA/店舗PC店舗 WEB/APP サーバ 店舗Appサーバは、過去 データの参照や、リアルタイ ム性が不要な情報は、S3か らファイルを取得する。 店舗業務終了後、サーバを 停止する。 店舗の業務が終わり、デー タが発生しなくなったら、 Workerを止める。 最後の日次処理データ=確 定データ。 詳しくはWEBで!
18.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 17 ②夜間バッチレス ポイント DynamoDBを使わない 集計処理や洗い替えには向かない RDSを使わない 大規模にスケールできない そもそもテキストファイル文化 S3にデータを保存する謎の安心感
19.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 18 ミッション 大原則:フルマネージドサービスを使い倒す! ③ スケールアウト 今後の新システムの全店導入をスムーズに 新店オープンでも処理能力の心配を無しに EC連動/統合を視野にいれる
20.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 19 ③スケールアウト SQS/SNSの活用で、各部が疎結合/ステートレス! AutoScaling、DynamoDB、S3でデータ/処理能力がオートスケール! S3Bucket Worker 日次データ 集計データ FTPd S3Bucket SQS Worker SNS SQS Worker SQS Worker POSレジ 新POS 売上テーブル 在庫テーブル 新PDA/店舗PC店舗 WEB/APP サーバ ASG ASG ASG ASG ASG キュー数で オートスケール! 負荷で オートスケール!
21.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 20 ③スケールアウト SQS/SNSの活用で、各部が疎結合/ステートレス! AutoScaling、DynamoDB、S3でデータ/処理能力がオートスケール! S3Bucket Worker 日次データ 集計データ FTPd S3Bucket SQS Worker SNS SQS Worker SQS Worker POSレジ 新POS 売上テーブル 在庫テーブル 新PDA/店舗PC店舗 WEB/APP サーバ ASG ASG ASG ASG ASG キュー数で オートスケール! 負荷で オートスケール! 売上高1兆円規模でも対応可能!! ※2013年3月期 売上高 828億万円(Wikipediaより)
22.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 21 ③スケールアウト 1兆円システムへの懸念点・・・ S3Bucket Worker 日次データ 集計データ FTPd S3Bucket SQS Worker SNS SQS Worker SQS Worker POSレジ 新POS 売上テーブル 在庫テーブル 新PDA/店舗PC店舗 WEB/APP サーバ ASG ASG ASG ASG ASG 1Bucketが受けられる書き 込みリクエストは、100件/秒 まで SNSは毎秒3000件を超え るとAWSの中の人に怒られ る SQSも毎秒3000件を超える とAWSの中の人に怒られる
23.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 22 まとめ ハンズラボでは、こういう、ちゃんとした、基幹システムもつく れるということや
24.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 23 まとめ ハンズラボでは、こういう、ちゃんとした、基幹システムもつく れるということや しかも、既存の考え方にとらわれず、常に 新しいソリューションを追い求めます!
25.
TW:@HandsLabInc #jawsug #jawsdays
#handslab 24 今後の予定 新MDシステムの全店舗展開 新POSの開発 ECとの連動、統合 そして、外販へ・・・ 今後も目玉開発が目白押し! ハンズラボでは、一緒に新アーキテクチャーを構築し てくれるメンバーを募集してます!
Editor's Notes
#5:
その分止まってはいけない感が強い レガシーな仕組みがまだまだ多い オンプレミス、閉域網、Win2003・・・ 弊社で、内製でクラウド化
#6:
これからは、これらにAWSのサービスを組み合わせて行きたい
#7:
フルマネージドを使い倒す! →さらに具体的な3つの目標があった
#13:
間に構成要素がたくさんあるのに、リアルタイム?
#14:
確定データの話 一日のデータをためてから確定処理→夜中にエラー →確定処理が遅延、開店できない。もしくはプランB
#17:
データの構造とかわかりにくい? 詳しくはWEBで!
#18:
データの構造とかわかりにくい? 詳しくはWEBで!
Download