rabbit-slide-naoa-ruby-kansai-20140531 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 6303b6311c319dbca0d6b8f12173a3eab0682ce1
4
+ data.tar.gz: c2808e312aced40cc829946a5749e2c150eb3e36
5
+ SHA512:
6
+ metadata.gz: 45fec1ec1d9690ac5b6cec2366258aa83ca233d46e67f3d90de0018a89e4cfb00b2c113e083a4427456d686c128a4065d9323926dcb630f064038984e2527881
7
+ data.tar.gz: 0207f05e42a85e3efaf9975f6a3c1b0654b9e6f0eae5b7a77d5a3bc0e7755f270dad810feef340a2e745af735b3a40ae048b965c5c30a77ea7c3253931aa8de3
data/.rabbit ADDED
@@ -0,0 +1 @@
1
+ ruby-kansai-20140531.rab
data/README.rd ADDED
@@ -0,0 +1,24 @@
1
+ = Rroongaの全文検索性能
2
+
3
+ Ruby初心者がRroongaの全文検索の性能を試してみる
4
+
5
+ == 作者向け
6
+
7
+ === 表示
8
+
9
+ rake
10
+
11
+ === 公開
12
+
13
+ rake publish
14
+
15
+ == 閲覧者向け
16
+
17
+ === インストール
18
+
19
+ gem install rabbit-slide-naoa-ruby-kansai-20140531
20
+
21
+ === 表示
22
+
23
+ rabbit rabbit-slide-naoa-ruby-kansai-20140531.gem
24
+
data/Rakefile ADDED
@@ -0,0 +1,17 @@
1
+ require "rabbit/task/slide"
2
+
3
+ # Edit ./config.yaml to customize meta data
4
+
5
+ spec = nil
6
+ Rabbit::Task::Slide.new do |task|
7
+ spec = task.spec
8
+ # task.spec.files += Dir.glob("doc/**/*.*")
9
+ # task.spec.files -= Dir.glob("private/**/*.*")
10
+ # task.spec.add_runtime_dependency("YOUR THEME")
11
+ end
12
+
13
+ desc "Tag #{spec.version}"
14
+ task :tag do
15
+ sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
16
+ sh("git", "push", "--tags")
17
+ end
data/config.yaml ADDED
@@ -0,0 +1,20 @@
1
+ ---
2
+ id: ruby-kansai-20140531
3
+ base_name: ruby-kansai-20140531
4
+ tags:
5
+ - rabbit
6
+ presentation_date:
7
+ version: 1.0.0
8
+ licenses: []
9
+ slideshare_id:
10
+ speaker_deck_id:
11
+ ustream_id:
12
+ vimeo_id:
13
+ youtube_id:
14
+ author:
15
+ markup_language: :rd
16
+ name: Naoya Murakami
17
+ email: naoya@createfield.com
18
+ rubygems_user: naoa
19
+ slideshare_user: naoa_y
20
+ speaker_deck_user: naoa_y
@@ -0,0 +1,119 @@
1
+ = Rroongaの全文検索性能
2
+ # : subtitle
3
+ # Ruby初心者がRroongaの全文検索の性能を試してみる
4
+ : author
5
+ Naoya(@naoa_y)
6
+ # : institution
7
+ # 所属
8
+ : content-source
9
+ 61st Ruby/Rails勉強会@関西 LT
10
+ : date
11
+ 2014/05/31
12
+ : allotted-time
13
+ 5m
14
+ : theme
15
+ lightning-clear-blue
16
+
17
+ = 自己紹介
18
+
19
+ * Naoya (@naoa_y)
20
+ * 大学は情報系
21
+ * 新卒で3年半ほど金融系のユーザSIでインフラSE
22
+ * 現在は3年半ほどITと無縁の仕事
23
+ * Ruby歴は実働数日ほど
24
+
25
+ = 国産の全文検索エンジンGroongaって知ってますか?
26
+ = Groongaって?
27
+ * C言語で書かれた高速な全文検索ライブラリ/サーバ
28
+ * MySQLのストレージエンジンとして実装されたMroonga
29
+ * Rubyらしい記法でRubyから全文検索できるRroonga
30
+
31
+ = 個人でMroongaでそこそこ大規模な全文検索Webサービスを作りました。
32
+ = Groongaは少ないハードウェア資産でもかなり高速な全文検索ができる!
33
+ = デスクトップ向けの全文検索アプリをRubyで作りたい!
34
+
35
+ = Rroongaって?
36
+ * Rroongaのほかにサーバがなくともローカルのみで高速な全文検索機能が実現可能
37
+ * アプリに組み込みやすい。イメージとしてはSQLiteみたいなもの
38
+
39
+ = Rroongaの利用例
40
+ * るりまサーチ
41
+ * Rubyのリファレンスマニュアルを検索できるWebアプリ
42
+ http://docs.ruby-lang.org/ja/search/
43
+ * Milkode
44
+ * ソースコード検索エンジン、検索アプリ http://milkode.ongaeshi.me/ (るびま0045号に記事掲載)
45
+
46
+ = 実際のところRroongaってどのくらい速いの?
47
+ = Rubyだし言うほどじゃ・・・?
48
+ = 試してみよう!
49
+
50
+ = 検証環境
51
+ * MacBook Air
52
+ * CPU 1.4GHzデュアルコアIntel Core i5
53
+ * Memory 4GB
54
+ * SSD 128GB
55
+
56
+ = 検証方法
57
+ * 日本語Wikipediaのカテゴリ上位100件を検索
58
+ * カテゴリ上位100件で日本語Wikipediaのタイトルと本文を全文検索
59
+ * 検証プログラム http://github.com/naoa/rroonga-wikipedia-bench
60
+
61
+ = 検証1
62
+ # RT
63
+ caption = 日本語Wikipedia 1万件 XML 168MB
64
+
65
+ , SQLite3, Rroonga
66
+
67
+ カテゴリ, 2314 msec, 47 msec
68
+ 本文, 103 msec, 6 msec
69
+
70
+ = 検証2
71
+ # RT
72
+ caption = 日本語Wikipedia 5万件 XML 512MB
73
+
74
+ , SQLite3, Rroonga
75
+
76
+ カテゴリ, 9339 msec, 88 msec
77
+ 本文, 341 msec, 30 msec
78
+
79
+ = 検証3
80
+ # RT
81
+ caption = 日本語Wikipedia 183万件(全件) XML 17GB
82
+
83
+ , Rroonga
84
+
85
+ カテゴリ, 1601 msec
86
+ 本文, 56 msec
87
+
88
+ = 検証4
89
+ # RT
90
+ caption = 日本語Wikipedia 366万件(全件*2) XML 33GB
91
+
92
+ , Rroonga
93
+
94
+ カテゴリ, 3087 msec
95
+ 本文, 113 msec
96
+
97
+ = 検証5
98
+ * ...
99
+
100
+ = MacBook Airのディスクが逼迫したのでここまで!
101
+
102
+ = Mroongaでの経験則から言うとこの数倍ぐらいなら高速に全文検索できると思います。(日本語でBigramの場合。)
103
+
104
+ = Mroongaを使った全文検索のWebサービスでは、最大で400GB超、1000万レコード超でもサーバ1台でそこそこ高速に検索できています。
105
+
106
+ = Rroongaでは、高速な全文検索のほかに位置情報検索機能もあります。
107
+ = 先日、HerokuでRroongaが使えるビルドパックがリリースされています。
108
+ = Rroongaを使ってみたくなりましたよね?
109
+
110
+ = おわりに
111
+ * 2014/6/27(金)19:00から神戸でGroongaに関する勉強会をします。
112
+ * Groongaに興味が沸いた方は是非参加してください!
113
+
114
+ = おわりに
115
+ * Rroonga,Rabbit等の作者、Ruby/Groongaコミッタの須藤さん(@ktou)が東京から来てくれます!
116
+ * 2014/6/28(土)に大阪でGroongaに関するイベントができればと考えています。
117
+ * 会場提供等に協力していだける方がいたら嬉しいです。
118
+
119
+ = ありがとうございました
metadata ADDED
@@ -0,0 +1,63 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rabbit-slide-naoa-ruby-kansai-20140531
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Naoya Murakami
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-05-31 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
+ description: Ruby初心者がRroongaの全文検索の性能を試してみる
28
+ email:
29
+ - naoya@createfield.com
30
+ executables: []
31
+ extensions: []
32
+ extra_rdoc_files: []
33
+ files:
34
+ - ".rabbit"
35
+ - config.yaml
36
+ - Rakefile
37
+ - README.rd
38
+ - ruby-kansai-20140531.rab
39
+ - pdf/ruby-kansai-20140531-ruby-kansai-20140531.pdf
40
+ homepage: http://slide.rabbit-shocker.org/authors/naoa/ruby-kansai-20140531/
41
+ licenses: []
42
+ metadata: {}
43
+ post_install_message:
44
+ rdoc_options: []
45
+ require_paths:
46
+ - lib
47
+ required_ruby_version: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: '0'
52
+ required_rubygems_version: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: '0'
57
+ requirements: []
58
+ rubyforge_project:
59
+ rubygems_version: 2.0.14
60
+ signing_key:
61
+ specification_version: 4
62
+ summary: Rroongaの全文検索性能
63
+ test_files: []