[Groonga-commit] droonga/presentation-trbmeetup-droonga at 8aaf910 [master] Add more slides including conclusion

Back to archive index

YUKI Hiroshi null+****@clear*****
Fri Feb 6 12:03:29 JST 2015


YUKI Hiroshi	2015-02-06 12:03:29 +0900 (Fri, 06 Feb 2015)

  New Revision: 8aaf910f81de3ce6fec6e0ad390602ec2d8cf931
  https://github.com/droonga/presentation-trbmeetup-droonga/commit/8aaf910f81de3ce6fec6e0ad390602ec2d8cf931

  Message:
    Add more slides including conclusion

  Added files:
    images/application-with-groonga-rroonga.png
    images/groonga.png
  Modified files:
    fast-fulltext-search-in-ruby-groonga-rroonga-droonga.md
    images/application-with-groonga.png
    images/application-with-index-java.png
    images/application-with-index.png
    images/droonga.png
    images/groonga-rroonga.png
    images/groonga.odg

  Modified: fast-fulltext-search-in-ruby-groonga-rroonga-droonga.md (+66 -24)
===================================================================
--- fast-fulltext-search-in-ruby-groonga-rroonga-droonga.md    2015-02-05 19:21:50 +0900 (8b76163)
+++ fast-fulltext-search-in-ruby-groonga-rroonga-droonga.md    2015-02-06 12:03:29 +0900 (97b8bab)
@@ -150,7 +150,7 @@ and
 # Groonga
 
  * Fast fulltext search engine written in *C++*
- * Originally designed to search increasing huge numbers of comments (like Twitter)
+ * Originally designed to search increasing huge numbers of comments in "2ch" (like Twitter)
 
 # Groonga
 
@@ -158,34 +158,64 @@ and
    * Read/write lock-free
    * Parallel updating and searching, without penalty
    * Returns latest contents ASAP
- * No transaction, fragile
+ * No transaction
 
-# Groonga
+# Relations of services
+
+![](images/application-with-groonga.png){:relative_width="80"}
 
-Different usecases
+# Groonga's interfaces
+
+via command line interface
+
+~~~
+$ groonga="groonga /path/to/database/db"
+$ $groonga table_create --name Entries
+    --flags TABLE_PAT_KEY --key_type ShortText
+$ $groonga select --table Entries
+                  --query "title:@Ruby"
+~~~
 
-Groonga as a server
-: * Command line tool
-  * HTTP server
+# Groonga's interfaces
+
+via HTTP
+
+~~~
+$ groonga -d --protocol http --port 10041
+                            /path/to/database/db
+
+$ endpoint="http://groonga:10041"
+$ curl "${endpoint}/d/table_create?name=Entries&
+          flags=TABLE_PAT_KEY&key_type=ShortText"
+$ curl "${endpoint}/d/select?table=Entries&
+                          query=title:@Ruby"
+~~~
+
+# Groonga's interfaces
+
+Narrowly-defined "Groonga"
+: * CLI or server
 
 libgroonga
 : * In-process library
+  * Like as "better SQLite"
+
+# Groonga
 
+![](images/groonga.png){:relative_height="90"}
 
 # *R*roonga
 
- * Based on libgroonga
- * Low-level binding of Groonga for *Ruby*
- * Works like as "better SQLite"
-   for your application
+![](images/groonga-rroonga.png){:relative_height="90"}
 
-# Groonga and Rroonga
+# *R*roonga
 
-![](images/groonga-rroonga.png){:relative_height="90"}
+ * Based on libgroonga
+ * Low-level binding of Groonga for *Ruby*
 
 # Relations of services
 
-![](images/application-with-groonga.png){:relative_width="80"}
+![](images/application-with-groonga-rroonga.png){:relative_width="80"}
 
 # Usage of Rroonga
 
@@ -249,10 +279,10 @@ end
 
 # FYI: GrnMini
 
- * Lightweight wrapper for Rroonga
- * Limited features, easy to use
- * Good first step to try fulltext search on your Ruby product
-
+ * Lightweight wrapper
+   for Rroonga
+ * Limited features,
+   but easy to use
 
 # FYI: GrnMini
 
@@ -263,20 +293,22 @@ GrnMini::create_or_open("/tmp/bookmarks.db")
 
 items = GrnMini::Array.new("Items")
 items << { url:   "http://en.wikipedia.org/wiki/Ruby",
-           title: "Wikipedia" }
+           title: "Ruby - Wikipedia" }
 items << { url:   "http://www.ruby-lang.org/",
-           title: "Ruby" }
+           title: "Ruby Language" }
 
-ruby_items = items.select("title:Ruby")
+ruby_items = items.select("title:@Ruby")
 ~~~
 
-# *D*roonga
+Good first step to try fulltext search in your Ruby product.
+
+# For much more load...
 
 Groonga
-: works with single process on a computer
+: works with *single process* on a computer
 
 *D*roonga
-: works with multiple computers constructiong a Droonga cluster
+: works with *multiple computers* constructiong a Droonga cluster
 
 # Droonga
 
@@ -297,6 +329,8 @@ Groonga
 
 # Usage of Droonga
 
+Setup a Droonga node
+
 ~~~
 # base="https://raw.githubusercontent.com/droonga"
 # curl ${base}/droonga-engine/master/install.sh | \
@@ -310,12 +344,20 @@ Groonga
 
 # Usage of Droonga
 
+Fulltext search via HTTP
+(compatible to Groonga)
+
 ~~~
 $ endpoint="http://node0:10041"
 $ curl "${endpoint}/d/table_create?name=Store&
         flags=TABLE_PAT_KEY&key_type=ShortText"
 ~~~
 
+# Conclusion
+
+ * You can introduce fast fulltext search into your Ruby product easily, by a gem package, *"rroonga"* or *"grn_mini"*.
+ * For increasing load, there is one more choice *Droonga*.
+
 # References
 
 Sunspot

  Added: images/application-with-groonga-rroonga.png (+0 -0) 100644
===================================================================
(Binary files differ)

  Modified: images/application-with-groonga.png (+0 -0)
===================================================================
(Binary files differ)

  Modified: images/application-with-index-java.png (+0 -0)
===================================================================
(Binary files differ)

  Modified: images/application-with-index.png (+0 -0)
===================================================================
(Binary files differ)

  Modified: images/droonga.png (+0 -0)
===================================================================
(Binary files differ)

  Modified: images/groonga-rroonga.png (+0 -0)
===================================================================
(Binary files differ)

  Modified: images/groonga.odg (+0 -0)
===================================================================
(Binary files differ)

  Added: images/groonga.png (+0 -0) 100644
===================================================================
(Binary files differ)
-------------- next part --------------
HTML����������������������������...
다운로드 



More information about the Groonga-commit mailing list
Back to archive index