SlideShare a Scribd company logo
1 of 47
Rubyによる超大量データ配信
Ruby World Conference 2019
Supership CTO Daisuke Yamazaki
2
About me
Supership CTO Daisuke Yamazaki
Supership 取締役 CTO
2006年 スケールアウトを創業
2013年 買収されKDDIグループ入り
2015年 会社が合併し、Supershipとして再出発
3
今日話す順番
● 弊社の紹介
● Rubyでいかに大量配信システムを構築したか
● Rubyでいかにビジネスニーズと相対してきたか
今日のアジェンダは以下の通りです
(所要時間:30分)
4Confidential
会社概要
グループ会社
エージェンシー不正広告対策
KDDIから出資を受けるSupershipホールディングスの子会社として、
2015年11月設立。
KDDIの戦略子会社として、インターネット分野で幅広く事業を推進。
AI・データ分析
5
サービス概要
国内最大級広告配信プラットフォーム「Scaleout Ad Platform」の提供
Ad Platform上の主なプロダクト
▼Ad Generation
インプレッション数:約450億/月
登録メディア数:約6,000apps・sites
主要メディア:ジモティー、グノシー、ニコニコ動画、有名メディア多数
▼ScaleOut DSP
リクエスト数:約5,000億/月
6
About ScaleoutAdPlatformについて
カジュアル(=安価)にあらゆる広告配信ニーズを満
たすべく開発された純国産広告配信管理システム
(弊社メインプロダクト)
1. 現在総アクセスは月間一兆ほど
2. SSP/DSP/屋外広告/OEMなど、その他デジタル広
告配信に関することなら何でも対応可能
7
Rubyと配信システムについて
8
全体概要
Logs
広告案件データ(PostgreSQL)
配信管理
システム
集計管理
システム
配信部分
C++, ruby, swig
独自DB
管理システム
ほとんどRails
配信サーバ
C++サーバ
9
配信部分
Logs
広告案件データ(PostgreSQL)
配信管理
システム
集計管理
システム
配信部分
C++, ruby, swig
独自DB
管理システム
ほとんどRails
配信サーバ
C++サーバ
10
配信部分
• 複数プロセスがSharedMemoryを介してデー
タをやりとり
広告案件データ(SharedMemory)
C++サーバ
User Access
管理プログラム群
管理DB
11
データの管理はruby+swigで
管理DBからDBアップデート用DSLを作成し、各ADSVRで実
行することにより、Sharedメモリを書き換える
ADServer
DB
C++API,SwigなRuby
スクリプトを生成
ADServer
ADServer
各ADServer
loader = SoAdsScheduleLoader.new
loader.start_create_adsshm
loader.add_constraint(:constraintid => "0", :expression => "true;")
loader.add_constraint(:constraintid => "true_func", :expression => "true;")
loader.add_constraint(:constraintid => "rtb-common-template", :expression => <<-EOT)
(function() {
var result = candidate_context_get("rtb_result");
set_adrequest_cache("user-common-html", result.template_callback());
return true;
})();
EOT
12
データ反映用DSL(抜粋)
loader = SoAdsScheduleLoader.new
loader.start_create_adsshm
loader.add_constraint(:constraintid => "0", :expression => "true;”)
loader.add_constraint(:constraintid => "true_func", :expression => "true;”)
loader.add_constraint(:constraintid => "rtb-common-template", :expression => <<-EOT)
(function() {
var result = candidate_context_get("rtb_result");
set_adrequest_cache("user-common-html", result.template_callback());
return true;
})();
EOT
# DSL(Ruby Ofcource)
13
DSLがrubyでうれしいこと(その1)
tl = SoAdsTreeLoader.new
tl.add("2075500479","784200084")
tl.add("2075500768","2075500767")
tl.add("2075500505","2075500503")
SharedMemoryのデータレイアウトが変わってもDSLは一緒な
ので、バージョンアップ時のデータ移行が簡単
データの互換性をrubyレベルで担保できる
14
DSLがrubyでうれしいこと(その2)
has_var_loader_class = SoAdsVarLoader rescue false
vl = SoAdsVarLoader.new if has_var_loader_class
Rubyなので、メタプログラミングと組み合わせてやりたい放題
新機能をクラス化して、クラスが存在するときだけ
新機能を実行させるなど自由自在。
15
集計部分
• 配信サーバ側で一次処理、集計サーバでマージ集計
• 一次集計はログ形式を工夫することで速度を稼ぐ
• 分散処理な為、基本集計に関しては全部rubyでも間に合ってる
16
集計システム概要
広告案件データ(PostgreSQL)
マージ&ロード
集計システム
(Rails)
Logs
一次集計
(Ruby&C++Extention)
配信サーバ
processedLog
17
一次集計
配信サーバ側で一次処理を行い、データを圧縮
(数100MB→数100KBに)
またログ形式を工夫することで速度を稼ぐ
色々間に合わなかったので、ここはC++Extention
Logs
一次集計
(Ruby&C++Extention)
配信サーバ
processedLog
18
マージ集計
広告案件データ
(PostgreSQL)
マージ&ロード(ruby)
各ADSVRで一次集計されたデータをマージ集計し、
DBに流し込み(Rubyでもなんとかなってる)。
processedLog
19
スケーラビリティについてのまとめ
• だいたいrubyでなんとかなってる
• 速度がどうしても稼げないところはC++など
• 上手に役割分担させることで一兆アクセスでもいけてる
20
Rubyとビジネスについて
21
About Scaleout AdPlatform
ScaleOut
Ad Platform
Supership
Inc.
TagManagement
DMP
DSP
SSP
3rdParty AdServer
Video Reward
Video Ads
PMPOEM
22
デジタル広告業界を取り巻く状況
23
大企業とベンチャーの相性について
理想
ベンチャーの機動力と大企業のリソースを合わせてうまいことやる
現実
• 大企業そんなにスピード早くない
• 突然大企業側が本気出したときに案件のデカさに
ベンチャー側が耐えられない(こっちが非常に多い!)
24
ベンチャーとして戦い続けるにはどうすればいいか?
起業前に1ヶ月ほど考えた
25
大企業と協業するにあたって出した結論
• 超スケーラビリティがあって
• 超柔軟性があって
• 超落ちない
超すごいシステムがあれば大企業の要望に答えられる
26
実装について考えたこと
27
超すごいシステムを作るにあたって考えたこと
普通にプログラムを書いただけだと、普通のプロダクトに
なってしまうだろう
→成功しているOSSやシステムを参考にすれば
何かしら知見が得られるはずと考えた
28
参考にしたポイント
1. 古くからあるOSS
→どうやって長い間成長できたのかを分析
→思想にたどり着けるはず
2. 新しく出たOSS
→既存の問題を解くべく現れたはず
→差分を見れば思想にたどり着けるはず
29
設計にあたって参考にしたOSSなど
• RAID
• qmail
• Emacs, Lisp
• (もちろん)Ruby, Rails
30
RAID
構成するコンポーネントが不安定だからとい
って全体の安定性を諦める必要はない
31
qmail
• Sendmailの対抗(今はPostfix?)
複数のプログラムがお互いを過度に信用
せず、協調してシステムを構築する
32
Emacs(Lisp), Firefox(JS)
描画エンジン+
EmacsLisp
描画エンジン+
JavaScript
言語を内蔵していて、機能をあとからじゃんじゃん足せる
33
Emacs(Lisp), Firefox(JS)
今時のユーザからのソフトウェアへの要求は余りに多く, プログラマ
にはほとんど予想しきれない. (略)ユーザの望みを完璧に叶えるソ
フトウェアをプログラマが供給できなくとも, プログラマには拡張で
きるソフトウェアを供給することはできる
(ポール・グラハム On Lispより)
34
なぜRuby及びRailsを選んだか?
会社立ち上げ当時(2006年)、開発機のOSはFreeBSD
で、言語はさておき、よいORMを探していた。
Catalystだ!→ CPAN地獄にはまり挫折
PHPだ! → ORMがほぼなかった(当時)
Javaだ! → PHPと同様
Rails? → インストール一発!AR最高!
ということでRails(当時1.1)になりました
ぶっちゃけたまたまですが、人にも異様に恵まれて
とてもよい選択だったと思います。
35
実際の実装について
36
広告システムの正体
「広告システムとは」
その瞬間の状況に応じた最適なコンテンツ
(= Markup Languageで記述された小さなテキスト片)を
超柔軟かつ超高速に選択し、配信し、集計できる仕組み
37
小さなHTML片?
広告クリエイティブの正体はテキストと素材データ
- Banner(gif,jpg,flash,text)
- TextMail
- 3rdParty Tag
- Video Ads
- InGame Ads
- Etc..
Text(Metadata)
+
Raw Material
(gif,jpg,swf,flv)
正体は?
38
ScaleoutAdPlatformの構成
コンテンツ配信管理システム(socdm.com)
(配信及びログ集計)
広告配信システム
広告アプリA 広告アプリB 広告アプリC
まず汎用の配信システムを作り、
その上に汎用の広告配信システムを作り、
更にその上に広告アプリとしてSSP/DSPを構築
39
なぜ別々に作らなかったか?
すでに数千億アクセスをさばいており新規のアプリも
頑強なシステムの上でアプリを作るため、安定性が高い
長い時間かけて練られて
実績もあるシステムが土台としてある
安定性が高いものが最初から作れる
コンテンツ配信管理システム(socdm.com)
(配信及びログ集計)
広告配信システム
広告アプリ1 広告アプリ2 NewApp
40
広告システムに求められる要件(再掲)
• 超スケーラビリティがあって
• 超柔軟性があって
• 超落ちない
配信サーバは当時Cで書かれてたので、
頻繁にアップデートしたくなかった。
→配信サーバに手を入れることなく任意の機能追加ができればいいと
考えた。
41
ビジネスロジックをシステムから分離させた
管理DBにビジネスロジックを登録するとADSVRに
自動でロードされる
(=新ロジックの実装にADSVRのVerUp必要なし)
ADServer
DB
(IncludingBusinessLogic)
BusinessLogic Description Language
ADServer
ADServer
各ADServer
loader = SoAdsScheduleLoader.new
loader.start_create_adsshm
loader.add_constraint(:constraintid => "0", :expression => "true;")
loader.add_constraint(:constraintid => "true_func", :expression => "true;")
loader.add_constraint(:constraintid => "rtb-common-template", :expression => <<-EOT)
(function() {
var result = candidate_context_get("rtb_result");
set_adrequest_cache("user-common-html", result.template_callback());
return true;
})();
EOT
42
ビジネスロジック記述言語?
loader.add_constraint(:constraintid => "rtb-common-template", :expression
=> <<-EOT)
(function() {
var result = candidate_context_get("rtb_result");
set_adrequest_cache("user-common-html", result.template_callback());
return true;
})();
EOT
ぶっちゃけJavaScriptです。
というかADSVRにJSエンジン積んでます(SpiderMonkey)
43
JavaScriptの嬉しさ
• JavaScriptなので、やりたい放題
• 設定するお客さんもまぁ許容してくれる(最初はSchemeとか検討し
ました)
• Google(v8)とかMozillaが勝手にエンジンを早くしてくれるかも?
→ビジネスロジックであるJSの生成はrubyで行ったわけですが、
実際それは非常にうまく機能し、大企業の要望を満たすことができま
した。
44
Yconbinator ポール・グラハムの言葉(その2)
Beating The Averages(普通のやつらの上を行け 2001年)
http://pactical-scheme.net/trans/beating-the-averages-j.html
私達のソフトウェアがユニークだったのは、それが主にLispと呼ばれ
る プログラミング言語で書かれていたからだ。 (略)そして、パワー
において劣る他の言語を使っている競争相手に対して、 Lispは強力な
アドバンテージとなった。
45
当時(2006年)私が思ったこと
あれ?ポール・グラハムはLispでライバルを蹴散らしたけど、
それって当時Ruby/Rails相当をもってたってことじゃない?
→もう確かめる方法はないのですが、私にとってのLispはRubyで、
実際戦い抜くことができてます。たぶんrubyでなかったら途中でビジ
ネスが頓挫していた可能性は高かったと思います。
46
まとめ
• Rubyで超大規模システムを構築することはもはや当たり前
• 起業は海の向こうだけの話ではなく、我々でも十分可能
(でも結構大変)
• プログラミングはエンジニアにパワーを与えてくれて、世界を変え
ることができる
47
ご清聴ありがとうございました

More Related Content

What's hot

さくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みさくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みTakeshi Ogawa
 
Elasticsearchを使うときの注意点 公開用スライド
Elasticsearchを使うときの注意点 公開用スライドElasticsearchを使うときの注意点 公開用スライド
Elasticsearchを使うときの注意点 公開用スライド崇介 藤井
 
セキュリティを楽しむ(CTFとbugbountyの始め方)
セキュリティを楽しむ(CTFとbugbountyの始め方)セキュリティを楽しむ(CTFとbugbountyの始め方)
セキュリティを楽しむ(CTFとbugbountyの始め方)kazkiti
 
今まで学び実践してきたこと
今まで学び実践してきたこと今まで学び実践してきたこと
今まで学び実践してきたことDaisuke Yamazaki
 
スケールアウト再考
スケールアウト再考スケールアウト再考
スケールアウト再考Daisuke Yamazaki
 
Ruby on Rails のキャッシュ機構について
Ruby on Rails のキャッシュ機構についてRuby on Rails のキャッシュ機構について
Ruby on Rails のキャッシュ機構についてTomoya Kawanishi
 
最近のやられアプリを試してみた
最近のやられアプリを試してみた最近のやられアプリを試してみた
最近のやられアプリを試してみたzaki4649
 
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テストTakahiro Moteki
 
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Satoshi Kubo
 
失敗事例で学ぶ負荷試験
失敗事例で学ぶ負荷試験失敗事例で学ぶ負荷試験
失敗事例で学ぶ負荷試験樽八 仲川
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxShota Shinogi
 
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話ichirin2501
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをなAmazon Web Services Japan
 
心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話Yusuke Hisatsu
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティスAmazon Web Services Japan
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 

What's hot (20)

pg_bigmを用いた全文検索のしくみ(後編)
pg_bigmを用いた全文検索のしくみ(後編)pg_bigmを用いた全文検索のしくみ(後編)
pg_bigmを用いた全文検索のしくみ(後編)
 
さくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みさくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組み
 
Elasticsearchを使うときの注意点 公開用スライド
Elasticsearchを使うときの注意点 公開用スライドElasticsearchを使うときの注意点 公開用スライド
Elasticsearchを使うときの注意点 公開用スライド
 
セキュリティを楽しむ(CTFとbugbountyの始め方)
セキュリティを楽しむ(CTFとbugbountyの始め方)セキュリティを楽しむ(CTFとbugbountyの始め方)
セキュリティを楽しむ(CTFとbugbountyの始め方)
 
今まで学び実践してきたこと
今まで学び実践してきたこと今まで学び実践してきたこと
今まで学び実践してきたこと
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
スケールアウト再考
スケールアウト再考スケールアウト再考
スケールアウト再考
 
Ruby on Rails のキャッシュ機構について
Ruby on Rails のキャッシュ機構についてRuby on Rails のキャッシュ機構について
Ruby on Rails のキャッシュ機構について
 
最近のやられアプリを試してみた
最近のやられアプリを試してみた最近のやられアプリを試してみた
最近のやられアプリを試してみた
 
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
 
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
 
失敗事例で学ぶ負荷試験
失敗事例で学ぶ負荷試験失敗事例で学ぶ負荷試験
失敗事例で学ぶ負荷試験
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
 
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
 
Serverless時代のJavaについて
Serverless時代のJavaについてServerless時代のJavaについて
Serverless時代のJavaについて
 
心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 

Similar to Ruby World Conference 2019 rubyによる超大量データ配信

検索サービス開発が絶対におもしろいと思う理由
検索サービス開発が絶対におもしろいと思う理由検索サービス開発が絶対におもしろいと思う理由
検索サービス開発が絶対におもしろいと思う理由Supership株式会社
 
Cloudfit 会社紹介
Cloudfit 会社紹介Cloudfit 会社紹介
Cloudfit 会社紹介Yuki Senuma
 
AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」
AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」
AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」KDDI
 
SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~
SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~
SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~Kachi Creo
 
株式会社デジタリフト採用説明資料
株式会社デジタリフト採用説明資料株式会社デジタリフト採用説明資料
株式会社デジタリフト採用説明資料Ryosuke Kakuma
 
株式会社FLINTERS - 会社紹介資料 - 20220614.pdf
株式会社FLINTERS - 会社紹介資料 - 20220614.pdf株式会社FLINTERS - 会社紹介資料 - 20220614.pdf
株式会社FLINTERS - 会社紹介資料 - 20220614.pdfssuseradf238
 
RIT_About_us
RIT_About_usRIT_About_us
RIT_About_usRIT
 
DBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームDBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームInsight Technology, Inc.
 
クラウドサービスを運営する上で活用している可視化のためのサービス・ツール
クラウドサービスを運営する上で活用している可視化のためのサービス・ツールクラウドサービスを運営する上で活用している可視化のためのサービス・ツール
クラウドサービスを運営する上で活用している可視化のためのサービス・ツールYusuke Tamukai
 
株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitch株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitchzeal32
 
[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例
[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例
[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例Amazon Web Services Japan
 
株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitch株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitchzeal32
 
株式会社FLINTERS_-_会社紹介資料_-_20220602.pdf
株式会社FLINTERS_-_会社紹介資料_-_20220602.pdf株式会社FLINTERS_-_会社紹介資料_-_20220602.pdf
株式会社FLINTERS_-_会社紹介資料_-_20220602.pdfssuseradf238
 
日本の中小企業のIT導入10年の振り返り
日本の中小企業のIT導入10年の振り返り日本の中小企業のIT導入10年の振り返り
日本の中小企業のIT導入10年の振り返りYuichi Morito
 
KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策
KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策
KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策schoowebcampus
 
SHIRASAGI Introduction OSC nagoya 2016
SHIRASAGI Introduction OSC nagoya 2016SHIRASAGI Introduction OSC nagoya 2016
SHIRASAGI Introduction OSC nagoya 2016Naokazu Nohara
 
ReChroma_採用資料
ReChroma_採用資料ReChroma_採用資料
ReChroma_採用資料ssuser404d17
 
Stackdriver を利用した実戦的なサーバ監視・運用方法
Stackdriver を利用した実戦的なサーバ監視・運用方法Stackdriver を利用した実戦的なサーバ監視・運用方法
Stackdriver を利用した実戦的なサーバ監視・運用方法Masahiro Haraoka
 

Similar to Ruby World Conference 2019 rubyによる超大量データ配信 (20)

検索サービス開発が絶対におもしろいと思う理由
検索サービス開発が絶対におもしろいと思う理由検索サービス開発が絶対におもしろいと思う理由
検索サービス開発が絶対におもしろいと思う理由
 
Cloudfit 会社紹介
Cloudfit 会社紹介Cloudfit 会社紹介
Cloudfit 会社紹介
 
AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」
AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」
AWS Summit 2016 「新規事業 "auでんき”をクラウドスピードでサービスイン」
 
SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~
SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~
SIビジネスを変えよう。~ Ruby+Ruby on RailsによるエンタープライズCloudアプリケーション事業とは~
 
株式会社デジタリフト採用説明資料
株式会社デジタリフト採用説明資料株式会社デジタリフト採用説明資料
株式会社デジタリフト採用説明資料
 
株式会社FLINTERS - 会社紹介資料 - 20220614.pdf
株式会社FLINTERS - 会社紹介資料 - 20220614.pdf株式会社FLINTERS - 会社紹介資料 - 20220614.pdf
株式会社FLINTERS - 会社紹介資料 - 20220614.pdf
 
RIT_About_us
RIT_About_usRIT_About_us
RIT_About_us
 
DBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームDBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォーム
 
Mito seminar 02
Mito seminar 02Mito seminar 02
Mito seminar 02
 
クラウドサービスを運営する上で活用している可視化のためのサービス・ツール
クラウドサービスを運営する上で活用している可視化のためのサービス・ツールクラウドサービスを運営する上で活用している可視化のためのサービス・ツール
クラウドサービスを運営する上で活用している可視化のためのサービス・ツール
 
株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitch株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.2.19) _zeal recruitment pitch
 
[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例
[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例
[よくわかるクラウドデータベース] Amazon RDS for SQL Server導入事例
 
株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitch株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitch
株式会社ジール_採用ピッチ資料(2024.3.15) _zeal recruitment pitch
 
株式会社FLINTERS_-_会社紹介資料_-_20220602.pdf
株式会社FLINTERS_-_会社紹介資料_-_20220602.pdf株式会社FLINTERS_-_会社紹介資料_-_20220602.pdf
株式会社FLINTERS_-_会社紹介資料_-_20220602.pdf
 
日本の中小企業のIT導入10年の振り返り
日本の中小企業のIT導入10年の振り返り日本の中小企業のIT導入10年の振り返り
日本の中小企業のIT導入10年の振り返り
 
KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策
KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策
KAIZEN流・ITスタートアップ1ケタメンバー採用のための具体策
 
Visual
VisualVisual
Visual
 
SHIRASAGI Introduction OSC nagoya 2016
SHIRASAGI Introduction OSC nagoya 2016SHIRASAGI Introduction OSC nagoya 2016
SHIRASAGI Introduction OSC nagoya 2016
 
ReChroma_採用資料
ReChroma_採用資料ReChroma_採用資料
ReChroma_採用資料
 
Stackdriver を利用した実戦的なサーバ監視・運用方法
Stackdriver を利用した実戦的なサーバ監視・運用方法Stackdriver を利用した実戦的なサーバ監視・運用方法
Stackdriver を利用した実戦的なサーバ監視・運用方法
 

Ruby World Conference 2019 rubyによる超大量データ配信

Editor's Notes

  1. エンジニアで起業して
  2. ほとんどrubyで書かれてる