rabbit-slide-daijiro-groonga-night-4 2013.11.29.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.rabbit +1 -0
- data/README.md +4 -0
- data/Rakefile +10 -0
- data/cascaded_stream.png +0 -0
- data/components.png +0 -0
- data/config.yaml +20 -0
- data/distributed_search.png +0 -0
- data/droonga-introduction.rd +194 -0
- data/modules.png +0 -0
- data/partition_replica.png +0 -0
- data/pdf/groonga-night-4-droonga-introduction.pdf +0 -0
- data/realtime.png +0 -0
- data/stream_processor.png +0 -0
- data/theme.rb +3 -0
- metadata +86 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 59546dfca2a67955ba4b6ce7be143dbb8a0f1ae1
|
4
|
+
data.tar.gz: e34f58e555ff530e3e889fd4cbf56742972acf74
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f255591d0e8da23b37a532eaa866ac3f45d055cfcb71f6dbb16f3935cc5b5c445d20123b3e6467d15a9435cc99763d8dbe56ea9cbb65e5bc1ad78a49318b1457
|
7
|
+
data.tar.gz: 29c6ba9b60909dc34af4afd16bdbf2a0ca5f2071f7e0e0485cde63275366c26e45fb145db713159496b9ab0f98d6e0d7d3d88421e97756c0e2b3830d84147f60
|
data/.rabbit
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
droonga-introduction.rd
|
data/README.md
ADDED
data/Rakefile
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
require "rabbit/task/slide"
|
2
|
+
|
3
|
+
# Edit ./config.yaml to customize meta data
|
4
|
+
|
5
|
+
Rabbit::Task::Slide.new do |task|
|
6
|
+
# task.spec.licenses = ["CC BY-SA 3.0"]
|
7
|
+
task.spec.files += Dir.glob("theme.rb")
|
8
|
+
task.spec.files -= Dir.glob("*.pdf")
|
9
|
+
task.spec.add_runtime_dependency("rabbit-theme-groonga")
|
10
|
+
end
|
data/cascaded_stream.png
ADDED
Binary file
|
data/components.png
ADDED
Binary file
|
data/config.yaml
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
id: groonga-night-4
|
3
|
+
base_name: droonga-introduction
|
4
|
+
tags:
|
5
|
+
- rabbit
|
6
|
+
- groonga
|
7
|
+
- droonga
|
8
|
+
presentation_date:
|
9
|
+
version: 2013.11.29.0
|
10
|
+
licenses: []
|
11
|
+
|
12
|
+
slideshare_id:
|
13
|
+
speaker_deck_id:
|
14
|
+
author:
|
15
|
+
markup_language: :rd
|
16
|
+
name: Daijiro MORI
|
17
|
+
email: daijiro.mori@gmail.com
|
18
|
+
rubygems_user: daijiro
|
19
|
+
slideshare_user:
|
20
|
+
speaker_deck_user:
|
Binary file
|
@@ -0,0 +1,194 @@
|
|
1
|
+
= Droonga\nの\n紹介
|
2
|
+
: institution
|
3
|
+
未来検索ブラジル\n
|
4
|
+
森大二郎
|
5
|
+
: theme
|
6
|
+
.
|
7
|
+
|
8
|
+
= 今日の内容
|
9
|
+
|
10
|
+
* Droongaとは?
|
11
|
+
* 設計方針
|
12
|
+
* 実装
|
13
|
+
* 現状
|
14
|
+
* 今後の予定
|
15
|
+
|
16
|
+
= Droongaって何ですか?
|
17
|
+
|
18
|
+
* Distributedの"D"
|
19
|
+
* リアルタイム分散処理エンジン
|
20
|
+
* 分散データストア
|
21
|
+
* 分散型全文検索エンジン
|
22
|
+
|
23
|
+
= 設計方針
|
24
|
+
|
25
|
+
* ストリーム指向
|
26
|
+
* リアルタイム指向
|
27
|
+
* 可用性重視
|
28
|
+
* 拡張性重視
|
29
|
+
|
30
|
+
= ストリーム指向
|
31
|
+
|
32
|
+
= ストリーム処理
|
33
|
+
|
34
|
+
# image
|
35
|
+
# src = stream_processor.png
|
36
|
+
# relative_width = 100
|
37
|
+
|
38
|
+
= ストリーム処理
|
39
|
+
|
40
|
+
* 入出力:JSONデータストリーム
|
41
|
+
* 入力データを処理
|
42
|
+
* データストアを参照・更新\n
|
43
|
+
(必要なら)
|
44
|
+
* 0個以上のデータを出力
|
45
|
+
|
46
|
+
= カスケードして様々な処理
|
47
|
+
|
48
|
+
# image
|
49
|
+
# src = cascaded_stream.png
|
50
|
+
# relative_height = 100
|
51
|
+
|
52
|
+
= 分散検索エンジンも..
|
53
|
+
|
54
|
+
# image
|
55
|
+
# src = distributed_search.png
|
56
|
+
# relative_height = 100
|
57
|
+
|
58
|
+
= リアルタイム指向
|
59
|
+
|
60
|
+
= ここで言うリアルタイム:
|
61
|
+
|
62
|
+
* 情報が発生したら
|
63
|
+
* 必要とする人に
|
64
|
+
* 最短の遅延時間で届ける
|
65
|
+
|
66
|
+
...そのために
|
67
|
+
|
68
|
+
= 情報を受け取ったら
|
69
|
+
|
70
|
+
* 索引をすぐに更新する
|
71
|
+
* 購読してた人に即届ける
|
72
|
+
|
73
|
+
= リアルタイム指向
|
74
|
+
|
75
|
+
# image
|
76
|
+
# src = realtime.png
|
77
|
+
# relative_height = 100
|
78
|
+
|
79
|
+
= 可用性重視
|
80
|
+
|
81
|
+
* shared nothing
|
82
|
+
* レプリケーション
|
83
|
+
* 結果整合性重視
|
84
|
+
|
85
|
+
= 拡張性重視
|
86
|
+
|
87
|
+
* Pluginで機能拡張
|
88
|
+
* Rubyで書ける!
|
89
|
+
|
90
|
+
= Pluginで拡張
|
91
|
+
|
92
|
+
# image
|
93
|
+
# src = modules.png
|
94
|
+
# relative_height = 100
|
95
|
+
|
96
|
+
= 実装
|
97
|
+
|
98
|
+
二つのコンポートネント
|
99
|
+
|
100
|
+
* Protocol Adapter
|
101
|
+
* Droonga Engine
|
102
|
+
|
103
|
+
= コンポーネント
|
104
|
+
|
105
|
+
# image
|
106
|
+
# src = components.png
|
107
|
+
# relative_height = 100
|
108
|
+
|
109
|
+
= Droonga Engine
|
110
|
+
|
111
|
+
* 実処理エンジン
|
112
|
+
* 複数エンジンでクラスタを構成
|
113
|
+
* 通信: MessagePack Stream
|
114
|
+
* Fluentdのplugin
|
115
|
+
|
116
|
+
= Protocol Adapter
|
117
|
+
|
118
|
+
* APIを提供
|
119
|
+
* HTTP(Rest) API
|
120
|
+
* Socket.IO(WebSocket) API
|
121
|
+
* Node.JS上で動作
|
122
|
+
* Expressのplugin
|
123
|
+
|
124
|
+
= Engineのモジュール構成
|
125
|
+
|
126
|
+
# image
|
127
|
+
# src = modules.png
|
128
|
+
# relative_height = 100
|
129
|
+
|
130
|
+
= モジュール構成
|
131
|
+
|
132
|
+
* Adapter: JSONデータを整形
|
133
|
+
* Dispatcher: 処理フローを計画
|
134
|
+
* Distributor:データを配布
|
135
|
+
* Handler: 実処理
|
136
|
+
* Collector: データを集約
|
137
|
+
|
138
|
+
= クラスタの構成
|
139
|
+
|
140
|
+
* 1クラスタに複数のdataset
|
141
|
+
* dataset毎にpartition/replica数を設定
|
142
|
+
* ハッシュ値と世代でpartition
|
143
|
+
* catalog.json
|
144
|
+
* 全パーティション構成を記述
|
145
|
+
* 全ノードで共有
|
146
|
+
|
147
|
+
= クラスタの構成
|
148
|
+
|
149
|
+
# image
|
150
|
+
# src = partition_replica.png
|
151
|
+
# relative_height = 100
|
152
|
+
|
153
|
+
= 現状
|
154
|
+
|
155
|
+
* version0.7.0 リリース!
|
156
|
+
* http://droonga.org/
|
157
|
+
* 分散検索が一通り動作!
|
158
|
+
* チュートリアルあります
|
159
|
+
|
160
|
+
= 使い方
|
161
|
+
|
162
|
+
gem install fluent-plugin-droonga
|
163
|
+
fluentd.confとcatalog.jsonを準備
|
164
|
+
|
165
|
+
<source>
|
166
|
+
type forward
|
167
|
+
port 24224
|
168
|
+
</source>
|
169
|
+
<match taiyaki.message>
|
170
|
+
name localhost:24224/taiyaki
|
171
|
+
type droonga
|
172
|
+
proxy true
|
173
|
+
</match>
|
174
|
+
<match output.message>
|
175
|
+
type stdout
|
176
|
+
</match>
|
177
|
+
|
178
|
+
fluentd --config fluentd.conf &
|
179
|
+
fluent-cat taiyaki.message < jsons
|
180
|
+
|
181
|
+
= 今後の予定
|
182
|
+
|
183
|
+
:version0.8.0 (安定版)
|
184
|
+
2013/12/29リリース予定
|
185
|
+
:version0.9.0 (開発版)
|
186
|
+
Groonga Http Server互換機能\n
|
187
|
+
2014/1/29リリース予定
|
188
|
+
:version1.0.0 (安定版)
|
189
|
+
2014/2/9リリース予定
|
190
|
+
|
191
|
+
= 協力者募集してます!
|
192
|
+
|
193
|
+
* バグレポート
|
194
|
+
* Plugin開発
|
data/modules.png
ADDED
Binary file
|
Binary file
|
Binary file
|
data/realtime.png
ADDED
Binary file
|
Binary file
|
data/theme.rb
ADDED
metadata
ADDED
@@ -0,0 +1,86 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rabbit-slide-daijiro-groonga-night-4
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2013.11.29.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Daijiro MORI
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-12-03 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rabbit
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 2.0.2
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 2.0.2
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rabbit-theme-groonga
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
description: |
|
42
|
+
rabbit-slide-daijiro-groonga-night-4
|
43
|
+
email:
|
44
|
+
- daijiro.mori@gmail.com
|
45
|
+
executables: []
|
46
|
+
extensions: []
|
47
|
+
extra_rdoc_files: []
|
48
|
+
files:
|
49
|
+
- .rabbit
|
50
|
+
- config.yaml
|
51
|
+
- Rakefile
|
52
|
+
- README.md
|
53
|
+
- cascaded_stream.png
|
54
|
+
- components.png
|
55
|
+
- distributed_search.png
|
56
|
+
- modules.png
|
57
|
+
- partition_replica.png
|
58
|
+
- realtime.png
|
59
|
+
- stream_processor.png
|
60
|
+
- droonga-introduction.rd
|
61
|
+
- pdf/groonga-night-4-droonga-introduction.pdf
|
62
|
+
- theme.rb
|
63
|
+
homepage: http://slide.rabbit-shocker.org/authors/daijiro/groonga-night-4/
|
64
|
+
licenses: []
|
65
|
+
metadata: {}
|
66
|
+
post_install_message:
|
67
|
+
rdoc_options: []
|
68
|
+
require_paths:
|
69
|
+
- lib
|
70
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - '>='
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '0'
|
75
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
76
|
+
requirements:
|
77
|
+
- - '>='
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '0'
|
80
|
+
requirements: []
|
81
|
+
rubyforge_project:
|
82
|
+
rubygems_version: 2.0.3
|
83
|
+
signing_key:
|
84
|
+
specification_version: 4
|
85
|
+
summary: rabbit-slide-daijiro-groonga-night-4 ====================================
|
86
|
+
test_files: []
|