rroonga 2.0.7-x86-mingw32 → 2.0.8-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ext/groonga/rb-grn.h +1 -1
- data/lib/1.8/groonga.so +0 -0
- data/lib/1.9/groonga.so +0 -0
- data/rroonga-build.rb +1 -1
- data/vendor/local/bin/groonga-benchmark.exe +0 -0
- data/vendor/local/bin/groonga.exe +0 -0
- data/vendor/local/bin/libgroonga-0.dll +0 -0
- data/vendor/local/bin/libmecab-1.dll +0 -0
- data/vendor/local/bin/libmsgpack-3.dll +0 -0
- data/vendor/local/bin/libmsgpackc-2.dll +0 -0
- data/vendor/local/bin/mecab-config +2 -2
- data/vendor/local/bin/mecab.exe +0 -0
- data/vendor/local/etc/groonga/httpd/groonga-httpd.conf +2 -2
- data/vendor/local/etc/groonga/synonyms.tsv +5 -0
- data/vendor/local/include/groonga/groonga.h +77 -4
- data/vendor/local/include/groonga/groonga/plugin.h +45 -15
- data/vendor/local/include/groonga/groonga/tokenizer.h +62 -12
- data/vendor/local/lib/groonga/plugins/query_expanders/tsv.a +0 -0
- data/vendor/local/lib/groonga/plugins/query_expanders/tsv.dll +0 -0
- data/vendor/local/lib/groonga/plugins/query_expanders/tsv.dll.a +0 -0
- data/vendor/local/lib/groonga/plugins/query_expanders/tsv.la +41 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.a +0 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.dll +0 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.dll.a +0 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.la +2 -2
- data/vendor/local/lib/groonga/plugins/table/table.a +0 -0
- data/vendor/local/lib/groonga/plugins/table/table.dll +0 -0
- data/vendor/local/lib/groonga/plugins/table/table.dll.a +0 -0
- data/vendor/local/lib/groonga/plugins/table/table.la +2 -2
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.a +0 -0
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll +0 -0
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll.a +0 -0
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.la +2 -2
- data/vendor/local/lib/libgroonga.a +0 -0
- data/vendor/local/lib/libgroonga.dll.a +0 -0
- data/vendor/local/lib/libgroonga.la +2 -2
- data/vendor/local/lib/libmecab.a +0 -0
- data/vendor/local/lib/libmecab.dll.a +0 -0
- data/vendor/local/lib/libmecab.la +1 -1
- data/vendor/local/lib/libmsgpack.a +0 -0
- data/vendor/local/lib/libmsgpack.dll.a +0 -0
- data/vendor/local/lib/libmsgpack.la +1 -1
- data/vendor/local/lib/libmsgpackc.a +0 -0
- data/vendor/local/lib/libmsgpackc.dll.a +0 -0
- data/vendor/local/lib/libmsgpackc.la +1 -1
- data/vendor/local/lib/pkgconfig/groonga.pc +4 -3
- data/vendor/local/libexec/mecab/mecab-cost-train.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-dict-gen.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-dict-index.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-system-eval.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-test-gen.exe +0 -0
- data/vendor/local/share/doc/groonga/en/html/.buildinfo +1 -1
- data/vendor/local/share/doc/groonga/en/html/_sources/contribution.txt +3 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/contribution/development/release.txt +23 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/install/centos.txt +24 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/install/debian.txt +3 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/install/fedora.txt +13 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/install/mac_os_x.txt +3 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/install/others.txt +3 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/install/solaris.txt +3 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/install/ubuntu.txt +42 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/install/windows.txt +26 -16
- data/vendor/local/share/doc/groonga/en/html/_sources/limitations.txt +12 -2
- data/vendor/local/share/doc/groonga/en/html/_sources/news.txt +96 -1
- data/vendor/local/share/doc/groonga/en/html/_sources/reference.txt +3 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/command.txt +20 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/{command_version.txt → command/command_version.txt} +0 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/command/output_format.txt +228 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/command/return_code.txt +110 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/commands/register.txt +59 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/commands/select.txt +2 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/function.txt +20 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/functions/geo_distance.txt +25 -8
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/functions/snippet_html.txt +120 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/indexing.txt +3 -1
- data/vendor/local/share/doc/groonga/{ja/html/_sources/reference/functions.txt → en/html/_sources/reference/query_expanders.txt} +3 -3
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/query_expanders/tsv.txt +153 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/server/http/comparison.txt +12 -2
- data/vendor/local/share/doc/groonga/en/html/_sources/spec/gqtp.txt +214 -0
- data/vendor/local/share/doc/groonga/en/html/characteristic.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/community.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution.html +11 -10
- data/vendor/local/share/doc/groonga/en/html/contribution/development.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/com.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/document.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/query.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/release.html +42 -19
- data/vendor/local/share/doc/groonga/en/html/contribution/development/test.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/documentation.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/documentation/c-api.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/documentation/i18n.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/report.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/development.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/development/travis-ci.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/genindex.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/geolocation_search.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/index.html +62 -52
- data/vendor/local/share/doc/groonga/en/html/install.html +7 -6
- data/vendor/local/share/doc/groonga/en/html/install/centos.html +26 -8
- data/vendor/local/share/doc/groonga/en/html/install/debian.html +8 -8
- data/vendor/local/share/doc/groonga/en/html/install/fedora.html +17 -8
- data/vendor/local/share/doc/groonga/en/html/install/mac_os_x.html +8 -8
- data/vendor/local/share/doc/groonga/en/html/install/others.html +8 -8
- data/vendor/local/share/doc/groonga/en/html/install/solaris.html +8 -8
- data/vendor/local/share/doc/groonga/en/html/install/ubuntu.html +47 -10
- data/vendor/local/share/doc/groonga/en/html/install/windows.html +25 -16
- data/vendor/local/share/doc/groonga/en/html/limitations.html +23 -13
- data/vendor/local/share/doc/groonga/en/html/news.html +175 -67
- data/vendor/local/share/doc/groonga/en/html/news/0.x.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news/1.0.x.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news/1.1.x.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news/1.2.x.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news/senna.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/objects.inv +0 -0
- data/vendor/local/share/doc/groonga/en/html/reference.html +43 -41
- data/vendor/local/share/doc/groonga/en/html/reference/api.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/api/grn_expr.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/cast.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/{commands.html → command.html} +49 -44
- data/vendor/local/share/doc/groonga/en/html/reference/{command_version.html → command/command_version.html} +46 -46
- data/vendor/local/share/doc/groonga/en/html/reference/command/output_format.html +356 -0
- data/vendor/local/share/doc/groonga/en/html/reference/command/return_code.html +248 -0
- data/vendor/local/share/doc/groonga/en/html/reference/commands/cache_limit.html +33 -33
- data/vendor/local/share/doc/groonga/en/html/reference/commands/check.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/clearlock.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/column_create.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/column_list.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/column_remove.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/define_selector.html +34 -34
- data/vendor/local/share/doc/groonga/en/html/reference/commands/defrag.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/delete.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/dump.html +30 -30
- data/vendor/local/share/doc/groonga/en/html/reference/commands/load.html +34 -34
- data/vendor/local/share/doc/groonga/en/html/reference/commands/log_level.html +34 -34
- data/vendor/local/share/doc/groonga/en/html/reference/commands/log_put.html +34 -34
- data/vendor/local/share/doc/groonga/en/html/reference/commands/log_reopen.html +36 -36
- data/vendor/local/share/doc/groonga/en/html/reference/commands/quit.html +31 -31
- data/vendor/local/share/doc/groonga/en/html/reference/commands/register.html +190 -0
- data/vendor/local/share/doc/groonga/en/html/reference/commands/select.html +92 -92
- data/vendor/local/share/doc/groonga/en/html/reference/commands/shutdown.html +30 -30
- data/vendor/local/share/doc/groonga/en/html/reference/commands/status.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/suggest.html +34 -34
- data/vendor/local/share/doc/groonga/en/html/reference/commands/table_create.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/table_list.html +30 -30
- data/vendor/local/share/doc/groonga/en/html/reference/commands/table_remove.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands/view_add.html +32 -32
- data/vendor/local/share/doc/groonga/en/html/reference/commands_not_implemented/add.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/commands_not_implemented/get.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/commands_not_implemented/set.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/executables.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/executables/grnslap.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/executables/grntest.html +6 -6
- data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-httpd.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-server-http.html +6 -6
- data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga-suggest-create-dataset.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/executables/groonga.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/{functions.html → function.html} +15 -9
- data/vendor/local/share/doc/groonga/en/html/reference/functions/edit_distance.html +13 -13
- data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_distance.html +98 -16
- data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_in_circle.html +8 -8
- data/vendor/local/share/doc/groonga/en/html/reference/functions/geo_in_rectangle.html +8 -8
- data/vendor/local/share/doc/groonga/en/html/reference/functions/now.html +8 -8
- data/vendor/local/share/doc/groonga/en/html/reference/functions/rand.html +13 -13
- data/vendor/local/share/doc/groonga/en/html/reference/functions/snippet_html.html +303 -0
- data/vendor/local/share/doc/groonga/en/html/reference/grn_expr.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/grn_expr/query_syntax.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/grn_expr/script_syntax.html +11 -11
- data/vendor/local/share/doc/groonga/en/html/reference/indexing.html +12 -12
- data/vendor/local/share/doc/groonga/en/html/reference/log.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference/output.html +10 -10
- data/vendor/local/share/doc/groonga/en/html/reference/pseudo_column.html +10 -10
- data/vendor/local/share/doc/groonga/en/html/reference/query_expanders.html +138 -0
- data/vendor/local/share/doc/groonga/en/html/reference/query_expanders/tsv.html +315 -0
- data/vendor/local/share/doc/groonga/en/html/reference/tokenizers.html +15 -15
- data/vendor/local/share/doc/groonga/en/html/reference/type.html +27 -27
- data/vendor/local/share/doc/groonga/en/html/search.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/searchindex.js +1 -1
- data/vendor/local/share/doc/groonga/en/html/server.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/server/gqtp.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/server/http.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/server/http/comparison.html +19 -8
- data/vendor/local/share/doc/groonga/en/html/server/http/groonga-httpd.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/server/http/groonga.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/spec.html +12 -11
- data/vendor/local/share/doc/groonga/en/html/spec/gqtp.html +412 -0
- data/vendor/local/share/doc/groonga/en/html/spec/search.html +22 -22
- data/vendor/local/share/doc/groonga/en/html/suggest.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/completion.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/correction.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/suggestion.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/troubleshooting.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/troubleshooting/different_results_with_the_same_keyword.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/data.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/drilldown.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/index.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/lexicon.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/match_columns.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/micro_blog.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/network.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/patricia_trie.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/query_expansion.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/search.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/.buildinfo +1 -1
- data/vendor/local/share/doc/groonga/ja/html/_sources/contribution.txt +3 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/contribution/development/release.txt +23 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/centos.txt +24 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/debian.txt +3 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/fedora.txt +13 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/mac_os_x.txt +3 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/others.txt +3 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/solaris.txt +3 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/ubuntu.txt +42 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/install/windows.txt +26 -16
- data/vendor/local/share/doc/groonga/ja/html/_sources/limitations.txt +12 -2
- data/vendor/local/share/doc/groonga/ja/html/_sources/news.txt +96 -1
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference.txt +3 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/command.txt +20 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/{command_version.txt → command/command_version.txt} +0 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/command/output_format.txt +228 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/command/return_code.txt +110 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/commands/register.txt +59 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/commands/select.txt +2 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/function.txt +20 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/functions/geo_distance.txt +25 -8
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/functions/snippet_html.txt +120 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/indexing.txt +3 -1
- data/vendor/local/share/doc/groonga/{source/reference/functions.txt → ja/html/_sources/reference/query_expanders.txt} +3 -3
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/query_expanders/tsv.txt +153 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/server/http/comparison.txt +12 -2
- data/vendor/local/share/doc/groonga/ja/html/_sources/spec/gqtp.txt +214 -0
- data/vendor/local/share/doc/groonga/ja/html/characteristic.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/community.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution.html +11 -10
- data/vendor/local/share/doc/groonga/ja/html/contribution/development.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/com.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/document.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/query.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/release.html +42 -19
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/test.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/documentation.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/c-api.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/i18n.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/report.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/development.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/development/travis-ci.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/genindex.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/geolocation_search.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/index.html +63 -53
- data/vendor/local/share/doc/groonga/ja/html/install.html +7 -6
- data/vendor/local/share/doc/groonga/ja/html/install/centos.html +26 -8
- data/vendor/local/share/doc/groonga/ja/html/install/debian.html +8 -8
- data/vendor/local/share/doc/groonga/ja/html/install/fedora.html +17 -8
- data/vendor/local/share/doc/groonga/ja/html/install/mac_os_x.html +8 -8
- data/vendor/local/share/doc/groonga/ja/html/install/others.html +8 -8
- data/vendor/local/share/doc/groonga/ja/html/install/solaris.html +8 -8
- data/vendor/local/share/doc/groonga/ja/html/install/ubuntu.html +45 -10
- data/vendor/local/share/doc/groonga/ja/html/install/windows.html +25 -16
- data/vendor/local/share/doc/groonga/ja/html/limitations.html +21 -11
- data/vendor/local/share/doc/groonga/ja/html/news.html +155 -68
- data/vendor/local/share/doc/groonga/ja/html/news/0.x.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news/1.0.x.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news/1.1.x.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news/1.2.x.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news/senna.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/objects.inv +0 -0
- data/vendor/local/share/doc/groonga/ja/html/reference.html +44 -42
- data/vendor/local/share/doc/groonga/ja/html/reference/api.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/api/grn_expr.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/cast.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/{commands.html → command.html} +48 -44
- data/vendor/local/share/doc/groonga/ja/html/reference/{command_version.html → command/command_version.html} +47 -47
- data/vendor/local/share/doc/groonga/ja/html/reference/command/output_format.html +331 -0
- data/vendor/local/share/doc/groonga/ja/html/reference/command/return_code.html +237 -0
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/cache_limit.html +33 -33
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/check.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/clearlock.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_create.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_list.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/column_remove.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/define_selector.html +34 -34
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/defrag.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/delete.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/dump.html +30 -30
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/load.html +34 -34
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_level.html +34 -34
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_put.html +34 -34
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/log_reopen.html +36 -36
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/quit.html +31 -31
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/register.html +183 -0
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/select.html +107 -107
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/shutdown.html +30 -30
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/status.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/suggest.html +37 -37
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_create.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_list.html +30 -30
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/table_remove.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands/view_add.html +32 -32
- data/vendor/local/share/doc/groonga/ja/html/reference/commands_not_implemented/add.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/commands_not_implemented/get.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/commands_not_implemented/set.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/executables.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/executables/grnslap.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/executables/grntest.html +6 -6
- data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-httpd.html +9 -9
- data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-server-http.html +6 -6
- data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga-suggest-create-dataset.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/executables/groonga.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference/{functions.html → function.html} +13 -9
- data/vendor/local/share/doc/groonga/ja/html/reference/functions/edit_distance.html +13 -13
- data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_distance.html +96 -15
- data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_in_circle.html +8 -8
- data/vendor/local/share/doc/groonga/ja/html/reference/functions/geo_in_rectangle.html +8 -8
- data/vendor/local/share/doc/groonga/ja/html/reference/functions/now.html +8 -8
- data/vendor/local/share/doc/groonga/ja/html/reference/functions/rand.html +13 -13
- data/vendor/local/share/doc/groonga/ja/html/reference/functions/snippet_html.html +281 -0
- data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr.html +12 -12
- data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr/query_syntax.html +12 -12
- data/vendor/local/share/doc/groonga/ja/html/reference/grn_expr/script_syntax.html +17 -17
- data/vendor/local/share/doc/groonga/ja/html/reference/indexing.html +12 -12
- data/vendor/local/share/doc/groonga/ja/html/reference/log.html +9 -9
- data/vendor/local/share/doc/groonga/ja/html/reference/output.html +13 -13
- data/vendor/local/share/doc/groonga/ja/html/reference/pseudo_column.html +10 -10
- data/vendor/local/share/doc/groonga/ja/html/reference/query_expanders.html +139 -0
- data/vendor/local/share/doc/groonga/ja/html/reference/query_expanders/tsv.html +278 -0
- data/vendor/local/share/doc/groonga/ja/html/reference/tokenizers.html +15 -15
- data/vendor/local/share/doc/groonga/ja/html/reference/type.html +27 -27
- data/vendor/local/share/doc/groonga/ja/html/search.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/searchindex.js +1 -1
- data/vendor/local/share/doc/groonga/ja/html/server.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/server/gqtp.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/server/http.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/server/http/comparison.html +17 -8
- data/vendor/local/share/doc/groonga/ja/html/server/http/groonga-httpd.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/server/http/groonga.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/spec.html +12 -11
- data/vendor/local/share/doc/groonga/ja/html/spec/gqtp.html +404 -0
- data/vendor/local/share/doc/groonga/ja/html/spec/search.html +22 -22
- data/vendor/local/share/doc/groonga/ja/html/suggest.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/completion.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/correction.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/suggestion.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/troubleshooting.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/troubleshooting/different_results_with_the_same_keyword.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/data.html +7 -7
- data/vendor/local/share/doc/groonga/ja/html/tutorial/drilldown.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/index.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/lexicon.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/match_columns.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/micro_blog.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/network.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/patricia_trie.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/query_expansion.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/search.html +5 -5
- data/vendor/local/share/doc/groonga/source/contribution.txt +3 -3
- data/vendor/local/share/doc/groonga/source/contribution/development/release.txt +23 -0
- data/vendor/local/share/doc/groonga/source/example/reference/commands/register/query_expanders_tsv.log +4 -0
- data/vendor/local/share/doc/groonga/source/example/reference/functions/geo_distance_distance_rectangle_across_equator.log +26 -0
- data/vendor/local/share/doc/groonga/source/example/reference/functions/geo_distance_distance_rectangle_across_meridian.log +26 -0
- data/vendor/local/share/doc/groonga/source/example/reference/functions/geo_distance_distance_rectangle_across_the_date_line.log +26 -0
- data/vendor/local/share/doc/groonga/source/example/reference/functions/snippet_html/usage.log +28 -0
- data/vendor/local/share/doc/groonga/source/example/reference/functions/snippet_html/usage_basic.log +29 -0
- data/vendor/local/share/doc/groonga/source/example/reference/functions/snippet_html/usage_setup.log +17 -0
- data/vendor/local/share/doc/groonga/source/example/reference/functions/snippet_html/usage_string_literal.log +28 -0
- data/vendor/local/share/doc/groonga/source/install/centos.txt +24 -3
- data/vendor/local/share/doc/groonga/source/install/debian.txt +3 -3
- data/vendor/local/share/doc/groonga/source/install/fedora.txt +13 -3
- data/vendor/local/share/doc/groonga/source/install/mac_os_x.txt +3 -3
- data/vendor/local/share/doc/groonga/source/install/others.txt +3 -3
- data/vendor/local/share/doc/groonga/source/install/solaris.txt +3 -3
- data/vendor/local/share/doc/groonga/source/install/ubuntu.txt +42 -3
- data/vendor/local/share/doc/groonga/source/install/windows.txt +26 -16
- data/vendor/local/share/doc/groonga/source/limitations.txt +12 -2
- data/vendor/local/share/doc/groonga/source/news.txt +96 -1
- data/vendor/local/share/doc/groonga/source/reference.txt +3 -3
- data/vendor/local/share/doc/groonga/source/reference/command.txt +20 -0
- data/vendor/local/share/doc/groonga/source/reference/{command_version.txt → command/command_version.txt} +0 -0
- data/vendor/local/share/doc/groonga/source/reference/command/output_format.txt +228 -0
- data/vendor/local/share/doc/groonga/source/reference/command/return_code.txt +110 -0
- data/vendor/local/share/doc/groonga/source/reference/commands/register.txt +59 -0
- data/vendor/local/share/doc/groonga/source/reference/commands/select.txt +2 -0
- data/vendor/local/share/doc/groonga/source/reference/function.txt +20 -0
- data/vendor/local/share/doc/groonga/source/reference/functions/geo_distance.txt +25 -8
- data/vendor/local/share/doc/groonga/source/reference/functions/snippet_html.txt +120 -0
- data/vendor/local/share/doc/groonga/source/reference/indexing.txt +3 -1
- data/vendor/local/share/doc/groonga/{en/html/_sources/reference/functions.txt → source/reference/query_expanders.txt} +3 -3
- data/vendor/local/share/doc/groonga/source/reference/query_expanders/tsv.txt +153 -0
- data/vendor/local/share/doc/groonga/source/server/http/comparison.txt +12 -2
- data/vendor/local/share/doc/groonga/source/spec/gqtp.txt +214 -0
- data/vendor/local/share/groonga/html/admin/js/groonga-admin.js +5 -2
- data/vendor/local/share/man/ja/man1/groonga.1 +1589 -218
- data/vendor/local/share/man/man1/groonga.1 +1685 -190
- metadata +66 -18
- data/vendor/local/share/doc/groonga/en/html/_sources/reference/commands.txt +0 -15
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference/commands.txt +0 -15
- data/vendor/local/share/doc/groonga/source/reference/commands.txt +0 -15
@@ -27,7 +27,7 @@ There are many differences between :doc:`groonga` and
|
|
27
27
|
+----------------------------+------------------------+----------------------+
|
28
28
|
| Gzip compression | x | o |
|
29
29
|
+----------------------------+------------------------+----------------------+
|
30
|
-
| POST | x |
|
30
|
+
| POST | x | o |
|
31
31
|
+----------------------------+------------------------+----------------------+
|
32
32
|
| HTTPS | x | o |
|
33
33
|
+----------------------------+------------------------+----------------------+
|
@@ -270,7 +270,17 @@ processed by groonga. You don't need to consider about other modules.
|
|
270
270
|
POST
|
271
271
|
----
|
272
272
|
|
273
|
-
|
273
|
+
You can load your data by POST JSON data. You need follow the
|
274
|
+
following rules to use loading by POST.
|
275
|
+
|
276
|
+
* `Content-Type` header value must be `application/json`.
|
277
|
+
* JSON data is sent as body.
|
278
|
+
* Table name is specified by query parameter such as ``table=NAME``.
|
279
|
+
|
280
|
+
Here is an example curl command line that loads two users `alice` and
|
281
|
+
`bob` to `Users` table::
|
282
|
+
|
283
|
+
% curl --data-binary '[{"_key": "alice"}, {"_key": "bob"}]' -H "Content-Type: application/json" "http://localhost:10041/d/load?table=Users"
|
274
284
|
|
275
285
|
HTTPS
|
276
286
|
-----
|
@@ -0,0 +1,214 @@
|
|
1
|
+
.. -*- rst -*-
|
2
|
+
|
3
|
+
.. highlightlang:: none
|
4
|
+
|
5
|
+
GQTP
|
6
|
+
====
|
7
|
+
|
8
|
+
GQTP is the acronym of Groonga Query Transfer Protocol. GQTP is the
|
9
|
+
original protocol for groonga.
|
10
|
+
|
11
|
+
Protocol
|
12
|
+
--------
|
13
|
+
|
14
|
+
GQTP is stateful client server model protocol. The following sequence
|
15
|
+
is one processing unit:
|
16
|
+
|
17
|
+
* Client sends a request
|
18
|
+
* Server receives the request
|
19
|
+
* Server processes the request
|
20
|
+
* Server sends a response
|
21
|
+
* Client receives the response
|
22
|
+
|
23
|
+
You can do zero or more processing units in a session.
|
24
|
+
|
25
|
+
Both request and response consist of GQTP header and body. GQTP header
|
26
|
+
is fixed size data. Body is variable size data and its size is stored
|
27
|
+
in GQTP header. The content of body isn't defined in GQTP.
|
28
|
+
|
29
|
+
.. _gqtp-header-spec:
|
30
|
+
|
31
|
+
GQTP header
|
32
|
+
^^^^^^^^^^^
|
33
|
+
|
34
|
+
GQTP header consists of the following unsigned integer values:
|
35
|
+
|
36
|
+
+----------------+-------+----------------------------+
|
37
|
+
| Name | Size | Description |
|
38
|
+
+================+=======+============================+
|
39
|
+
| ``protocol`` | 1byte | Protocol type. |
|
40
|
+
+----------------+-------+----------------------------+
|
41
|
+
| ``query_type`` | 1byte | Content type of body. |
|
42
|
+
+----------------+-------+----------------------------+
|
43
|
+
| ``key_length`` | 2byte | Not used. |
|
44
|
+
+----------------+-------+----------------------------+
|
45
|
+
| ``level`` | 1byte | Not used. |
|
46
|
+
+----------------+-------+----------------------------+
|
47
|
+
| ``flags`` | 1byte | Flags. |
|
48
|
+
+----------------+-------+----------------------------+
|
49
|
+
| ``status`` | 2byte | Return code. |
|
50
|
+
+----------------+-------+----------------------------+
|
51
|
+
| ``size`` | 4byte | Body size. |
|
52
|
+
+----------------+-------+----------------------------+
|
53
|
+
| ``opaque`` | 4byte | Not used. |
|
54
|
+
+----------------+-------+----------------------------+
|
55
|
+
| ``cas`` | 8byte | Not used. |
|
56
|
+
+----------------+-------+----------------------------+
|
57
|
+
|
58
|
+
All header values are encoded by network byte order.
|
59
|
+
|
60
|
+
The following sections describes available values of each header value.
|
61
|
+
|
62
|
+
The total size of GQTP header is 24byte.
|
63
|
+
|
64
|
+
``protocol``
|
65
|
+
""""""""""""
|
66
|
+
|
67
|
+
The value is always ``0xc7`` in both request and response GQTP header.
|
68
|
+
|
69
|
+
``query_type``
|
70
|
+
""""""""""""""
|
71
|
+
|
72
|
+
The value is one of the following values:
|
73
|
+
|
74
|
+
+-------------+--------+----------------------------+
|
75
|
+
| Name | Value | Description |
|
76
|
+
+=============+========+============================+
|
77
|
+
| ``NONE`` | 0 | Free format. |
|
78
|
+
+-------------+--------+----------------------------+
|
79
|
+
| ``TSV`` | 1 | Tab Separated Values. |
|
80
|
+
+-------------+--------+----------------------------+
|
81
|
+
| ``JSON`` | 2 | JSON. |
|
82
|
+
+-------------+--------+----------------------------+
|
83
|
+
| ``XML`` | 3 | XML. |
|
84
|
+
+-------------+--------+----------------------------+
|
85
|
+
| ``MSGPACK`` | 4 | MessagePack. |
|
86
|
+
+-------------+--------+----------------------------+
|
87
|
+
|
88
|
+
This is not used in request GQTP header.
|
89
|
+
|
90
|
+
This is used in response GQTP header. Body is formatted as specified
|
91
|
+
type.
|
92
|
+
|
93
|
+
``flags``
|
94
|
+
"""""""""
|
95
|
+
|
96
|
+
The value is bitwise OR of the following values:
|
97
|
+
|
98
|
+
+-----------+--------+----------------------------+
|
99
|
+
| Name | Value | Description |
|
100
|
+
+===========+========+============================+
|
101
|
+
| ``MORE`` | 0x01 | There are more data. |
|
102
|
+
+-----------+--------+----------------------------+
|
103
|
+
| ``TAIL`` | 0x02 | There are no more data. |
|
104
|
+
+-----------+--------+----------------------------+
|
105
|
+
| ``HEAD`` | 0x04 | Not used. |
|
106
|
+
+-----------+--------+----------------------------+
|
107
|
+
| ``QUIET`` | 0x08 | Be quiet. |
|
108
|
+
+-----------+--------+----------------------------+
|
109
|
+
| ``QUIT`` | 0x10 | Quit. |
|
110
|
+
+-----------+--------+----------------------------+
|
111
|
+
|
112
|
+
You must specify ``MORE`` or ``TAIL`` flag.
|
113
|
+
|
114
|
+
If you use ``MORE`` flag, you should also use ``QUIET`` flag. Because
|
115
|
+
you don't need to show a response for your partial request.
|
116
|
+
|
117
|
+
Use ``QUIT`` flag to quit this session.
|
118
|
+
|
119
|
+
``status``
|
120
|
+
""""""""""
|
121
|
+
|
122
|
+
Here are available values. The new statuses will be added in the
|
123
|
+
future.
|
124
|
+
|
125
|
+
* 0: ``SUCCESS``
|
126
|
+
* 1: ``END_OF_DATA``
|
127
|
+
* 65535: ``UNKNOWN_ERROR``
|
128
|
+
* 65534: ``OPERATION_NOT_PERMITTED``
|
129
|
+
* 65533: ``NO_SUCH_FILE_OR_DIRECTORY``
|
130
|
+
* 65532: ``NO_SUCH_PROCESS``
|
131
|
+
* 65531: ``INTERRUPTED_FUNCTION_CALL``
|
132
|
+
* 65530: ``INPUT_OUTPUT_ERROR``
|
133
|
+
* 65529: ``NO_SUCH_DEVICE_OR_ADDRESS``
|
134
|
+
* 65528: ``ARG_LIST_TOO_LONG``
|
135
|
+
* 65527: ``EXEC_FORMAT_ERROR``
|
136
|
+
* 65526: ``BAD_FILE_DESCRIPTOR``
|
137
|
+
* 65525: ``NO_CHILD_PROCESSES``
|
138
|
+
* 65524: ``RESOURCE_TEMPORARILY_UNAVAILABLE``
|
139
|
+
* 65523: ``NOT_ENOUGH_SPACE``
|
140
|
+
* 65522: ``PERMISSION_DENIED``
|
141
|
+
* 65521: ``BAD_ADDRESS``
|
142
|
+
* 65520: ``RESOURCE_BUSY``
|
143
|
+
* 65519: ``FILE_EXISTS``
|
144
|
+
* 65518: ``IMPROPER_LINK``
|
145
|
+
* 65517: ``NO_SUCH_DEVICE``
|
146
|
+
* 65516: ``NOT_A_DIRECTORY``
|
147
|
+
* 65515: ``IS_A_DIRECTORY``
|
148
|
+
* 65514: ``INVALID_ARGUMENT``
|
149
|
+
* 65513: ``TOO_MANY_OPEN_FILES_IN_SYSTEM``
|
150
|
+
* 65512: ``TOO_MANY_OPEN_FILES``
|
151
|
+
* 65511: ``INAPPROPRIATE_I_O_CONTROL_OPERATION``
|
152
|
+
* 65510: ``FILE_TOO_LARGE``
|
153
|
+
* 65509: ``NO_SPACE_LEFT_ON_DEVICE``
|
154
|
+
* 65508: ``INVALID_SEEK``
|
155
|
+
* 65507: ``READ_ONLY_FILE_SYSTEM``
|
156
|
+
* 65506: ``TOO_MANY_LINKS``
|
157
|
+
* 65505: ``BROKEN_PIPE``
|
158
|
+
* 65504: ``DOMAIN_ERROR``
|
159
|
+
* 65503: ``RESULT_TOO_LARGE``
|
160
|
+
* 65502: ``RESOURCE_DEADLOCK_AVOIDED``
|
161
|
+
* 65501: ``NO_MEMORY_AVAILABLE``
|
162
|
+
* 65500: ``FILENAME_TOO_LONG``
|
163
|
+
* 65499: ``NO_LOCKS_AVAILABLE``
|
164
|
+
* 65498: ``FUNCTION_NOT_IMPLEMENTED``
|
165
|
+
* 65497: ``DIRECTORY_NOT_EMPTY``
|
166
|
+
* 65496: ``ILLEGAL_BYTE_SEQUENCE``
|
167
|
+
* 65495: ``SOCKET_NOT_INITIALIZED``
|
168
|
+
* 65494: ``OPERATION_WOULD_BLOCK``
|
169
|
+
* 65493: ``ADDRESS_IS_NOT_AVAILABLE``
|
170
|
+
* 65492: ``NETWORK_IS_DOWN``
|
171
|
+
* 65491: ``NO_BUFFER``
|
172
|
+
* 65490: ``SOCKET_IS_ALREADY_CONNECTED``
|
173
|
+
* 65489: ``SOCKET_IS_NOT_CONNECTED``
|
174
|
+
* 65488: ``SOCKET_IS_ALREADY_SHUTDOWNED``
|
175
|
+
* 65487: ``OPERATION_TIMEOUT``
|
176
|
+
* 65486: ``CONNECTION_REFUSED``
|
177
|
+
* 65485: ``RANGE_ERROR``
|
178
|
+
* 65484: ``TOKENIZER_ERROR``
|
179
|
+
* 65483: ``FILE_CORRUPT``
|
180
|
+
* 65482: ``INVALID_FORMAT``
|
181
|
+
* 65481: ``OBJECT_CORRUPT``
|
182
|
+
* 65480: ``TOO_MANY_SYMBOLIC_LINKS``
|
183
|
+
* 65479: ``NOT_SOCKET``
|
184
|
+
* 65478: ``OPERATION_NOT_SUPPORTED``
|
185
|
+
* 65477: ``ADDRESS_IS_IN_USE``
|
186
|
+
* 65476: ``ZLIB_ERROR``
|
187
|
+
* 65475: ``LZO_ERROR``
|
188
|
+
* 65474: ``STACK_OVER_FLOW``
|
189
|
+
* 65473: ``SYNTAX_ERROR``
|
190
|
+
* 65472: ``RETRY_MAX``
|
191
|
+
* 65471: ``INCOMPATIBLE_FILE_FORMAT``
|
192
|
+
* 65470: ``UPDATE_NOT_ALLOWED``
|
193
|
+
* 65469: ``TOO_SMALL_OFFSET``
|
194
|
+
* 65468: ``TOO_LARGE_OFFSET``
|
195
|
+
* 65467: ``TOO_SMALL_LIMIT``
|
196
|
+
* 65466: ``CAS_ERROR``
|
197
|
+
* 65465: ``UNSUPPORTED_COMMAND_VERSION``
|
198
|
+
|
199
|
+
``size``
|
200
|
+
""""""""
|
201
|
+
|
202
|
+
The size of body. The maximum body size is 4GiB because ``size`` is
|
203
|
+
4byte unsigned integer. If you want to send 4GiB or more larger data,
|
204
|
+
use ``MORE`` flag.
|
205
|
+
|
206
|
+
Example
|
207
|
+
-------
|
208
|
+
|
209
|
+
TODO
|
210
|
+
|
211
|
+
See also
|
212
|
+
--------
|
213
|
+
|
214
|
+
TODO
|
@@ -548,8 +548,9 @@ jQuery.extend(GroongaAdmin.prototype, {
|
|
548
548
|
td.append($('<input/>')
|
549
549
|
.attr("type", "button")
|
550
550
|
.attr("value", "編集")
|
551
|
+
.attr("data-record-id", line[0])
|
551
552
|
.click(function () {
|
552
|
-
that.show_edit_record(
|
553
|
+
that.show_edit_record($(this).attr("data-record-id"));
|
553
554
|
}));
|
554
555
|
break;
|
555
556
|
case 2: // Table
|
@@ -558,8 +559,10 @@ jQuery.extend(GroongaAdmin.prototype, {
|
|
558
559
|
td.append($('<input/>')
|
559
560
|
.attr("type", "button")
|
560
561
|
.attr("value", "詳細")
|
562
|
+
.attr("data-table-name", line[1])
|
561
563
|
.click(function () {
|
562
|
-
$("
|
564
|
+
var tableName = $(this).attr("data-table-name");
|
565
|
+
$("#side-menu-tablelist-link-" + tableName).click();
|
563
566
|
}));
|
564
567
|
break;
|
565
568
|
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
.TH "GROONGA" "1" "2012 年
|
1
|
+
.TH "GROONGA" "1" "2012 年 11 月 28 日" "2.0.9" "groonga"
|
2
2
|
.SH NAME
|
3
3
|
groonga \- groongaのドキュメント
|
4
4
|
.
|
@@ -92,16 +92,16 @@ groonga は独自のカラムストアを持つ列指向のデータベースと
|
|
92
92
|
32\-bit用と64\-bit用のパッケージを配布していますが、サーバ用途には64\-bitパッケージを利用することをオススメします。32\-bit用パッケージはテスト用か開発用にだけ使って下さい。32\-bit用パッケージを使った場合は、中程度のサイズのデータでもメモリ不足エラーになることがあります。
|
93
93
|
.SS インストーラー
|
94
94
|
.sp
|
95
|
-
32\-bit環境の場合は \fI\%groonga-2.0.
|
95
|
+
32\-bit環境の場合は \fI\%groonga-2.0.9-x86.exe\fP をダウンロードして実行してください。
|
96
96
|
.sp
|
97
|
-
64\-bit環境の場合は \fI\%groonga-2.0.
|
97
|
+
64\-bit環境の場合は \fI\%groonga-2.0.9-x64.exe\fP をダウンロードして実行してください。
|
98
98
|
.sp
|
99
99
|
スタートメニュー内に \fB/reference/executables/groonga\fP 用のコマンドプロンプトがインストールされるのでそれを使ってください。
|
100
100
|
.SS zip
|
101
101
|
.sp
|
102
|
-
32\-bit環境の場合は \fI\%groonga-2.0.
|
102
|
+
32\-bit環境の場合は \fI\%groonga-2.0.9-x86.zip\fP をダウンロードして展開してください。
|
103
103
|
.sp
|
104
|
-
64\-bit環境の場合は \fI\%groonga-2.0.
|
104
|
+
64\-bit環境の場合は \fI\%groonga-2.0.9-x64.zip\fP をダウンロードして展開してください。
|
105
105
|
.sp
|
106
106
|
\fB/reference/executables/groonga\fP は \fBbin\fP フォルダーにあります。
|
107
107
|
.SS ソースからビルド
|
@@ -118,13 +118,13 @@ groonga は独自のカラムストアを持つ列指向のデータベースと
|
|
118
118
|
.UNINDENT
|
119
119
|
.UNINDENT
|
120
120
|
.sp
|
121
|
-
zipでアーカイブされたソース \fI\%groonga-2.0.
|
121
|
+
zipでアーカイブされたソース \fI\%groonga-2.0.9.zip\fP をダウンロードして展開します。
|
122
122
|
.sp
|
123
123
|
Microsoft Visual Studio 2010 Expressがインストールする \fBVisual Studio コマンド プロンプト (2010)\fP を実行して、groongaのソースがあるフォルダーへ移動してください:
|
124
124
|
.sp
|
125
125
|
.nf
|
126
126
|
.ft C
|
127
|
-
> cd c:\eUsers\e%USERNAME%\eDownloads\egroonga\-2.0.
|
127
|
+
> cd c:\eUsers\e%USERNAME%\eDownloads\egroonga\-2.0.9
|
128
128
|
.ft P
|
129
129
|
.fi
|
130
130
|
.sp
|
@@ -132,23 +132,41 @@ Microsoft Visual Studio 2010 Expressがインストールする \fBVisual Studio
|
|
132
132
|
.sp
|
133
133
|
.nf
|
134
134
|
.ft C
|
135
|
-
groonga\-2.0.
|
135
|
+
groonga\-2.0.9> cmake . \-G "Visual Studio 10 Win64" \-DCMAKE_INSTALL_PREFIX=C:\egroonga
|
136
136
|
.ft P
|
137
137
|
.fi
|
138
138
|
.sp
|
139
|
-
Visual
|
139
|
+
Visual C++ 2010 Expressでビルドします:
|
140
140
|
.sp
|
141
141
|
.nf
|
142
142
|
.ft C
|
143
|
-
groonga\-2.0.
|
143
|
+
groonga\-2.0.9> msbuild groonga.sln /p:Configuration=Release
|
144
144
|
.ft P
|
145
145
|
.fi
|
146
146
|
.sp
|
147
|
-
|
147
|
+
Visual C++ 2010 Expressでビルドします:
|
148
|
+
.sp
|
149
|
+
.nf
|
150
|
+
.ft C
|
151
|
+
groonga\-2.0.9> msbuild groonga.sln /p:Configuration=Release /t:Install
|
152
|
+
.ft P
|
153
|
+
.fi
|
154
|
+
.sp
|
155
|
+
Visual Studio 2010をインストールした場合、devenvを使うことができます。
|
156
|
+
.sp
|
157
|
+
Visual Studio 2010でビルドします:
|
148
158
|
.sp
|
149
159
|
.nf
|
150
160
|
.ft C
|
151
|
-
groonga\-2.0.
|
161
|
+
groonga\-2.0.9> devenv groonga.sln /Build Release
|
162
|
+
.ft P
|
163
|
+
.fi
|
164
|
+
.sp
|
165
|
+
Visual Studio 2010でインストールします:
|
166
|
+
.sp
|
167
|
+
.nf
|
168
|
+
.ft C
|
169
|
+
groonga\-2.0.9> devenv groonga.sln /Build Release /Project Install
|
152
170
|
.ft P
|
153
171
|
.fi
|
154
172
|
.sp
|
@@ -184,9 +202,9 @@ groonga\-2.0.7> devenv groonga.sln /Build Release /Project Install
|
|
184
202
|
.sp
|
185
203
|
.nf
|
186
204
|
.ft C
|
187
|
-
% curl \-O http://packages.groonga.org/source/groonga/groonga\-2.0.
|
188
|
-
% tar xvzf groonga\-2.0.
|
189
|
-
% cd groonga\-2.0.
|
205
|
+
% curl \-O http://packages.groonga.org/source/groonga/groonga\-2.0.9.tar.gz
|
206
|
+
% tar xvzf groonga\-2.0.9.tar.gz
|
207
|
+
% cd groonga\-2.0.9
|
190
208
|
.ft P
|
191
209
|
.fi
|
192
210
|
.sp
|
@@ -361,9 +379,9 @@ groongaをビルドするために必要なパッケージをインストール
|
|
361
379
|
.sp
|
362
380
|
.nf
|
363
381
|
.ft C
|
364
|
-
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.
|
365
|
-
% tar xvzf groonga\-2.0.
|
366
|
-
% cd groonga\-2.0.
|
382
|
+
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.9.tar.gz
|
383
|
+
% tar xvzf groonga\-2.0.9.tar.gz
|
384
|
+
% cd groonga\-2.0.9
|
367
385
|
.ft P
|
368
386
|
.fi
|
369
387
|
.sp
|
@@ -607,6 +625,59 @@ groonga\-munin\-pluginsパッケージのインストール:
|
|
607
625
|
% sudo apt\-get \-y install groonga\-munin\-plugins
|
608
626
|
.ft P
|
609
627
|
.fi
|
628
|
+
.SS 12.10 Quantal Quetzal
|
629
|
+
.IP ノート
|
630
|
+
groongaをインストールするためにuniverseリポジトリを有効にしてください:
|
631
|
+
.sp
|
632
|
+
.nf
|
633
|
+
.ft C
|
634
|
+
% sudo cp /etc/apt/sources.list /etc/apt/sources.list.d/universe.list
|
635
|
+
% sudo sed \-i\(aq\(aq \-e \(aqs/main/universe/\(aq /etc/apt/sources.list.d/universe.list
|
636
|
+
.ft P
|
637
|
+
.fi
|
638
|
+
.RE
|
639
|
+
.sp
|
640
|
+
groongaのaptリポジトリを追加します。
|
641
|
+
.sp
|
642
|
+
/etc/apt/sources.list.d/groonga.list:
|
643
|
+
.sp
|
644
|
+
.nf
|
645
|
+
.ft C
|
646
|
+
deb http://packages.groonga.org/ubuntu/ quantal universe
|
647
|
+
deb\-src http://packages.groonga.org/ubuntu/ quantal universe
|
648
|
+
.ft P
|
649
|
+
.fi
|
650
|
+
.sp
|
651
|
+
インストール:
|
652
|
+
.sp
|
653
|
+
.nf
|
654
|
+
.ft C
|
655
|
+
% sudo apt\-get update
|
656
|
+
% sudo apt\-get \-y \-\-allow\-unauthenticated install groonga\-keyring
|
657
|
+
% sudo apt\-get update
|
658
|
+
% sudo apt\-get \-y install groonga
|
659
|
+
.ft P
|
660
|
+
.fi
|
661
|
+
.sp
|
662
|
+
\fI\%MeCab\fP をトークナイザーとして使いたいときは、groonga\-tokenizer\-mecabパッケージをインストールしてください。
|
663
|
+
.sp
|
664
|
+
groonga\-tokenizer\-mecabパッケージのインストール:
|
665
|
+
.sp
|
666
|
+
.nf
|
667
|
+
.ft C
|
668
|
+
% sudo apt\-get \-y install groonga\-tokenizer\-mecab
|
669
|
+
.ft P
|
670
|
+
.fi
|
671
|
+
.sp
|
672
|
+
\fI\%Munin\fP プラグインを提供するパッケージもあります。Muninでgroongaの状態をモニターしたい場合は、groonga\-munin\-pluginsパッケージをインストールしてください。
|
673
|
+
.sp
|
674
|
+
groonga\-munin\-pluginsパッケージのインストール:
|
675
|
+
.sp
|
676
|
+
.nf
|
677
|
+
.ft C
|
678
|
+
% sudo apt\-get \-y install groonga\-munin\-plugins
|
679
|
+
.ft P
|
680
|
+
.fi
|
610
681
|
.SS ソースからビルド
|
611
682
|
.sp
|
612
683
|
groongaをビルドするために必要なパッケージをインストールします:
|
@@ -621,9 +692,9 @@ groongaをビルドするために必要なパッケージをインストール
|
|
621
692
|
.sp
|
622
693
|
.nf
|
623
694
|
.ft C
|
624
|
-
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.
|
625
|
-
% tar xvzf groonga\-2.0.
|
626
|
-
% cd groonga\-2.0.
|
695
|
+
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.9.tar.gz
|
696
|
+
% tar xvzf groonga\-2.0.9.tar.gz
|
697
|
+
% cd groonga\-2.0.9
|
627
698
|
.ft P
|
628
699
|
.fi
|
629
700
|
.sp
|
@@ -677,6 +748,24 @@ groonga\-tokenizer\-mecabパッケージのインストール:
|
|
677
748
|
.ft P
|
678
749
|
.fi
|
679
750
|
.sp
|
751
|
+
それからMeCabの辞書をインストールします。(mecab\-ipadicもしくはmecab\-jumandic)
|
752
|
+
.sp
|
753
|
+
IPA辞書をインストールします:
|
754
|
+
.sp
|
755
|
+
.nf
|
756
|
+
.ft C
|
757
|
+
% sudo yum install \-y mecab\-ipadic
|
758
|
+
.ft P
|
759
|
+
.fi
|
760
|
+
.sp
|
761
|
+
あるいはJuman辞書をインストールします:
|
762
|
+
.sp
|
763
|
+
.nf
|
764
|
+
.ft C
|
765
|
+
% sudo yum install \-y mecab\-jumandic
|
766
|
+
.ft P
|
767
|
+
.fi
|
768
|
+
.sp
|
680
769
|
\fI\%Munin\fP プラグインを提供するパッケージもあります。Muninでgroongaの状態をモニターしたい場合は、groonga\-munin\-pluginsパッケージをインストールしてください。
|
681
770
|
.IP ノート
|
682
771
|
groonga\-munin\-pluginsパッケージはmunin\-nodeパッケージを必要としますが、munin\-nodeパッケージはCentOSの公式リポジトリには含まれていません。munin\-nodeパッケージを \fByum\fP でインストールするために \fI\%Repoforge (RPMforge)\fP リポジトリか \fI\%EPEL\fP リポジトリを有効にする必要があります。
|
@@ -738,6 +827,24 @@ groonga\-tokenizer\-mecabパッケージのインストール:
|
|
738
827
|
.ft P
|
739
828
|
.fi
|
740
829
|
.sp
|
830
|
+
それからMeCabの辞書をインストールします。(mecab\-ipadicもしくはmecab\-jumandic)
|
831
|
+
.sp
|
832
|
+
IPA辞書をインストールします:
|
833
|
+
.sp
|
834
|
+
.nf
|
835
|
+
.ft C
|
836
|
+
% sudo yum install \-y mecab\-ipadic
|
837
|
+
.ft P
|
838
|
+
.fi
|
839
|
+
.sp
|
840
|
+
あるいはJuman辞書をインストールします:
|
841
|
+
.sp
|
842
|
+
.nf
|
843
|
+
.ft C
|
844
|
+
% sudo yum install \-y mecab\-jumandic
|
845
|
+
.ft P
|
846
|
+
.fi
|
847
|
+
.sp
|
741
848
|
\fI\%Munin\fP プラグインを提供するパッケージもあります。Muninでgroongaの状態をモニターしたい場合は、groonga\-munin\-pluginsパッケージをインストールしてください。
|
742
849
|
.IP ノート
|
743
850
|
groonga\-munin\-pluginsパッケージはmunin\-nodeパッケージを必要としますが、munin\-nodeパッケージはCentOSの公式リポジトリには含まれていません。munin\-nodeパッケージを \fByum\fP でインストールするために \fI\%EPEL\fP リポジトリを有効にする必要があります。
|
@@ -772,9 +879,9 @@ groongaをビルドするために必要なパッケージをインストール
|
|
772
879
|
.sp
|
773
880
|
.nf
|
774
881
|
.ft C
|
775
|
-
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.
|
776
|
-
% tar xvzf groonga\-2.0.
|
777
|
-
% cd groonga\-2.0.
|
882
|
+
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.9.tar.gz
|
883
|
+
% tar xvzf groonga\-2.0.9.tar.gz
|
884
|
+
% cd groonga\-2.0.9
|
778
885
|
.ft P
|
779
886
|
.fi
|
780
887
|
.sp
|
@@ -830,6 +937,24 @@ groonga\-tokenizer\-mecabパッケージのインストール:
|
|
830
937
|
.ft P
|
831
938
|
.fi
|
832
939
|
.sp
|
940
|
+
それからMeCabの辞書をインストールします。(mecab\-ipadicもしくはmecab\-jumandic)
|
941
|
+
.sp
|
942
|
+
IPA辞書をインストールします:
|
943
|
+
.sp
|
944
|
+
.nf
|
945
|
+
.ft C
|
946
|
+
% sudo yum install \-y mecab\-ipadic
|
947
|
+
.ft P
|
948
|
+
.fi
|
949
|
+
.sp
|
950
|
+
あるいはJuman辞書をインストールします:
|
951
|
+
.sp
|
952
|
+
.nf
|
953
|
+
.ft C
|
954
|
+
% sudo yum install \-y mecab\-jumandic
|
955
|
+
.ft P
|
956
|
+
.fi
|
957
|
+
.sp
|
833
958
|
\fI\%Munin\fP プラグインを提供するパッケージもあります。Muninでgroongaの状態をモニターしたい場合は、groonga\-munin\-pluginsパッケージをインストールしてください。
|
834
959
|
.sp
|
835
960
|
groonga\-munin\-pluginsパッケージのインストール:
|
@@ -853,9 +978,9 @@ groongaをビルドするために必要なパッケージをインストール
|
|
853
978
|
.sp
|
854
979
|
.nf
|
855
980
|
.ft C
|
856
|
-
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.
|
857
|
-
% tar xvzf groonga\-2.0.
|
858
|
-
% cd groonga\-2.0.
|
981
|
+
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.9.tar.gz
|
982
|
+
% tar xvzf groonga\-2.0.9.tar.gz
|
983
|
+
% cd groonga\-2.0.9
|
859
984
|
.ft P
|
860
985
|
.fi
|
861
986
|
.sp
|
@@ -899,9 +1024,9 @@ groongaをビルドするために必要なパッケージをインストール
|
|
899
1024
|
.sp
|
900
1025
|
.nf
|
901
1026
|
.ft C
|
902
|
-
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.
|
903
|
-
% gtar xvzf groonga\-2.0.
|
904
|
-
% cd groonga\-2.0.
|
1027
|
+
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.9.tar.gz
|
1028
|
+
% gtar xvzf groonga\-2.0.9.tar.gz
|
1029
|
+
% cd groonga\-2.0.9
|
905
1030
|
.ft P
|
906
1031
|
.fi
|
907
1032
|
.sp
|
@@ -1006,9 +1131,9 @@ groongaはGNUビルドシステムを使っています。以下は一番簡単
|
|
1006
1131
|
.sp
|
1007
1132
|
.nf
|
1008
1133
|
.ft C
|
1009
|
-
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.
|
1010
|
-
% tar xvzf groonga\-2.0.
|
1011
|
-
% cd groonga\-2.0.
|
1134
|
+
% wget http://packages.groonga.org/source/groonga/groonga\-2.0.9.tar.gz
|
1135
|
+
% tar xvzf groonga\-2.0.9.tar.gz
|
1136
|
+
% cd groonga\-2.0.9
|
1012
1137
|
% ./configure
|
1013
1138
|
% make
|
1014
1139
|
% sudo make install
|
@@ -2836,7 +2961,7 @@ select \-\-table ToyBox \-\-output_columns _key,location
|
|
2836
2961
|
.sp
|
2837
2962
|
groongaでは、テーブル参照のカラム、すなわち関連付けたテーブルを参照するカラムを作成できます。より正確には、カラム作成時に参照先となるテーブルとの関連付けをおこない、参照先テーブルにおけるレコードIDを格納しておくことにより、参照先のレコードにアクセスできるようにします。
|
2838
2963
|
.sp
|
2839
|
-
|
2964
|
+
テーブル参照のカラムがあるときは、 \fBreference/command/select\fP コマンドの \fIoutput_columns\fP 引数に "参照元カラム.参照先カラム" と指定することにより、参照先カラムの値を取り出すことができます。参照元カラムのみを指定したときは、 "参照元カラム名._key" と同様の扱いとなり、参照先レコードの主キーが取り出されます。テーブル参照が有効なレコードを指していないときは、参照先カラムのデフォルト値が取り出されるようになっています。
|
2840
2965
|
.sp
|
2841
2966
|
ここでは、先のチュートリアルで作成したSiteテーブルにlinkという新たなカラムを作成し、サイト間のリンク関係を保存できるようにしてみましょう。
|
2842
2967
|
.sp
|
@@ -2891,7 +3016,7 @@ select \-\-table Site \-\-output_columns _key,title,link._key,link.title \-\-que
|
|
2891
3016
|
.ft P
|
2892
3017
|
.fi
|
2893
3018
|
.sp
|
2894
|
-
|
3019
|
+
テーブル参照のカラムを作成するときは、 \fB/reference/commands/column_create\fP コマンドの \fItype\fP 引数に参照先テーブルを指定します。この例では、同じテーブルに含まれる別のレコードを参照させたいので、Siteを指定することになります。次に、 "\fI\%http://example.org/\fP" から "\fI\%http://example.net/\fP" へのリンクを登録しています。テーブル参照を作成するときは、IDではなく主キーを指定することに注意してください。最後に、リンクの内容を確認しています。この例では、 \fIoutput_columns\fP 引数に link._key と link.title を指定しているので、参照先の主キーとタイトルが表示されています。
|
2895
3020
|
.SS ベクターカラム
|
2896
3021
|
.sp
|
2897
3022
|
\fB/reference/commands/column_create\fP コマンドでカラムを作成するとき、 \fIflags\fP 引数にCOLUMN_VECTORフラグを指定すると、 \fItype\fP 引数に指定した型の配列を格納するカラムになります。このようなカラムのことは、ベクターカラムと呼びます。ベクターカラムは、各レコードに複数の値を格納できるため、一対多の参照関係を表すのに便利です。
|
@@ -7049,7 +7174,7 @@ POST
|
|
7049
7174
|
T} T{
|
7050
7175
|
×
|
7051
7176
|
T} T{
|
7052
|
-
|
7177
|
+
○
|
7053
7178
|
T}
|
7054
7179
|
_
|
7055
7180
|
T{
|
@@ -7283,7 +7408,23 @@ http {
|
|
7283
7408
|
\fBgroonga\-httpd\fP のレスポンスデータをgzip圧縮するには、明示的に \fIgzip_types *\fP または \fIgzip_types application/json text/xml application/x\-msgpack\fP と指定する必要があります。 \fIgzip_types *\fP の方がおすすめです。理由は2つあります。1つは、groongaが、将来、他のフォーマットもサポートする可能性もあるからという理由です。2つめは、この \fIlocation\fP のすべてのリクエストはgroongaが処理するので、他のモジュールのことについて考えなくてもよいからという理由です。
|
7284
7409
|
.SS POST
|
7285
7410
|
.sp
|
7286
|
-
|
7411
|
+
JSONデータをPOSTすることでデータをロードすることができます。POSTでロードする場合は以下のルールに従ってください。
|
7412
|
+
.INDENT 0.0
|
7413
|
+
.IP \(bu 2
|
7414
|
+
\fIContent\-Type\fP ヘッダーの値を \fIapplication/json\fP にする。
|
7415
|
+
.IP \(bu 2
|
7416
|
+
JSONデータはbodyとして送る。
|
7417
|
+
.IP \(bu 2
|
7418
|
+
テーブル名は \fBtable=名前\fP というようにクエリーパラメーターで指定する。
|
7419
|
+
.UNINDENT
|
7420
|
+
.sp
|
7421
|
+
以下はcurlを使って \fIalice\fP と \fIbob\fP という2人のユーザーを \fIUsers\fP テーブルにロードするコマンドラインの例です:
|
7422
|
+
.sp
|
7423
|
+
.nf
|
7424
|
+
.ft C
|
7425
|
+
% curl \-\-data\-binary \(aq[{"_key": "alice"}, {"_key": "bob"}]\(aq \-H "Content\-Type: application/json" "http://localhost:10041/d/load?table=Users"
|
7426
|
+
.ft P
|
7427
|
+
.fi
|
7287
7428
|
.SS HTTPS
|
7288
7429
|
.sp
|
7289
7430
|
TODO
|
@@ -7988,9 +8129,9 @@ http {
|
|
7988
8129
|
% groonga\-httpd
|
7989
8130
|
.ft P
|
7990
8131
|
.fi
|
7991
|
-
.SS
|
8132
|
+
.SS クエリーを実行する
|
7992
8133
|
.sp
|
7993
|
-
|
8134
|
+
動作を確認するため、簡単なクエリー( \fB/reference/commands/status\fP )をリクエストしてみます。
|
7994
8135
|
.sp
|
7995
8136
|
実行例:
|
7996
8137
|
.sp
|
@@ -8140,7 +8281,7 @@ location /d/ {
|
|
8140
8281
|
以下のディレクティブはgronoga\-httpdの性能に関連しているディレクティブです。
|
8141
8282
|
.SS \fBworker_processes\fP
|
8142
8283
|
.sp
|
8143
|
-
最適なパフォーマンスを得るためには、CPU数あるいはコア数と同じ数になるようにこのディレクティブを設定してください。大抵の場合、groonga
|
8284
|
+
最適なパフォーマンスを得るためには、CPU数あるいはコア数と同じ数になるようにこのディレクティブを設定してください。大抵の場合、groongaのクエリーはCPU負荷が高いものとなり、複数のCPU/コアを使い切るためには、このディレクティブを設定する必要があります。
|
8144
8285
|
.sp
|
8145
8286
|
このディレクティブはgroonga\-httpdのディレクティブではなく、nginxのディレクティブです。詳細は、 \fI\%http://wiki.nginx.org/CoreModule#worker_processes\fP を参照してください。
|
8146
8287
|
.sp
|
@@ -8251,7 +8392,7 @@ TSV(タブ区切り形式)
|
|
8251
8392
|
JSONがデフォルトの出力形式です。
|
8252
8393
|
.SS 使い方
|
8253
8394
|
.sp
|
8254
|
-
groonga
|
8395
|
+
groongaには以下のクエリーインターフェイスがあります。
|
8255
8396
|
.INDENT 0.0
|
8256
8397
|
.INDENT 3.5
|
8257
8398
|
.INDENT 0.0
|
@@ -8266,7 +8407,7 @@ HTTP
|
|
8266
8407
|
それぞれのインターフェイスで出力形式を変更する方法は異なります。
|
8267
8408
|
.SS コマンドライン
|
8268
8409
|
.sp
|
8269
|
-
\fBgroonga DB_PATH\fP または \fBgroonga \-c\fP
|
8410
|
+
\fBgroonga DB_PATH\fP または \fBgroonga \-c\fP でコマンドラインクエリーインターフェイスを使うことができます。これらのgroongaコマンドでは \fB> \(ga\(ga というプロンプトが表示されます。クエリーインターフェイスでは \(ga\(gaoutput_type\fP オプションで出力形式を指定できます。
|
8270
8411
|
.sp
|
8271
8412
|
\fBoutput_type\fP オプションを指定しない場合はJSON形式の出力になります:
|
8272
8413
|
.sp
|
@@ -8345,7 +8486,7 @@ MessagePack形式の出力にする場合は \fBoutput_type\fP に \fBmsgpack\fP
|
|
8345
8486
|
.fi
|
8346
8487
|
.SS HTTP
|
8347
8488
|
.sp
|
8348
|
-
\fBgroonga \-\-protocol http \-s DB_PATH\fP でHTTP
|
8489
|
+
\fBgroonga \-\-protocol http \-s DB_PATH\fP でHTTPクエリーインターフェイスを使うことができます。groonga HTTPサーバーはデフォルトで10041番ポートで起動します。このクエリーインターフェイスでは拡張子で出力形式を指定します。
|
8349
8490
|
.sp
|
8350
8491
|
拡張子を指定しない場合はJSON形式の出力になります:
|
8351
8492
|
.sp
|
@@ -8422,6 +8563,11 @@ MessagePack形式の出力にする場合は \fBmsgpack\fP 拡張子を指定し
|
|
8422
8563
|
(... omitted because MessagePack is binary data format. ...)
|
8423
8564
|
.ft P
|
8424
8565
|
.fi
|
8566
|
+
.SS コマンド
|
8567
|
+
.sp
|
8568
|
+
コマンドはクエリーAPIでもっとも重要な処理単位です。コマンドでgroongaに処理をリクエストします。
|
8569
|
+
.sp
|
8570
|
+
このセクションではコマンドについての説明と組み込みのコマンドについて説明します。
|
8425
8571
|
.SS コマンドバージョン
|
8426
8572
|
.SS 概要
|
8427
8573
|
.sp
|
@@ -8496,157 +8642,460 @@ select \-\-command_version 1 \-\-table tablename
|
|
8496
8642
|
.fi
|
8497
8643
|
.sp
|
8498
8644
|
指定されたコマンドバージョンでコマンドを実行します。指定されたコマンドバージョンがサポート対象外であった場合にはエラーが返されます。command\-versionが指定されなかった場合は、当該プロセス起動時にdefault\-command\-versionに指定した値が指定されたものとみなします。
|
8499
|
-
.SS
|
8500
|
-
.sp
|
8501
|
-
まず、すべてのコマンドに関係するコマンドバージョンについて説明します。その後、組み込みのコマンドを順に説明します。
|
8502
|
-
.SS コマンドバージョン
|
8645
|
+
.SS 出力形式
|
8503
8646
|
.SS 概要
|
8504
8647
|
.sp
|
8505
|
-
|
8506
|
-
.sp
|
8507
|
-
あるバージョンのgroongaは、二つのコマンドバージョンを同時にサポートするようになります。
|
8508
|
-
使用するコマンドバージョンは、groongaを起動する際のコマンドラインオプションないしコンフィグファイルにdefault\-commnad\-versionパラメータを与えることによって指定できます。また、個々のコマンドを実行する際に、command_versionパラメータを与えることによっても指定することができます。
|
8648
|
+
コマンドは実行結果をJSONまたはMessagePack、XML、TSVのどれかで出力します。
|
8509
8649
|
.sp
|
8510
|
-
|
8511
|
-
.SS バージョンの位置づけ
|
8650
|
+
JSONとMessagePackの出力は同じ構造になっています。XMLとTSVはそれぞれ独自の構造になっています。
|
8512
8651
|
.sp
|
8513
|
-
|
8514
|
-
.
|
8515
|
-
.TP
|
8516
|
-
.B develop
|
8517
|
-
まだ開発中であり、仕様が変更される可能性があります。
|
8518
|
-
.TP
|
8519
|
-
.B stable
|
8520
|
-
使用可能であり仕様も安定しています。その時点で使用することが推奨されます。
|
8521
|
-
.TP
|
8522
|
-
.B deprecated
|
8523
|
-
使用可能であり仕様も安定していますが、廃止予定であり使用が推奨されません。
|
8524
|
-
.UNINDENT
|
8652
|
+
JSONまたはMessagePackの利用を推奨します。XMLは目視で結果を確認する時に便利です。TSVは特殊な用途では有用です。通常はTSVを使う必要はありません。
|
8653
|
+
.SS JSONとMessagePack
|
8525
8654
|
.sp
|
8526
|
-
|
8655
|
+
このセクションではJSONとMessagePack形式を使った時のコマンド実行結果の構造を説明します。MessagePackはバイナリー形式なのでここでは構造を示すためにJSONを使います。バイナリー形式はドキュメントには向いていません。
|
8527
8656
|
.sp
|
8528
|
-
|
8657
|
+
JSON形式、MessagePack形式のときは以下のような構造になります:
|
8529
8658
|
.sp
|
8530
8659
|
.nf
|
8531
8660
|
.ft C
|
8532
|
-
|
8533
|
-
groonga1.2: command\-version1=deprecated command\-version2=stable
|
8534
|
-
groonga1.3: command\-version2=stable command\-version3=develop
|
8535
|
-
groonga1.4: command\-version2=deprecated command\-version3=stable
|
8536
|
-
groonga1.5: command\-version3=stable command\-version4=develop
|
8661
|
+
[HEADER, BODY]
|
8537
8662
|
.ft P
|
8538
8663
|
.fi
|
8539
8664
|
.sp
|
8540
|
-
|
8541
|
-
その後二世代経過するとそのコマンドバージョンはdeprecated扱いとなります。さらに次のコマンドバージョンがリリースされると、deprecatedだったコマンドバージョンはサポート対象外となります。
|
8542
|
-
.sp
|
8543
|
-
default\-commnad\-versionパラメータやcommand_versionパラメータを指定せずにgroongaコマンドを実行した際には、その時点でstableであるコマンドバージョンが指定されたものとみなします。
|
8665
|
+
実行例:
|
8544
8666
|
.sp
|
8545
|
-
|
8546
|
-
.
|
8667
|
+
.nf
|
8668
|
+
.ft C
|
8669
|
+
[
|
8670
|
+
[
|
8671
|
+
0,
|
8672
|
+
1337566253.89858,
|
8673
|
+
0.000355720520019531
|
8674
|
+
],
|
8675
|
+
[
|
8676
|
+
[
|
8677
|
+
[
|
8678
|
+
1
|
8679
|
+
],
|
8680
|
+
[
|
8681
|
+
[
|
8682
|
+
"_id",
|
8683
|
+
"UInt32"
|
8684
|
+
],
|
8685
|
+
[
|
8686
|
+
"_key",
|
8687
|
+
"ShortText"
|
8688
|
+
],
|
8689
|
+
[
|
8690
|
+
"content",
|
8691
|
+
"Text"
|
8692
|
+
],
|
8693
|
+
[
|
8694
|
+
"n_likes",
|
8695
|
+
"UInt32"
|
8696
|
+
]
|
8697
|
+
],
|
8698
|
+
[
|
8699
|
+
2,
|
8700
|
+
"Groonga",
|
8701
|
+
"I started to use groonga. It\(aqs very fast!",
|
8702
|
+
10
|
8703
|
+
]
|
8704
|
+
]
|
8705
|
+
]
|
8706
|
+
]
|
8707
|
+
.ft P
|
8708
|
+
.fi
|
8547
8709
|
.sp
|
8548
|
-
|
8549
|
-
.SS default\-command\-versionパラメータ
|
8710
|
+
この例では、以下の部分が \fBHEADER\fP に相当します:
|
8550
8711
|
.sp
|
8551
|
-
|
8552
|
-
|
8712
|
+
.nf
|
8713
|
+
.ft C
|
8714
|
+
[
|
8715
|
+
0,
|
8716
|
+
1337566253.89858,
|
8717
|
+
0.000355720520019531
|
8718
|
+
]
|
8719
|
+
.ft P
|
8720
|
+
.fi
|
8553
8721
|
.sp
|
8554
|
-
|
8722
|
+
\fBBODY\fP に相当する部分は以下です:
|
8555
8723
|
.sp
|
8556
8724
|
.nf
|
8557
8725
|
.ft C
|
8558
|
-
|
8726
|
+
[
|
8727
|
+
[
|
8728
|
+
[
|
8729
|
+
1
|
8730
|
+
],
|
8731
|
+
[
|
8732
|
+
[
|
8733
|
+
"_id",
|
8734
|
+
"UInt32"
|
8735
|
+
],
|
8736
|
+
[
|
8737
|
+
"_key",
|
8738
|
+
"ShortText"
|
8739
|
+
],
|
8740
|
+
[
|
8741
|
+
"content",
|
8742
|
+
"Text"
|
8743
|
+
],
|
8744
|
+
[
|
8745
|
+
"n_likes",
|
8746
|
+
"UInt32"
|
8747
|
+
]
|
8748
|
+
],
|
8749
|
+
[
|
8750
|
+
2,
|
8751
|
+
"Groonga",
|
8752
|
+
"I started to use groonga. It\(aqs very fast!",
|
8753
|
+
10
|
8754
|
+
]
|
8755
|
+
]
|
8756
|
+
]
|
8559
8757
|
.ft P
|
8560
8758
|
.fi
|
8759
|
+
.SS \fBHEADER\fP
|
8561
8760
|
.sp
|
8562
|
-
|
8563
|
-
.SS
|
8564
|
-
.sp
|
8565
|
-
select,loadなどのすべてのgroongaコマンドにcommand_versionが指定できます。
|
8761
|
+
\fBHEADER\fP は配列です。 \fBHEADER\fP の内容にはいくつかのパターンがあります。
|
8762
|
+
.SS 成功した場合
|
8566
8763
|
.sp
|
8567
|
-
|
8764
|
+
コマンドが成功した場合は \fBHEADER\fP には3つの要素があります:
|
8568
8765
|
.sp
|
8569
8766
|
.nf
|
8570
8767
|
.ft C
|
8571
|
-
|
8768
|
+
[0, UNIX_TIME_WHEN_COMMAND_IS_STARTED, ELAPSED_TIME]
|
8572
8769
|
.ft P
|
8573
8770
|
.fi
|
8574
8771
|
.sp
|
8575
|
-
|
8576
|
-
.SS cache_limit
|
8577
|
-
.SS 名前
|
8772
|
+
最初の値は常に \fB0\fP です。
|
8578
8773
|
.sp
|
8579
|
-
|
8580
|
-
.SS
|
8774
|
+
\fBUNIX_TIME_WHEN_COMMAND_IS_STARTED\fP はコマンドの実行が始まったときの時刻です。時刻は1970\-01\-01 00:00:00から経過した秒数で表現されています。 \fBELAPSED_TIME\fP はコマンドの実行にかかった時間です。単位は秒です。 \fBUNIX_TIME_WHEN_COMMAND_IS_STARTED\fP も \fBELAPSED_TIME\fP も浮動小数点数です。小数部分はナノ秒を表します。
|
8775
|
+
.SS エラーの場合
|
8776
|
+
.sp
|
8777
|
+
エラーの場合、 \fBHEADER\fP には4個または5個の要素があります:
|
8581
8778
|
.sp
|
8582
8779
|
.nf
|
8583
8780
|
.ft C
|
8584
|
-
|
8781
|
+
[
|
8782
|
+
RETURN_CODE,
|
8783
|
+
UNIX_TIME_WHEN_COMMAND_IS_STARTED,
|
8784
|
+
ELAPSED_TIME,
|
8785
|
+
ERROR_MESSAGE,
|
8786
|
+
ERROR_LOCATION
|
8787
|
+
]
|
8585
8788
|
.ft P
|
8586
8789
|
.fi
|
8587
|
-
.SS 説明
|
8588
8790
|
.sp
|
8589
|
-
|
8791
|
+
\fBERROR_LOCATION\fP は \fBHEADER\fP には含まれないかもしれませんが、他の4個の要素は常に含まれます。
|
8590
8792
|
.sp
|
8591
|
-
|
8592
|
-
.SS 引数
|
8793
|
+
\fBRETURN_CODE\fP は0ではない値です。リターンコードの詳細は \fBreturn_code\fP を見てください。
|
8593
8794
|
.sp
|
8594
|
-
\
|
8595
|
-
.
|
8596
|
-
|
8597
|
-
|
8598
|
-
|
8599
|
-
現在の設定値のみが返されます。
|
8600
|
-
.UNINDENT
|
8601
|
-
.UNINDENT
|
8602
|
-
.SS 返値
|
8603
|
-
.SS json
|
8795
|
+
\fBUNIX_TIME_WHEN_COMMAND_IS_STARTED\fP と \fBELAPSED_TIME\fP は成功した時と同じです。
|
8796
|
+
.sp
|
8797
|
+
\fBERROR_MESSAGE\fP はエラーメッセージです。文字列です。
|
8798
|
+
.sp
|
8799
|
+
\fBERROR_LOCATION\fP は存在しないことがあります。もし、エラーが発生した場所の情報を収集できていた場合は \fBERROR_LOCATION\fP が含まれます。 \fBERROR_LOCATION\fP は配列です。 \fBERROR_LOCATION\fP は1個または2個の要素を含みます:
|
8604
8800
|
.sp
|
8605
8801
|
.nf
|
8606
8802
|
.ft C
|
8607
|
-
[
|
8608
|
-
|
8609
|
-
|
8610
|
-
|
8611
|
-
すでに設定されていたクエリキャッシュの最大件数を返す。
|
8803
|
+
[
|
8804
|
+
LOCATION_IN_GROONGA,
|
8805
|
+
LOCATION_IN_INPUT
|
8806
|
+
]
|
8612
8807
|
.ft P
|
8613
8808
|
.fi
|
8614
|
-
.
|
8809
|
+
.sp
|
8810
|
+
\fBLOCATION_IN_GROONGA\fP はgroonga内でエラーが発生したソースコードの場所です。この情報はgroonga開発者には役に立ちますが、ユーザーの役には立ちません。 \fBLOCATION_IN_GROONGA\fP は配列です。 \fBLOCATION_IN_GROONGA\fP には3個の要素があります:
|
8615
8811
|
.sp
|
8616
8812
|
.nf
|
8617
8813
|
.ft C
|
8618
|
-
|
8619
|
-
|
8814
|
+
[
|
8815
|
+
FUNCTION_NAME,
|
8816
|
+
SOURCE_FILE_NAME,
|
8817
|
+
LINE_NUMBER
|
8818
|
+
]
|
8620
8819
|
.ft P
|
8621
8820
|
.fi
|
8622
|
-
.SS check
|
8623
|
-
.SS 名前
|
8624
8821
|
.sp
|
8625
|
-
|
8626
|
-
.
|
8822
|
+
\fBFUNCTION_NAME\fP はエラーが発生した関数の名前です。
|
8823
|
+
.sp
|
8824
|
+
\fBSOURCE_FILE_NAME\fP はエラーが発生した箇所を含んだgroongaのソースコードのファイル名です。
|
8825
|
+
.sp
|
8826
|
+
\fBLINE_NUMBER\fP はエラーが発生した箇所の \fBSOURCE_FILE_NAME\fP での行番号です。
|
8827
|
+
.sp
|
8828
|
+
\fBLOCATION_IN_INPUT\fP は存在しないことがあります。 \fBLOCATION_IN_INPUT\fP は入力ファイルでエラーが発生した場所の情報を収集できたときに含まれます。入力ファイルは \fBgroonga\fP コマンドのコマンドラインオプション \fB\-\-file\fP で指定できます。 \fBLOCATION_IN_GROONGA\fP は配列です。 \fBLOCATION_IN_GROONGA\fP には3個の要素があります:
|
8627
8829
|
.sp
|
8628
8830
|
.nf
|
8629
8831
|
.ft C
|
8630
|
-
|
8832
|
+
[
|
8833
|
+
INPUT_FILE_NAME,
|
8834
|
+
LINE_NUMBER,
|
8835
|
+
LINE_CONTENT
|
8836
|
+
]
|
8631
8837
|
.ft P
|
8632
8838
|
.fi
|
8633
|
-
.SS 説明
|
8634
8839
|
.sp
|
8635
|
-
|
8840
|
+
\fBINPUT_FILE_NAME\fP はエラーが発生した入力ファイルのファイル名です。
|
8636
8841
|
.sp
|
8637
|
-
|
8638
|
-
.SS 引数
|
8842
|
+
\fBLINE_NUMBER\fP はエラーが発生した箇所の \fBINPUT_FILE_NAME\fP での行番号です。
|
8639
8843
|
.sp
|
8640
|
-
\
|
8844
|
+
\fBLINE_CONTENT\fP は \fBINPUT_FILE_NAME\fP 内の \fBLINE_NUMBER\fP 行目の内容です。
|
8845
|
+
.SS \fBBODY\fP
|
8846
|
+
.sp
|
8847
|
+
\fBBODY\fP の内容は実行したコマンドに依存します。 \fBBODY\fP がないこともあります。
|
8848
|
+
.sp
|
8849
|
+
エラーが発生した時に、 \fBBODY\fP にエラーメッセージが入っていることもあります。
|
8850
|
+
.SS XML
|
8851
|
+
.sp
|
8852
|
+
TODO
|
8853
|
+
.SS TSV
|
8854
|
+
.sp
|
8855
|
+
TODO
|
8856
|
+
.SS 参考
|
8641
8857
|
.INDENT 0.0
|
8642
|
-
.
|
8643
|
-
|
8644
|
-
.UNINDENT
|
8858
|
+
.IP \(bu 2
|
8859
|
+
\fBreturn_code\fP describes about return code.
|
8645
8860
|
.UNINDENT
|
8646
|
-
.SS
|
8647
|
-
.SS
|
8861
|
+
.SS リターンコード
|
8862
|
+
.SS 概要
|
8648
8863
|
.sp
|
8649
|
-
|
8864
|
+
リターンコードは処理が成功したかどうかを示すために使われます。もし、処理が成功していなければリターンコードはエラーの種類を示します。
|
8865
|
+
.sp
|
8866
|
+
リターンコードはCのAPIでもクエリーAPIでも使われます。CのAPIでは \fBgrn_ctx_t::rc\fP でリターンコードを確認できます。クエリーAPIではヘッダー要素を見るとリターンコードを確認できます。クエリーAPIでのヘッダー要素については \fBoutput_format\fP を参照してください。
|
8867
|
+
.SS 一覧
|
8868
|
+
.sp
|
8869
|
+
以下はリターンコードの一覧です。 \fBGRN_SUCCESS\fP (= 0) は処理が成功したことを示しています。負の値のリターンコードはエラーの種類を表しています。 \fBGRN_END_OF_DATA\fP は特別なリターンコードです。このリターンコードはCのAPIでだけ使われていて、クエリーAPIにはでてきません。
|
8870
|
+
.INDENT 0.0
|
8871
|
+
.IP \(bu 2
|
8872
|
+
0: \fBGRN_SUCCESS\fP
|
8873
|
+
.IP \(bu 2
|
8874
|
+
1: \fBGRN_END_OF_DATA\fP
|
8875
|
+
.IP \(bu 2
|
8876
|
+
\-1: \fBGRN_UNKNOWN_ERROR\fP
|
8877
|
+
.IP \(bu 2
|
8878
|
+
\-2: \fBGRN_OPERATION_NOT_PERMITTED\fP
|
8879
|
+
.IP \(bu 2
|
8880
|
+
\-3: \fBGRN_NO_SUCH_FILE_OR_DIRECTORY\fP
|
8881
|
+
.IP \(bu 2
|
8882
|
+
\-4: \fBGRN_NO_SUCH_PROCESS\fP
|
8883
|
+
.IP \(bu 2
|
8884
|
+
\-5: \fBGRN_INTERRUPTED_FUNCTION_CALL\fP
|
8885
|
+
.IP \(bu 2
|
8886
|
+
\-6: \fBGRN_INPUT_OUTPUT_ERROR\fP
|
8887
|
+
.IP \(bu 2
|
8888
|
+
\-7: \fBGRN_NO_SUCH_DEVICE_OR_ADDRESS\fP
|
8889
|
+
.IP \(bu 2
|
8890
|
+
\-8: \fBGRN_ARG_LIST_TOO_LONG\fP
|
8891
|
+
.IP \(bu 2
|
8892
|
+
\-9: \fBGRN_EXEC_FORMAT_ERROR\fP
|
8893
|
+
.IP \(bu 2
|
8894
|
+
\-10: \fBGRN_BAD_FILE_DESCRIPTOR\fP
|
8895
|
+
.IP \(bu 2
|
8896
|
+
\-11: \fBGRN_NO_CHILD_PROCESSES\fP
|
8897
|
+
.IP \(bu 2
|
8898
|
+
\-12: \fBGRN_RESOURCE_TEMPORARILY_UNAVAILABLE\fP
|
8899
|
+
.IP \(bu 2
|
8900
|
+
\-13: \fBGRN_NOT_ENOUGH_SPACE\fP
|
8901
|
+
.IP \(bu 2
|
8902
|
+
\-14: \fBGRN_PERMISSION_DENIED\fP
|
8903
|
+
.IP \(bu 2
|
8904
|
+
\-15: \fBGRN_BAD_ADDRESS\fP
|
8905
|
+
.IP \(bu 2
|
8906
|
+
\-16: \fBGRN_RESOURCE_BUSY\fP
|
8907
|
+
.IP \(bu 2
|
8908
|
+
\-17: \fBGRN_FILE_EXISTS\fP
|
8909
|
+
.IP \(bu 2
|
8910
|
+
\-18: \fBGRN_IMPROPER_LINK\fP
|
8911
|
+
.IP \(bu 2
|
8912
|
+
\-19: \fBGRN_NO_SUCH_DEVICE\fP
|
8913
|
+
.IP \(bu 2
|
8914
|
+
\-20: \fBGRN_NOT_A_DIRECTORY\fP
|
8915
|
+
.IP \(bu 2
|
8916
|
+
\-21: \fBGRN_IS_A_DIRECTORY\fP
|
8917
|
+
.IP \(bu 2
|
8918
|
+
\-22: \fBGRN_INVALID_ARGUMENT\fP
|
8919
|
+
.IP \(bu 2
|
8920
|
+
\-23: \fBGRN_TOO_MANY_OPEN_FILES_IN_SYSTEM\fP
|
8921
|
+
.IP \(bu 2
|
8922
|
+
\-24: \fBGRN_TOO_MANY_OPEN_FILES\fP
|
8923
|
+
.IP \(bu 2
|
8924
|
+
\-25: \fBGRN_INAPPROPRIATE_I_O_CONTROL_OPERATION\fP
|
8925
|
+
.IP \(bu 2
|
8926
|
+
\-26: \fBGRN_FILE_TOO_LARGE\fP
|
8927
|
+
.IP \(bu 2
|
8928
|
+
\-27: \fBGRN_NO_SPACE_LEFT_ON_DEVICE\fP
|
8929
|
+
.IP \(bu 2
|
8930
|
+
\-28: \fBGRN_INVALID_SEEK\fP
|
8931
|
+
.IP \(bu 2
|
8932
|
+
\-29: \fBGRN_READ_ONLY_FILE_SYSTEM\fP
|
8933
|
+
.IP \(bu 2
|
8934
|
+
\-30: \fBGRN_TOO_MANY_LINKS\fP
|
8935
|
+
.IP \(bu 2
|
8936
|
+
\-31: \fBGRN_BROKEN_PIPE\fP
|
8937
|
+
.IP \(bu 2
|
8938
|
+
\-32: \fBGRN_DOMAIN_ERROR\fP
|
8939
|
+
.IP \(bu 2
|
8940
|
+
\-33: \fBGRN_RESULT_TOO_LARGE\fP
|
8941
|
+
.IP \(bu 2
|
8942
|
+
\-34: \fBGRN_RESOURCE_DEADLOCK_AVOIDED\fP
|
8943
|
+
.IP \(bu 2
|
8944
|
+
\-35: \fBGRN_NO_MEMORY_AVAILABLE\fP
|
8945
|
+
.IP \(bu 2
|
8946
|
+
\-36: \fBGRN_FILENAME_TOO_LONG\fP
|
8947
|
+
.IP \(bu 2
|
8948
|
+
\-37: \fBGRN_NO_LOCKS_AVAILABLE\fP
|
8949
|
+
.IP \(bu 2
|
8950
|
+
\-38: \fBGRN_FUNCTION_NOT_IMPLEMENTED\fP
|
8951
|
+
.IP \(bu 2
|
8952
|
+
\-39: \fBGRN_DIRECTORY_NOT_EMPTY\fP
|
8953
|
+
.IP \(bu 2
|
8954
|
+
\-40: \fBGRN_ILLEGAL_BYTE_SEQUENCE\fP
|
8955
|
+
.IP \(bu 2
|
8956
|
+
\-41: \fBGRN_SOCKET_NOT_INITIALIZED\fP
|
8957
|
+
.IP \(bu 2
|
8958
|
+
\-42: \fBGRN_OPERATION_WOULD_BLOCK\fP
|
8959
|
+
.IP \(bu 2
|
8960
|
+
\-43: \fBGRN_ADDRESS_IS_NOT_AVAILABLE\fP
|
8961
|
+
.IP \(bu 2
|
8962
|
+
\-44: \fBGRN_NETWORK_IS_DOWN\fP
|
8963
|
+
.IP \(bu 2
|
8964
|
+
\-45: \fBGRN_NO_BUFFER\fP
|
8965
|
+
.IP \(bu 2
|
8966
|
+
\-46: \fBGRN_SOCKET_IS_ALREADY_CONNECTED\fP
|
8967
|
+
.IP \(bu 2
|
8968
|
+
\-47: \fBGRN_SOCKET_IS_NOT_CONNECTED\fP
|
8969
|
+
.IP \(bu 2
|
8970
|
+
\-48: \fBGRN_SOCKET_IS_ALREADY_SHUTDOWNED\fP
|
8971
|
+
.IP \(bu 2
|
8972
|
+
\-49: \fBGRN_OPERATION_TIMEOUT\fP
|
8973
|
+
.IP \(bu 2
|
8974
|
+
\-50: \fBGRN_CONNECTION_REFUSED\fP
|
8975
|
+
.IP \(bu 2
|
8976
|
+
\-51: \fBGRN_RANGE_ERROR\fP
|
8977
|
+
.IP \(bu 2
|
8978
|
+
\-52: \fBGRN_TOKENIZER_ERROR\fP
|
8979
|
+
.IP \(bu 2
|
8980
|
+
\-53: \fBGRN_FILE_CORRUPT\fP
|
8981
|
+
.IP \(bu 2
|
8982
|
+
\-54: \fBGRN_INVALID_FORMAT\fP
|
8983
|
+
.IP \(bu 2
|
8984
|
+
\-55: \fBGRN_OBJECT_CORRUPT\fP
|
8985
|
+
.IP \(bu 2
|
8986
|
+
\-56: \fBGRN_TOO_MANY_SYMBOLIC_LINKS\fP
|
8987
|
+
.IP \(bu 2
|
8988
|
+
\-57: \fBGRN_NOT_SOCKET\fP
|
8989
|
+
.IP \(bu 2
|
8990
|
+
\-58: \fBGRN_OPERATION_NOT_SUPPORTED\fP
|
8991
|
+
.IP \(bu 2
|
8992
|
+
\-59: \fBGRN_ADDRESS_IS_IN_USE\fP
|
8993
|
+
.IP \(bu 2
|
8994
|
+
\-60: \fBGRN_ZLIB_ERROR\fP
|
8995
|
+
.IP \(bu 2
|
8996
|
+
\-61: \fBGRN_LZO_ERROR\fP
|
8997
|
+
.IP \(bu 2
|
8998
|
+
\-62: \fBGRN_STACK_OVER_FLOW\fP
|
8999
|
+
.IP \(bu 2
|
9000
|
+
\-63: \fBGRN_SYNTAX_ERROR\fP
|
9001
|
+
.IP \(bu 2
|
9002
|
+
\-64: \fBGRN_RETRY_MAX\fP
|
9003
|
+
.IP \(bu 2
|
9004
|
+
\-65: \fBGRN_INCOMPATIBLE_FILE_FORMAT\fP
|
9005
|
+
.IP \(bu 2
|
9006
|
+
\-66: \fBGRN_UPDATE_NOT_ALLOWED\fP
|
9007
|
+
.IP \(bu 2
|
9008
|
+
\-67: \fBGRN_TOO_SMALL_OFFSET\fP
|
9009
|
+
.IP \(bu 2
|
9010
|
+
\-68: \fBGRN_TOO_LARGE_OFFSET\fP
|
9011
|
+
.IP \(bu 2
|
9012
|
+
\-69: \fBGRN_TOO_SMALL_LIMIT\fP
|
9013
|
+
.IP \(bu 2
|
9014
|
+
\-70: \fBGRN_CAS_ERROR\fP
|
9015
|
+
.IP \(bu 2
|
9016
|
+
\-71: \fBGRN_UNSUPPORTED_COMMAND_VERSION\fP
|
9017
|
+
.UNINDENT
|
9018
|
+
.SS 参考
|
9019
|
+
.INDENT 0.0
|
9020
|
+
.IP \(bu 2
|
9021
|
+
\fBoutput_format\fP はクエリーAPIでのレスポンスの中でどこにリターンコードがあるかを説明しています。
|
9022
|
+
.IP \(bu 2
|
9023
|
+
\fB/spec/gqtp\fP: GQTPプロトコルもステータスとしてリターンコードを使っていますが、ステータスは2バイトの符号なし整数です。そのため、GQTPプロトコルでは、負の値のリターンコードは正の値のステータスになります。GQTPプロトコルのステータスの値を2バイトの符号付き整数として扱うとステータスをリターンコードに変換できます。
|
9024
|
+
.UNINDENT
|
9025
|
+
.SS cache_limit
|
9026
|
+
.SS 名前
|
9027
|
+
.sp
|
9028
|
+
cache_limit \- cacheサイズの設定・取得
|
9029
|
+
.SS 書式
|
9030
|
+
.sp
|
9031
|
+
.nf
|
9032
|
+
.ft C
|
9033
|
+
cache_limit max
|
9034
|
+
.ft P
|
9035
|
+
.fi
|
9036
|
+
.SS 説明
|
9037
|
+
.sp
|
9038
|
+
groonga組込コマンドの一つであるcache_limitについて説明します。組込コマンドは、groonga実行ファイルの引数、標準入力、またはソケット経由でgroongaサーバにリクエストを送信することによって実行します。
|
9039
|
+
.sp
|
9040
|
+
cache_limitは、クエリキャッシュの最大件数を取得したり設定したりします。
|
9041
|
+
.SS 引数
|
9042
|
+
.sp
|
9043
|
+
\fBmax\fP
|
9044
|
+
.INDENT 0.0
|
9045
|
+
.INDENT 3.5
|
9046
|
+
クエリキャッシュの最大件数を整数で指定します。
|
9047
|
+
maxが指定されなかった場合には、クエリキャッシュの最大件数は変更せず、
|
9048
|
+
現在の設定値のみが返されます。
|
9049
|
+
.UNINDENT
|
9050
|
+
.UNINDENT
|
9051
|
+
.SS 返値
|
9052
|
+
.SS json
|
9053
|
+
.sp
|
9054
|
+
.nf
|
9055
|
+
.ft C
|
9056
|
+
[以前の設定値]
|
9057
|
+
|
9058
|
+
\(ga\(ga以前の設定値\(ga\(ga
|
9059
|
+
|
9060
|
+
すでに設定されていたクエリキャッシュの最大件数を返す。
|
9061
|
+
.ft P
|
9062
|
+
.fi
|
9063
|
+
.SS 例
|
9064
|
+
.sp
|
9065
|
+
.nf
|
9066
|
+
.ft C
|
9067
|
+
cache_limit 4
|
9068
|
+
[100]
|
9069
|
+
.ft P
|
9070
|
+
.fi
|
9071
|
+
.SS check
|
9072
|
+
.SS 名前
|
9073
|
+
.sp
|
9074
|
+
check \- オブジェクトの状態表示
|
9075
|
+
.SS 書式
|
9076
|
+
.sp
|
9077
|
+
.nf
|
9078
|
+
.ft C
|
9079
|
+
check obj
|
9080
|
+
.ft P
|
9081
|
+
.fi
|
9082
|
+
.SS 説明
|
9083
|
+
.sp
|
9084
|
+
groonga組込コマンドの一つであるcheckについて説明します。組込コマンドは、groonga実行ファイルの引数、標準入力、またはソケット経由でgroongaサーバにリクエストを送信することによって実行します。
|
9085
|
+
.sp
|
9086
|
+
checkコマンドは、groongaプロセス内の指定したオブジェクトの状態を表示します。主にデータベースが壊れた場合など異常時の問題解決のために使用することを想定しています。デバッグ用のため、返値のフォーマットが安定しているということは保証されません。(フォーマットが変更される可能性が高い)
|
9087
|
+
.SS 引数
|
9088
|
+
.sp
|
9089
|
+
\fBobj\fP
|
9090
|
+
.INDENT 0.0
|
9091
|
+
.INDENT 3.5
|
9092
|
+
状態を表示するオブジェクトの名前を指定します。
|
9093
|
+
.UNINDENT
|
9094
|
+
.UNINDENT
|
9095
|
+
.SS 返値
|
9096
|
+
.SS json形式
|
9097
|
+
.sp
|
9098
|
+
チェックするオブジェクトにより返される値が変わります。
|
8650
9099
|
.sp
|
8651
9100
|
インデックスカラムの場合:
|
8652
9101
|
.sp
|
@@ -9826,6 +10275,53 @@ quitは、groongaプロセスとのセッションを終了します。クライ
|
|
9826
10275
|
quit
|
9827
10276
|
.ft P
|
9828
10277
|
.fi
|
10278
|
+
.SS register
|
10279
|
+
.SS 概要
|
10280
|
+
.sp
|
10281
|
+
\fBregister\fP コマンドはプラグインを登録します。プラグインを使う前にプラグインを登録する必要があります。
|
10282
|
+
.sp
|
10283
|
+
同じデータベースに対しては1つのプラグインについて一度だけ \fIregister\(ga\fP コマンドを実行すれば十分です。これは、登録されたプラグイン情報はデータベースに記録されているからです。 \fBgroonga\fP プロセスを再起動したときは、 \fBregister\fP コマンドを実行しなくてもすでに登録されているプラグインを読み込みます。
|
10284
|
+
.IP ノート
|
10285
|
+
今のところ、登録したプラグインは削除できません。
|
10286
|
+
.RE
|
10287
|
+
.SS 構文
|
10288
|
+
.sp
|
10289
|
+
\fBregister\fP の引数は \fBpath\fP だけです。これは必須の引数です:
|
10290
|
+
.sp
|
10291
|
+
.nf
|
10292
|
+
.ft C
|
10293
|
+
register path
|
10294
|
+
.ft P
|
10295
|
+
.fi
|
10296
|
+
.SS 使い方
|
10297
|
+
.sp
|
10298
|
+
これは \fB${PREFIX}/lib/groonga/plugins/query_expanders/tsv.so\fP に含まれている \fBQueryExpanderTSV\fP クエリー展開オブジェクトを登録する例です。
|
10299
|
+
.sp
|
10300
|
+
実行例:
|
10301
|
+
.sp
|
10302
|
+
.nf
|
10303
|
+
.ft C
|
10304
|
+
register query_expanders/tsv
|
10305
|
+
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
10306
|
+
.ft P
|
10307
|
+
.fi
|
10308
|
+
.sp
|
10309
|
+
\fB${PREFIX}/lib/groonga/plugins/\fP と拡張子( \fB.so\fP )は省略可能です。これらは自動で補完されます。
|
10310
|
+
.sp
|
10311
|
+
\fBregister /usr/lib/groonga/plugins/query_expanders/tsv.so\fP というように絶対パスを指定することもできます。
|
10312
|
+
.SS 戻り値
|
10313
|
+
.sp
|
10314
|
+
\fBregister\fP が成功したときは以下のようにボディは \fBtrue\fP になります:
|
10315
|
+
.sp
|
10316
|
+
.nf
|
10317
|
+
.ft C
|
10318
|
+
[HEADER, true]
|
10319
|
+
.ft P
|
10320
|
+
.fi
|
10321
|
+
.sp
|
10322
|
+
\fBregister\fP が失敗すると、エラーの詳細は \fBHEADER\fP に含まれます。
|
10323
|
+
.sp
|
10324
|
+
\fBHEADER\fP については \fB/reference/command/output_format\fP を参照してください。
|
9829
10325
|
.SS select
|
9830
10326
|
.SS 概要
|
9831
10327
|
.sp
|
@@ -10049,7 +10545,7 @@ select Entries \-\-match_columns content \-\-query fast
|
|
10049
10545
|
.sp
|
10050
10546
|
この \fBselect\fP コマンドは \fBEntries\fP テーブルの中から \fBcontent\fP カラムの値に \fBfast\fP を含んでいるレコードを検索します。
|
10051
10547
|
.sp
|
10052
|
-
\fBquery\fP
|
10548
|
+
\fBquery\fP はクエリー構文という構文を使いますが、詳細はここでは説明しません。詳細は \fB/reference/grn_expr/query_syntax\fP を参照してください。
|
10053
10549
|
.SS 検索条件: \fBfilter\fP
|
10054
10550
|
.sp
|
10055
10551
|
\fBfilter\fP は複雑な検索条件を指定するために用意されています。ECMAScriptのような構文で \fBfilter\fP に検索条件を指定します。
|
@@ -10383,7 +10879,7 @@ select Entries \-\-match_columns \(aq_key * 10 || content\(aq \-\-query groonga
|
|
10383
10879
|
\fB\-\-match_columns \(aq_key * 10 || content\(aq\fP はデフォルト検索対象カラムが \fB_key\fP カラムと \fBcontent\fP カラムで、 \fB_key\fP カラムの重みは10、 \fBcontent\fP カラムの重みは1という意味です。この重み付けは \fB_key\fP カラムの値は \fBcontent\fP カラムの値よりも重要だという意味になります。この例では、ブログエントリのタイトルはブログエントリの内容よりも重要だということです。
|
10384
10880
|
.SS \fBquery\fP
|
10385
10881
|
.sp
|
10386
|
-
|
10882
|
+
クエリーテキストを指定します。通常、全文検索をするために \fBmatch_columns\fP 引数と一緒に使います。 \fBquery\fP 引数はWebページにある全文検索フォームで使いやすいように設計されています。クエリーテキストは \fB/reference/grn_expr/query_syntax\fP という書式を使います。この書式はGoogleの検索フォームのように一般的な検索フォームと似ています。例えば、 \fBword1 word2\fP は \fBword1\fP と \fBword2\fP を含んでいるレコードを検索するという意味になります。 \fBword1 OR word2\fP は \fBword1\fP または \fBword2\fP を含んでいるレコードを検索するという意味になります。
|
10387
10883
|
.sp
|
10388
10884
|
以下は論理積を使った検索の簡単な例です。
|
10389
10885
|
.sp
|
@@ -10846,15 +11342,15 @@ select Entries \-\-match_columns content \-\-query groo \-\-match_escalation_thr
|
|
10846
11342
|
2番目の \fBselect\fP コマンドも \fBEntries\fP テーブルから \fBcontent\fP カラムの値に \fBgroo\fP という単語を含むレコードを検索します。そして、この \fBselect\fP コマンドもマッチしません。この場合、マッチしたレコード数(0)が \fBmatch_escalation_threshold\fP (\-1)より大きいので、検索方法をエスカレーションしません。そして、1つもレコードがマッチしません。
|
10847
11343
|
.SS \fBquery_expansion\fP
|
10848
11344
|
.sp
|
10849
|
-
|
11345
|
+
クエリー展開用の引数です。クエリー展開はクエリー中の特定の単語を別の単語に置換します。通常は類義語検索に使います。
|
10850
11346
|
.sp
|
10851
11347
|
\fBquery\fP 引数の値を置換するために使うカラムを指定します。この引数の値の書式は「 \fB${TABLE}.${COLUMN}\fP 」です。例えば、 「 \fBTerms.synonym\fP 」は \fBTerms\fP テーブルの \fBsynonym\fP カラムを指定しています。
|
10852
11348
|
.sp
|
10853
|
-
|
11349
|
+
クエリー展開用のテーブルを「置換テーブル」と呼びます。置換テーブルのキーは \fBShortText\fP にしてください。そのため、配列テーブル( \fBTABLE_NO_KEY\fP )は置換テーブルに使うことはできません。なぜなら、配列テーブルにはキーがないからです。
|
10854
11350
|
.sp
|
10855
|
-
|
11351
|
+
クエリー展開用のカラムを「置換カラム」と呼びます。置換カラムの値の型は \fBShortText\fP にしてください。カラムの種類はベクター( \fBCOLUMN_VECTOR\fP )にしてください。
|
10856
11352
|
.sp
|
10857
|
-
|
11353
|
+
クエリー展開はクエリーの中にある置換テーブルのキーを置換カラムの値で置換します。 \fBquery\fP の中にある単語が置換テーブルのキーだったら、キーに対応する置換カラムの値でその単語を置換します。置換は再帰的に実行しません。これは、置換されたクエリー内に置換対象の単語があっても置換されないということです。
|
10858
11354
|
.sp
|
10859
11355
|
以下は \fBquery_expansion\fP の簡単な使用例を示すためのサンプル置換テーブルです。
|
10860
11356
|
.sp
|
@@ -11017,11 +11513,11 @@ select Entries \-\-match_columns content \-\-query "((mroonga) OR (tritonn) OR (
|
|
11017
11513
|
.ft P
|
11018
11514
|
.fi
|
11019
11515
|
.sp
|
11020
|
-
最初の \fBselect\fP
|
11516
|
+
最初の \fBselect\fP コマンドはクエリー展開を使いません。そのため、 \fB"tritonn"\fP という単語を含んでいるレコードは見つかりません。2番目の \fBselect\fP コマンドはクエリー展開を使っています。そのため、 \fB"tritonn"\fP という単語を含んでいるレコードが見つかります。3番目の \fBselect\fP コマンドはクエリー展開を使っていませんが、2番目の \fBselect\fP コマンドと同じ結果になります。これは、3番目の \fBselect\fP コマンドは展開後のクエリーを使っているからです。
|
11021
11517
|
.sp
|
11022
11518
|
それぞれの置換する値は \fB(...)\fP や \fBOR\fP といった \fB/reference/grn_expr/query_syntax\fP を使えます。これらの構文を使うことにより複雑な置換をすることができます。
|
11023
11519
|
.sp
|
11024
|
-
|
11520
|
+
以下はクエリー構文を使った複雑な置換の使用例です。
|
11025
11521
|
.sp
|
11026
11522
|
実行例:
|
11027
11523
|
.sp
|
@@ -11080,7 +11576,7 @@ select Entries \-\-match_columns content \-\-query "popular" \-\-query_expansion
|
|
11080
11576
|
.ft P
|
11081
11577
|
.fi
|
11082
11578
|
.sp
|
11083
|
-
この \fBload\fP コマンドは新しく \fB"popular"\fP という類義語を登録しています。これは \fB((popular) OR (n_likes:>=10))\fP
|
11579
|
+
この \fBload\fP コマンドは新しく \fB"popular"\fP という類義語を登録しています。これは \fB((popular) OR (n_likes:>=10))\fP に置換されます。置換されたクエリーは、「popular」というのは「popular」という単語を含んでいるか10以上の「いいね!」数を持つエントリという意味になります。
|
11084
11580
|
.sp
|
11085
11581
|
この \fBselect\fP コマンドは \fBEntries\fP テーブルの中から \fBn_likes\fP カラムの値が \fB10\fP 以上のレコードを出力します。
|
11086
11582
|
.SS \fBquery_flags\fP
|
@@ -11107,7 +11603,7 @@ select Entries \-\-match_columns content \-\-query "popular" \-\-query_expansion
|
|
11107
11603
|
.sp
|
11108
11604
|
\fBALLOW_UPDATE\fP を指定すると \fBCOLUMN:=NEW_VALUE\fP という構文を使って \fBquery\fP でカラムの値を更新できます。カラム更新用の構文ではカラムを指定する必要があるため、 \fBALLOW_COLUMN\fP も一緒に指定する必要があります。
|
11109
11605
|
.sp
|
11110
|
-
\fBALLOW_LEADING_NOT\fP を指定すると \fB\-WORD\fP
|
11606
|
+
\fBALLOW_LEADING_NOT\fP を指定すると \fB\-WORD\fP という構文を使って最初の条件として否定条件を指定できます。このクエリーは \fBWORD\fP にマッチしないレコードを検索します。最初の条件に否定条件を使ったクエリーは多くの場合重いクエリーになります。これは多くのレコードにマッチするからです。そのため、このフラグはデフォルトでは無効になっています。もし、このフラグを使う場合は重いクエリーとなるということを十分気をつけてください。
|
11111
11607
|
.sp
|
11112
11608
|
\fBNONE\fP は単に無視されます。フラグを指定しないときに \fBNONE\fP を使えます。
|
11113
11609
|
.sp
|
@@ -12150,7 +12646,7 @@ status
|
|
12150
12646
|
.RE
|
12151
12647
|
.SS 名前
|
12152
12648
|
.sp
|
12153
|
-
suggest \-
|
12649
|
+
suggest \- 指定されたクエリーに対する補完・補正・提案候補を返す。
|
12154
12650
|
.SS 書式
|
12155
12651
|
.sp
|
12156
12652
|
.nf
|
@@ -12160,7 +12656,7 @@ suggest types table column query [sortby [output_columns [offset [limit [frequen
|
|
12160
12656
|
.fi
|
12161
12657
|
.SS 説明
|
12162
12658
|
.sp
|
12163
|
-
suggest
|
12659
|
+
suggestコマンドは指定されたクエリーに対する補完・補正・提案候補を返します。
|
12164
12660
|
.sp
|
12165
12661
|
補完・補正・提案については \fB/suggest/introduction\fP を参照してください。
|
12166
12662
|
.SS オプション
|
@@ -12228,7 +12724,7 @@ groonga\-suggest\-create\-dataset /tmp/db\-path query
|
|
12228
12724
|
\fBtable\fP で指定したテーブルにあるふりがな情報を含むカラムを指定します。ふりがなはカタカナで指定します。
|
12229
12725
|
.TP
|
12230
12726
|
.B \fBquery\fP
|
12231
|
-
|
12727
|
+
補完・補正・提案対象のクエリーを指定します。
|
12232
12728
|
.TP
|
12233
12729
|
.B \fBsortby\fP
|
12234
12730
|
ソートキーを指定します。
|
@@ -12334,7 +12830,7 @@ groonga\-suggest\-create\-dataset /tmp/db\-path query
|
|
12334
12830
|
\fBauto\fP
|
12335
12831
|
.UNINDENT
|
12336
12832
|
.UNINDENT
|
12337
|
-
.SS
|
12833
|
+
.SS 戻り値
|
12338
12834
|
.SS JSON形式
|
12339
12835
|
.sp
|
12340
12836
|
返されるJSON形式は以下の通りです:
|
@@ -13220,49 +13716,226 @@ Object型はv1.2でサポートされます。
|
|
13220
13716
|
.SS Tokenizers
|
13221
13717
|
.sp
|
13222
13718
|
TODO: Write me.
|
13223
|
-
.SS
|
13224
|
-
.SS
|
13719
|
+
.SS クエリー展開オブジェクト一覧
|
13720
|
+
.SS QueryExpanderTSV
|
13721
|
+
.SS 概要
|
13225
13722
|
.sp
|
13226
|
-
|
13227
|
-
.SS
|
13723
|
+
\fBQueryExpanderTSV\fP はクエリー展開プラグインです。同義語はTSV(データをタブで区切るファイルフォーマット)ファイルから読み込みます。このプラグインは組み込みのクエリー展開機能よりも機能が少ないです。例えば、単語の正規化をサポートしていません。しかし、TSVファイルで同義語を管理できるためこちらの方が使いやすいかもしれません。TSVファイルなのでExcelなどの表計算ソフトで同義語を編集できます。組み込みのクエリー展開機能では、groongaのテーブルとして同義語を管理します。
|
13724
|
+
.SS インストール
|
13228
13725
|
.sp
|
13229
|
-
|
13726
|
+
\fBQueryExpanderTSV\fP を使う前に \fBquery_expanders/tsv\fP をプラグインとして登録します:
|
13230
13727
|
.sp
|
13231
|
-
|
13728
|
+
.nf
|
13729
|
+
.ft C
|
13730
|
+
register query_expanders/tsv
|
13731
|
+
.ft P
|
13732
|
+
.fi
|
13733
|
+
.SS 使い方
|
13232
13734
|
.sp
|
13233
|
-
\
|
13234
|
-
.INDENT 0.0
|
13235
|
-
.INDENT 3.5
|
13236
|
-
レコードに付与される一意な番号です。全てのテーブルに定義されます。値の範囲は1〜1073741824の整数で、通常はレコードを追加した順に1ずつ加算されます。_idの値は不変で、レコードが存在する限り変更することはできません。ただし、削除されたレコードの_idの値は再利用されます。
|
13237
|
-
.UNINDENT
|
13238
|
-
.UNINDENT
|
13735
|
+
\fBselect\fP コマンドに \fB\-\-query_expansion QueryExpanderTSV\fP パラメーターを追加します:
|
13239
13736
|
.sp
|
13240
|
-
|
13241
|
-
.
|
13242
|
-
|
13243
|
-
|
13244
|
-
.
|
13245
|
-
.UNINDENT
|
13737
|
+
.nf
|
13738
|
+
.ft C
|
13739
|
+
select \-\-query "QUERY" \-\-query_expansion QueryExpanderTSV
|
13740
|
+
.ft P
|
13741
|
+
.fi
|
13246
13742
|
.sp
|
13247
|
-
\
|
13248
|
-
.
|
13249
|
-
|
13250
|
-
|
13251
|
-
|
13252
|
-
|
13743
|
+
\fBQUERY\fP 内に登録済みの同義語がある場合はそれらが展開されます。例えば、以下の同義語があるとします。
|
13744
|
+
.TS
|
13745
|
+
center;
|
13746
|
+
|l|l|l|.
|
13747
|
+
_
|
13748
|
+
T{
|
13749
|
+
単語
|
13750
|
+
T} T{
|
13751
|
+
同義語1
|
13752
|
+
T} T{
|
13753
|
+
同義語2
|
13754
|
+
T}
|
13755
|
+
_
|
13756
|
+
T{
|
13757
|
+
groonga
|
13758
|
+
T} T{
|
13759
|
+
groonga
|
13760
|
+
T} T{
|
13761
|
+
Senna
|
13762
|
+
T}
|
13763
|
+
_
|
13764
|
+
T{
|
13765
|
+
mroonga
|
13766
|
+
T} T{
|
13767
|
+
mroonga
|
13768
|
+
T} T{
|
13769
|
+
groonga MySQL
|
13770
|
+
T}
|
13771
|
+
_
|
13772
|
+
.TE
|
13253
13773
|
.sp
|
13254
|
-
\
|
13255
|
-
.INDENT 0.0
|
13256
|
-
.INDENT 3.5
|
13257
|
-
各レコードのスコア値を表します。検索結果として生成されたテーブルのみに定義されます。
|
13774
|
+
この表は、 \fB単語\fP の同義語は \fB同義語1\fP と \fB同義語2\fP という意味です。例えば、 \fBgroonga\fP の同義語は \fBgroonga\fP と \fBSenna\fP です。また、 \fBmroonga\fP の同義語は \fBmroonga\fP と \fBgroonga MySQL\fP です。
|
13258
13775
|
.sp
|
13259
|
-
|
13260
|
-
.UNINDENT
|
13261
|
-
.UNINDENT
|
13776
|
+
クエリーが \fBgroonga\fP のときのクエリー展開の例です:
|
13262
13777
|
.sp
|
13263
|
-
|
13264
|
-
.
|
13265
|
-
|
13778
|
+
.nf
|
13779
|
+
.ft C
|
13780
|
+
select \-\-query "groonga" \-\-query_expansion QueryExpanderTSV
|
13781
|
+
.ft P
|
13782
|
+
.fi
|
13783
|
+
.sp
|
13784
|
+
上記のコマンドは以下のコマンドと同じ意味です:
|
13785
|
+
.sp
|
13786
|
+
.nf
|
13787
|
+
.ft C
|
13788
|
+
select \-\-query "groonga OR Senna" \-\-query_expansion QueryExpanderTSV
|
13789
|
+
.ft P
|
13790
|
+
.fi
|
13791
|
+
.sp
|
13792
|
+
クエリーが \fBmroonga search\fP のときのクエリー展開の例です:
|
13793
|
+
.sp
|
13794
|
+
.nf
|
13795
|
+
.ft C
|
13796
|
+
select \-\-query "mroonga search" \-\-query_expansion QueryExpanderTSV
|
13797
|
+
.ft P
|
13798
|
+
.fi
|
13799
|
+
.sp
|
13800
|
+
上記のコマンドは以下のコマンドと同じ意味です:
|
13801
|
+
.sp
|
13802
|
+
.nf
|
13803
|
+
.ft C
|
13804
|
+
select \-\-query "(mroonga OR (groonga MySQL)) search" \-\-query_expansion QueryExpanderTSV
|
13805
|
+
.ft P
|
13806
|
+
.fi
|
13807
|
+
.sp
|
13808
|
+
登録されている単語だけ(ここでは \fBgroonga\fP と \fBmroonga\fP )クエリー展開されて、登録されていない単語(ここでは \fBsearch\fP )はクエリー展開されていないことが大事なポイントです。また、再帰的にクエリー展開しません。クエリー展開した結果の \fB(mroonga OR (groonga MySQL))\fP の中に \fBgroonga\fP がありますが、これは展開されません。
|
13809
|
+
.sp
|
13810
|
+
通常、同義語の中に \fB単語\fP 自身も含める必要があります。例えば、 \fBgroonga\fP と \fBmroonga\fP が同義語の中に含まれています。もし、 \fB単語\fP 自身を無視したい場合は同義語の中に \fB単語\fP を含めないでください。例えば、クエリー展開機能をスペル訂正機能として使う場合は、以下のような同義語を使ってください。
|
13811
|
+
.TS
|
13812
|
+
center;
|
13813
|
+
|l|l|.
|
13814
|
+
_
|
13815
|
+
T{
|
13816
|
+
単語
|
13817
|
+
T} T{
|
13818
|
+
同義語
|
13819
|
+
T}
|
13820
|
+
_
|
13821
|
+
T{
|
13822
|
+
gronga
|
13823
|
+
T} T{
|
13824
|
+
groonga
|
13825
|
+
T}
|
13826
|
+
_
|
13827
|
+
.TE
|
13828
|
+
.sp
|
13829
|
+
\fB単語\fP の \fBgronga\fP には誤字があります。 \fBo\fP がひとつ足りません。 \fB同義語\fP の \fBgroonga\fP が正しい単語です。
|
13830
|
+
.sp
|
13831
|
+
スペル訂正機能としてクエリー展開機能を使う例です:
|
13832
|
+
.sp
|
13833
|
+
.nf
|
13834
|
+
.ft C
|
13835
|
+
select \-\-query "gronga" \-\-query_expansion QueryExpanderTSV
|
13836
|
+
.ft P
|
13837
|
+
.fi
|
13838
|
+
.sp
|
13839
|
+
上記のコマンドは以下のコマンドと同じ意味です:
|
13840
|
+
.sp
|
13841
|
+
.nf
|
13842
|
+
.ft C
|
13843
|
+
select \-\-query "groonga" \-\-query_expansion QueryExpanderTSV
|
13844
|
+
.ft P
|
13845
|
+
.fi
|
13846
|
+
.sp
|
13847
|
+
前者のコマンドは \fB\-\-query\fP の値に誤字がありますが、後者のコマンドは誤字がありません。
|
13848
|
+
.SS TSVファイル
|
13849
|
+
.sp
|
13850
|
+
同義語はTSVフォーマットのファイルで定義します。このセクションでは定義方法について説明します。
|
13851
|
+
.SS 場所
|
13852
|
+
.sp
|
13853
|
+
TSVファイルのファイル名は \fBsynonyms.tsv\fP で、設定ディレクトリに置かなければいけません。例えば、 \fB/etc/groonga/synonyms.tsv\fP がTSVファイルの場所になります。場所はビルド時に決まります。
|
13854
|
+
.sp
|
13855
|
+
環境変数 \fBGRN_QUERY_EXPANDER_TSV_SYNONYMS_FILE\fP を指定することで実行時に場所を変更することもできます:
|
13856
|
+
.sp
|
13857
|
+
.nf
|
13858
|
+
.ft C
|
13859
|
+
% env GRN_QUERY_EXPANDER_TSV_SYNONYMS_FILE=/tmp/synonyms.tsv groonga
|
13860
|
+
.ft P
|
13861
|
+
.fi
|
13862
|
+
.sp
|
13863
|
+
上述のコマンドでは \fB/tmp/synonyms.tsv\fP ファイルが使われます。
|
13864
|
+
.SS フォーマット
|
13865
|
+
.sp
|
13866
|
+
TSVファイル内に0個以上の同義語を定義することができます。1行につき \fB単語\fP と \fB同義語リスト\fP のペアを定義します。 \fB\-\-query\fP の値の中にでてきた \fB単語\fP は \fB同義語リスト\fP に展開されます。 \fB同義語リスト\fP は \fBOR\fP でまとめます。例えば、同義語リスト \fBgroonga\fP と \fBSenna\fP は \fBgroonga OR Senna\fP と展開されます。
|
13867
|
+
.sp
|
13868
|
+
最初のカラムが \fB単語\fP で、残りのカラムが \fB単語\fP の \fB同義語リスト\fP になります。以下は、 \fB単語\fP が \fBgroonga\fP で、 \fB同義語リスト\fP が \fBgroonga\fP と \fBsynonyms\fP の例です。 \fB(TAB)\fP はタブ文字( \fBU+0009\fP )という意味です:
|
13869
|
+
.sp
|
13870
|
+
.nf
|
13871
|
+
.ft C
|
13872
|
+
groonga(TAB)groonga(TAB)Senna
|
13873
|
+
.ft P
|
13874
|
+
.fi
|
13875
|
+
.sp
|
13876
|
+
コメント行をサポートしています。 \fB#\fP から始まる行は無視します。以下はコメント行の例です。 \fBgroonga\fP とある行はコメント行として無視されます:
|
13877
|
+
.sp
|
13878
|
+
.nf
|
13879
|
+
.ft C
|
13880
|
+
#groonga(TAB)groonga(TAB)Senna
|
13881
|
+
mroonga(TAB)mroonga(TAB)groonga MySQL
|
13882
|
+
.ft P
|
13883
|
+
.fi
|
13884
|
+
.SS 制限
|
13885
|
+
.sp
|
13886
|
+
同義語を再読み込みするにはgroongaを再起動する必要があります。TSVファイルはプラグイン読み込み時に一度だけ読み込みます。
|
13887
|
+
.SS 参考
|
13888
|
+
.INDENT 0.0
|
13889
|
+
.INDENT 3.5
|
13890
|
+
.INDENT 0.0
|
13891
|
+
.IP \(bu 2
|
13892
|
+
\fIquery\-expansion\fP
|
13893
|
+
.UNINDENT
|
13894
|
+
.UNINDENT
|
13895
|
+
.UNINDENT
|
13896
|
+
.SS 疑似カラム (pseudo_column)
|
13897
|
+
.SS 名前
|
13898
|
+
.sp
|
13899
|
+
疑似カラム
|
13900
|
+
.SS 説明
|
13901
|
+
.sp
|
13902
|
+
groongaのデータベースで作成したテーブルには、いくつかのカラムが自動的に定義されます。
|
13903
|
+
.sp
|
13904
|
+
これらのカラムはいずれもアンダースコア(\(aq_\(aq)で始まる名前が付与されます。定義される疑似カラムは、テーブルの種類によって異なります。
|
13905
|
+
.sp
|
13906
|
+
\fB_id\fP
|
13907
|
+
.INDENT 0.0
|
13908
|
+
.INDENT 3.5
|
13909
|
+
レコードに付与される一意な番号です。全てのテーブルに定義されます。値の範囲は1〜1073741824の整数で、通常はレコードを追加した順に1ずつ加算されます。_idの値は不変で、レコードが存在する限り変更することはできません。ただし、削除されたレコードの_idの値は再利用されます。
|
13910
|
+
.UNINDENT
|
13911
|
+
.UNINDENT
|
13912
|
+
.sp
|
13913
|
+
\fB_key\fP
|
13914
|
+
.INDENT 0.0
|
13915
|
+
.INDENT 3.5
|
13916
|
+
レコードの主キー値を表します。主キーを持つテーブルのみに定義されます。主キー値はテーブルの中で一意であり、変更することはできません。
|
13917
|
+
.UNINDENT
|
13918
|
+
.UNINDENT
|
13919
|
+
.sp
|
13920
|
+
\fB_value\fP
|
13921
|
+
.INDENT 0.0
|
13922
|
+
.INDENT 3.5
|
13923
|
+
レコードの値を表します。value_typeを指定したテーブルのみに定義されます。自由に変更可能です。
|
13924
|
+
.UNINDENT
|
13925
|
+
.UNINDENT
|
13926
|
+
.sp
|
13927
|
+
\fB_score\fP
|
13928
|
+
.INDENT 0.0
|
13929
|
+
.INDENT 3.5
|
13930
|
+
各レコードのスコア値を表します。検索結果として生成されたテーブルのみに定義されます。
|
13931
|
+
.sp
|
13932
|
+
検索処理を実行する過程で値が設定されますが、自由に変更可能です。
|
13933
|
+
.UNINDENT
|
13934
|
+
.UNINDENT
|
13935
|
+
.sp
|
13936
|
+
\fB_nsubrecs\fP
|
13937
|
+
.INDENT 0.0
|
13938
|
+
.INDENT 3.5
|
13266
13939
|
主キーの値が同一であったレコードの件数を表します。検索結果として生成されたテーブルのみに定義されます。グループ化(drilldown)処理を実行すると、グループ化前のテーブルにおいて、グループ化キーの値が同一であったレコードの件数が、グループ化処理の結果を格納するテーブルの_nsubrecsに記録されます。
|
13267
13940
|
.UNINDENT
|
13268
13941
|
.UNINDENT
|
@@ -13291,11 +13964,11 @@ grn_expr関連のAPIを呼ぶ。
|
|
13291
13964
|
\fB/reference/grn_expr/script_syntax\fP はECMAScriptに似た構文です。 \fB/reference/grn_expr/script_syntax\fP ではすべての条件式と集合演算を使えます。 \fB/reference/grn_expr/script_syntax\fP は \fB/reference/commands/select\fP の \fBfilter\fP オプションで指定する検索条件や \fBscorer\fP オプションで指定する式で使えます。
|
13292
13965
|
.sp
|
13293
13966
|
groongaをライブラリとして使うと、grn_expr関連のAPIを呼び出してgrn_exprを作ることができます。 \fB/reference/grn_expr/script_syntax\fP のように、APIを呼び出すと全ての機能を使えます。grn_exprを作る構文を新しく作るときにはAPIが便利です。APIは \fI\%rroonga\fP というgroongaのRubyバインディングで使われています。rroongaでは文字列をパースするのではなく、Rubyの構文を使ってgrn_exprを作ることができます。
|
13294
|
-
.SS
|
13967
|
+
.SS クエリー構文
|
13295
13968
|
.sp
|
13296
|
-
|
13969
|
+
クエリー構文は一般的なWebの検索フォームで検索条件を指定するための構文です。Googleの検索フォームで使われている構文に似ています。例えば、 \fBword1 word2\fP は \fBword1\fP と \fBword2\fP の両方の単語を含んだレコードを検索するという意味です。 \fBword1 OR word2\fP は \fBword1\fP または \fBword2\fP のどちらかの単語を含んだレコードを検索します。
|
13297
13970
|
.sp
|
13298
|
-
|
13971
|
+
クエリー構文は \fB条件式\fP と \fB結合式\fP と \fB代入式\fP から成ります。通常、 \fB代入式\fP は考えなくてよいです。なぜなら、 \fB代入式\fP は \fB/reference/commands/select\fP の \fB\-\-query\fP オプションでは無効になっているからです。groongaをライブラリとして使ったときは、クエリー構文のパーサーのオプションをカスタマイズすることで \fB代入式\fP を有効にすることができます。
|
13299
13972
|
.sp
|
13300
13973
|
\fB条件式\fP は条件を指定します。 \fB結合式\fP は1つ以上の \fB条件式\fP 、 \fB結合式\fP 、 \fB代入式\fP から成ります。 \fB代入式\fP はカラムに値を代入します。
|
13301
13974
|
.SS サンプルデータ
|
@@ -13347,7 +14020,7 @@ load \-\-table Entries
|
|
13347
14020
|
これで例を示すためのスキーマとデータの準備ができました。
|
13348
14021
|
.SS エスケープ
|
13349
14022
|
.sp
|
13350
|
-
|
14023
|
+
クエリー構文には特別な文字があります。特別な文字それ自体を使うためには文字の前に \fB\e\fP をつけてエスケープしなければいけません。例えば、 \fB"\fP は特別な文字です。これは \fB\e"\fP というようにエスケープします。
|
13351
14024
|
.sp
|
13352
14025
|
以下が特別な文字のリストです:
|
13353
14026
|
.INDENT 0.0
|
@@ -14478,11 +15151,11 @@ select Entries \-\-query \(aqn_likes:<5 (content:@senna OR content:@fast)\(aq
|
|
14478
15151
|
.sp
|
14479
15152
|
このセクションは高度なユーザー向けです。それは、代入式は \fB/reference/commands/select\fP の \fB\-\-query\fP オプションではデフォルトでは無効になっているからです。代入式を有効にするには \fB\-\-query_flags\fP オプションに \fBALLOW_COLUMN|ALLOW_UPDATE\fP を指定してください。
|
14480
15153
|
.sp
|
14481
|
-
|
15154
|
+
クエリー構文における代入式にはいくつか制限があります。代入にはクエリー構文の代りに \fB/reference/grn_expr/script_syntax\fP を使ってください。
|
14482
15155
|
.sp
|
14483
15156
|
代入式の構文は1つだけです。 \fBcolumn:=value\fP となります。
|
14484
15157
|
.sp
|
14485
|
-
\fBvalue\fP は \fBcolumn\fP に代入されます。 \fBvalue\fP
|
15158
|
+
\fBvalue\fP は \fBcolumn\fP に代入されます。 \fBvalue\fP は常にクエリー構文では文字列として扱われます。 \fBvalue\fP は \fBcolumn\fP の型へと自動的にキャストされます。 キャストにはいくつか制限があります。例えば \fBtrue\fP や \fBfalse\fP といった真偽値のリテラルを \fBBool\fP 型のカラムに使用することができません。 \fBfalse\fP については空文字列を使う必要がありますが、クエリー構文は \fBcolumn:=\fP 構文をサポートしていません。
|
14486
15159
|
.sp
|
14487
15160
|
キャストについては \fB/reference/cast\fP を参照してください。
|
14488
15161
|
.SS スクリプト構文
|
@@ -16275,7 +16948,13 @@ select Words \-\-filter \(aq_key *T "Groonga is the successor project to Senna."
|
|
16275
16948
|
.UNINDENT
|
16276
16949
|
.UNINDENT
|
16277
16950
|
.UNINDENT
|
16278
|
-
.SS
|
16951
|
+
.SS 関数
|
16952
|
+
.sp
|
16953
|
+
関数はいくつかのコマンドの中で使えます。 \fBcommands/select\fP コマンドの \fB\-\-filter\fP 、 \fB\-\-scorer\fP 、 \fBoutput_columns\fP オプションで使えます。
|
16954
|
+
.sp
|
16955
|
+
このセクションでは関数についての説明と組み込みの関数について説明します。
|
16956
|
+
.sp
|
16957
|
+
TODO: Add documentations about function.
|
16279
16958
|
.SS edit_distance
|
16280
16959
|
.SS 名前
|
16281
16960
|
.sp
|
@@ -16539,10 +17218,7 @@ GeoPointと座標については \fB/reference/type\fP を参照してくださ
|
|
16539
17218
|
.UNINDENT
|
16540
17219
|
.UNINDENT
|
16541
17220
|
.IP ノート
|
16542
|
-
\fBgeo_distance\fP
|
16543
|
-
.RE
|
16544
|
-
.IP ノート
|
16545
|
-
\fBgeo_distance\fP には上記の制限がありますが、近似方法に \fBrectangle\fP を選択した場合には制限が緩和されます。二点が両方とも北半球に存在するか、二点が両方とも北半球に存在する場合に限って距離を正しく算出することができます。
|
17221
|
+
\fBgeo_distance\fP には制限があります。 \fBsphere\fP や \fBellipsoid\fP を近似方法として選択した場合、子午線や日付変更線、赤道といった境界をまたぐ距離の計算を行うことができません。この制限は \fBrectangle\fP を近似方法として選択した場合にはありません。これはgroongaの実装上の一時的な制限ですが、将来的には修正される予定です。
|
16546
17222
|
.RE
|
16547
17223
|
.SS \fBrectangle\fP
|
16548
17224
|
.sp
|
@@ -16617,6 +17293,107 @@ select Geo \-\-output_columns distance \-\-scorer \(aqdistance = geo_distance("1
|
|
16617
17293
|
# ]
|
16618
17294
|
.ft P
|
16619
17295
|
.fi
|
17296
|
+
.sp
|
17297
|
+
明示的に子午線や赤道、日付変更線をまたぐような位置を指定して距離を計算するサンプルは以下の通りです。
|
17298
|
+
.sp
|
17299
|
+
実行例:
|
17300
|
+
.sp
|
17301
|
+
.nf
|
17302
|
+
.ft C
|
17303
|
+
select Geo \-\-output_columns distance \-\-scorer \(aqdistance = geo_distance("175904000x8464000", "145508000x\-13291000", "rectangle")\(aq
|
17304
|
+
# [
|
17305
|
+
# [
|
17306
|
+
# 0,
|
17307
|
+
# 1337566253.89858,
|
17308
|
+
# 0.000355720520019531
|
17309
|
+
# ],
|
17310
|
+
# [
|
17311
|
+
# [
|
17312
|
+
# [
|
17313
|
+
# 1
|
17314
|
+
# ],
|
17315
|
+
# [
|
17316
|
+
# [
|
17317
|
+
# "distance",
|
17318
|
+
# "Int32"
|
17319
|
+
# ]
|
17320
|
+
# ],
|
17321
|
+
# [
|
17322
|
+
# 1051293
|
17323
|
+
# ]
|
17324
|
+
# ]
|
17325
|
+
# ]
|
17326
|
+
# ]
|
17327
|
+
.ft P
|
17328
|
+
.fi
|
17329
|
+
.sp
|
17330
|
+
このサンプルは子午線をまたいだ場合の距離を示します。 \fBgeo_distance("175904000x8464000", "145508000x\-13291000", "rectangle")\fP はパリ(フランス)からマドリード(スペイン)間の距離を返します。
|
17331
|
+
.sp
|
17332
|
+
実行例:
|
17333
|
+
.sp
|
17334
|
+
.nf
|
17335
|
+
.ft C
|
17336
|
+
select Geo \-\-output_columns distance \-\-scorer \(aqdistance = geo_distance("146566000x\-266422000", "\-56880000x\-172310000", "rectangle")\(aq
|
17337
|
+
# [
|
17338
|
+
# [
|
17339
|
+
# 0,
|
17340
|
+
# 1337566253.89858,
|
17341
|
+
# 0.000355720520019531
|
17342
|
+
# ],
|
17343
|
+
# [
|
17344
|
+
# [
|
17345
|
+
# [
|
17346
|
+
# 1
|
17347
|
+
# ],
|
17348
|
+
# [
|
17349
|
+
# [
|
17350
|
+
# "distance",
|
17351
|
+
# "Int32"
|
17352
|
+
# ]
|
17353
|
+
# ],
|
17354
|
+
# [
|
17355
|
+
# 6880439
|
17356
|
+
# ]
|
17357
|
+
# ]
|
17358
|
+
# ]
|
17359
|
+
# ]
|
17360
|
+
.ft P
|
17361
|
+
.fi
|
17362
|
+
.sp
|
17363
|
+
このサンプルは赤道をまたいだ場合の距離を示します。 \fBgeo_distance("146566000x\-266422000", "\-56880000x\-172310000", "rectangle")\fP はニューヨーク(アメリカ)からブラジリア(ブラジル)間の距離を返します。
|
17364
|
+
.sp
|
17365
|
+
実行例:
|
17366
|
+
.sp
|
17367
|
+
.nf
|
17368
|
+
.ft C
|
17369
|
+
select Geo \-\-output_columns distance \-\-scorer \(aqdistance = geo_distance("143660000x419009000", "135960000x\-440760000", "rectangle")\(aq
|
17370
|
+
# [
|
17371
|
+
# [
|
17372
|
+
# 0,
|
17373
|
+
# 1337566253.89858,
|
17374
|
+
# 0.000355720520019531
|
17375
|
+
# ],
|
17376
|
+
# [
|
17377
|
+
# [
|
17378
|
+
# [
|
17379
|
+
# 1
|
17380
|
+
# ],
|
17381
|
+
# [
|
17382
|
+
# [
|
17383
|
+
# "distance",
|
17384
|
+
# "Int32"
|
17385
|
+
# ]
|
17386
|
+
# ],
|
17387
|
+
# [
|
17388
|
+
# 10475205
|
17389
|
+
# ]
|
17390
|
+
# ]
|
17391
|
+
# ]
|
17392
|
+
# ]
|
17393
|
+
.ft P
|
17394
|
+
.fi
|
17395
|
+
.sp
|
17396
|
+
このサンプルは日付変更線をまたいだ場合の距離を示します。 \fBgeo_distance("143660000x419009000", "135960000x\-440760000", "rectangle")\fP は北京(中国)からサンフランシスコ(アメリカ)間の距離を返します。
|
16620
17397
|
.IP ノート
|
16621
17398
|
\fBgeo_distance\fP は方形近似をデフォルトとして使用します。 \fBapproximate_type\fP を省略すると \fBgeo_distance\fP は \fBrectangle\fP が指定されたものとして振舞います。
|
16622
17399
|
.RE
|
@@ -16703,7 +17480,7 @@ select Cities \-\-output_columns _score \-\-filter 1 \-\-scorer \(aq_score = geo
|
|
16703
17480
|
# ]
|
16704
17481
|
.ft P
|
16705
17482
|
.fi
|
16706
|
-
.SS
|
17483
|
+
.SS 戻り値
|
16707
17484
|
.sp
|
16708
17485
|
\fBgeo_distance\fP はFloat型の値を距離として返します。単位はメートルです。
|
16709
17486
|
脚注
|
@@ -16912,43 +17689,204 @@ rand(10)
|
|
16912
17689
|
3
|
16913
17690
|
.ft P
|
16914
17691
|
.fi
|
16915
|
-
.SS
|
16916
|
-
.
|
16917
|
-
|
16918
|
-
.
|
17692
|
+
.SS snippet_html
|
17693
|
+
.IP ご用心
|
17694
|
+
この機能は実験的です。APIが変わる可能性があります。
|
17695
|
+
.RE
|
17696
|
+
.SS 概要
|
16919
17697
|
.sp
|
16920
|
-
|
17698
|
+
\fBsnippet_html\fP は対象テキスト中から検索キーワード周辺のテキスト( \fBKWIC\fP 。 \fBKeyWord In Context\fP )を抽出します。抽出されたテキストのことをスニペットと呼びます。スニペットはHTML中に埋め込みやすいように処理されています。 \fB<\fP や \fB>\fP などの特殊文字は \fB<\fP や \fB>\fP にエスケープされています。キーワードは \fB<span class="keyword">\fP と \fB</span>\fP で囲まれています。たとえば、 \fBI am a groonga user. <3\fP という対象テキストのキーワード \fBgroonga\fP でのスニペットは \fBI am a <span class="keyword">groonga</span> user. <3\fP となります。
|
17699
|
+
.SS 構文
|
16921
17700
|
.sp
|
16922
|
-
|
16923
|
-
.SS 静的なインデックス構築方法
|
17701
|
+
\fBsnippet_html\fP の引数は1つだけです:
|
16924
17702
|
.sp
|
16925
|
-
|
17703
|
+
.nf
|
17704
|
+
.ft C
|
17705
|
+
snippet_html(column)
|
17706
|
+
.ft P
|
17707
|
+
.fi
|
16926
17708
|
.sp
|
16927
|
-
|
17709
|
+
\fBsnippet_html\fP は内部にはたくさんのオプションがありますが、今はまだ指定できません。じきに指定できるようになる予定です。
|
16928
17710
|
.SS 使い方
|
16929
17711
|
.sp
|
16930
|
-
|
16931
|
-
.sp
|
16932
|
-
すでにデータが格納されているカラムにインデックスを追加した場合は静的なインデックス構築方法を使います。
|
16933
|
-
.sp
|
16934
|
-
スキーマを定義します。
|
17712
|
+
使い方を示すために使うスキーマ定義とサンプルデータは以下の通りです。
|
16935
17713
|
.sp
|
16936
17714
|
実行例:
|
16937
17715
|
.sp
|
16938
17716
|
.nf
|
16939
17717
|
.ft C
|
16940
|
-
table_create
|
17718
|
+
table_create Documents TABLE_NO_KEY
|
16941
17719
|
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
16942
|
-
column_create
|
17720
|
+
column_create Documents content COLUMN_SCALAR Text
|
16943
17721
|
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
16944
|
-
table_create
|
17722
|
+
table_create Terms TABLE_PAT_KEY|KEY_NORMALIZE ShortText \-\-default_tokenizer TokenBigram
|
16945
17723
|
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
17724
|
+
column_create Terms documents_content_index COLUMN_INDEX|WITH_POSITION Documents content
|
17725
|
+
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
17726
|
+
load \-\-table Documents
|
17727
|
+
[
|
17728
|
+
["content"],
|
17729
|
+
["Groonga is a fast and accurate full text search engine based on inverted index. One of the characteristics of groonga is that a newly registered document instantly appears in search results. Also, groonga allows updates without read locks. These characteristics result in superior performance on real\-time applications."],
|
17730
|
+
["Groonga is also a column\-oriented database management system (DBMS). Compared with well\-known row\-oriented systems, such as MySQL and PostgreSQL, column\-oriented systems are more suited for aggregate queries. Due to this advantage, groonga can cover weakness of row\-oriented systems."]
|
17731
|
+
]
|
17732
|
+
# [[0, 1337566253.89858, 0.000355720520019531], 2]
|
16946
17733
|
.ft P
|
16947
17734
|
.fi
|
16948
17735
|
.sp
|
16949
|
-
|
17736
|
+
\fBsnippet_html\fP は \fB/reference/commands/select\fP コマンドの \fB\-\-output_columns\fP 内でのみ指定できます。
|
16950
17737
|
.sp
|
16951
|
-
|
17738
|
+
groonga 2.0.9では \fBoutput_columns\fP 内での関数呼び出しはまだ実験的な機能なので、明示的に \fB\-\-command_version 2\fP オプションを指定する必要があります。この機能はじきに有効になる予定です。
|
17739
|
+
.sp
|
17740
|
+
また、 \fB\-\-query\fP と \fB\-\-filter\fP オプションも指定する必要があります。(どちらか一方でも構いません。)これは、 \fB\-\-query\fP と \fB\-\-filter\fP オプションからキーワードを抽出しているためです。
|
17741
|
+
.sp
|
17742
|
+
以下の例は \fB\-\-query "fast performance"\fP を使っています。この場合は、キーワードとして \fBfast\fP と \fBperformance\fP を使います。
|
17743
|
+
.sp
|
17744
|
+
実行例:
|
17745
|
+
.sp
|
17746
|
+
.nf
|
17747
|
+
.ft C
|
17748
|
+
select Documents \-\-output_columns "snippet_html(content)" \-\-command_version 2 \-\-match_columns content \-\-query "fast performance"
|
17749
|
+
# [
|
17750
|
+
# [
|
17751
|
+
# 0,
|
17752
|
+
# 1337566253.89858,
|
17753
|
+
# 0.000355720520019531
|
17754
|
+
# ],
|
17755
|
+
# [
|
17756
|
+
# [
|
17757
|
+
# [
|
17758
|
+
# 1
|
17759
|
+
# ],
|
17760
|
+
# [
|
17761
|
+
# [
|
17762
|
+
# "snippet_html",
|
17763
|
+
# "null"
|
17764
|
+
# ]
|
17765
|
+
# ],
|
17766
|
+
# [
|
17767
|
+
# [
|
17768
|
+
# "Groonga is a <span class=\e"keyword\e">fast</span> and accurate full text search engine based on inverted index. One of the characteristics of groonga is that a newly registered document instantly appears in search results. Also, gro",
|
17769
|
+
# "onga allows updates without read locks. These characteristics result in superior <span class=\e"keyword\e">performance</span> on real\-time applications."
|
17770
|
+
# ]
|
17771
|
+
# ]
|
17772
|
+
# ]
|
17773
|
+
# ]
|
17774
|
+
# ]
|
17775
|
+
.ft P
|
17776
|
+
.fi
|
17777
|
+
.sp
|
17778
|
+
\fB\-\-query "fast performance"\fP は最初のレコードの内容にだけマッチします。 \fBsnippet_html(content)\fP は、テキスト中からキーワード \fBfast\fP と \fBperformance\fP の少なくともどちらか一方を含んでいるテキストの断片を抽出します。今回は2箇所抽出しています。そして、抽出したテキストの断片内にあるキーワードを \fB<span class="keyword">\fP と \fB</span>\fP で囲みます。
|
17779
|
+
.sp
|
17780
|
+
テキストの断片数は多くても3です。4つ以上のテキストの断片が抽出できるときは、最初の3つだけを使います。
|
17781
|
+
.sp
|
17782
|
+
テキストの断片の最大サイズは200バイトです。単位は文字数ではなくバイトです。挿入される \fB<span keyword="keyword">\fP と \fB</span>\fP のバイト数はこのサイズの中には含まれません。
|
17783
|
+
.sp
|
17784
|
+
テキストの断片の最大数とテキストの断片の最大サイズはカスタマイズできません。
|
17785
|
+
.sp
|
17786
|
+
カラムの代わりに文字列リテラルを指定することもできます。
|
17787
|
+
.sp
|
17788
|
+
実行例:
|
17789
|
+
.sp
|
17790
|
+
.nf
|
17791
|
+
.ft C
|
17792
|
+
select Documents \-\-output_columns \(aqsnippet_html("Groonga is very fast fulltext search engine.")\(aq \-\-command_version 2 \-\-match_columns content \-\-query "fast performance"
|
17793
|
+
# [
|
17794
|
+
# [
|
17795
|
+
# 0,
|
17796
|
+
# 1337566253.89858,
|
17797
|
+
# 0.000355720520019531
|
17798
|
+
# ],
|
17799
|
+
# [
|
17800
|
+
# [
|
17801
|
+
# [
|
17802
|
+
# 1
|
17803
|
+
# ],
|
17804
|
+
# [
|
17805
|
+
# [
|
17806
|
+
# "snippet_html",
|
17807
|
+
# "null"
|
17808
|
+
# ]
|
17809
|
+
# ],
|
17810
|
+
# [
|
17811
|
+
# [
|
17812
|
+
# "Groonga is very <span class=\e"keyword\e">fast</span> fulltext search engine."
|
17813
|
+
# ]
|
17814
|
+
# ]
|
17815
|
+
# ]
|
17816
|
+
# ]
|
17817
|
+
# ]
|
17818
|
+
.ft P
|
17819
|
+
.fi
|
17820
|
+
.SS 戻り値
|
17821
|
+
.sp
|
17822
|
+
\fBsnippet_html\fP は文字列の配列を返します。それぞれの要素がスニペットになります:
|
17823
|
+
.sp
|
17824
|
+
.nf
|
17825
|
+
.ft C
|
17826
|
+
[SNIPPET1, SNIPPET2, SNIPPET3]
|
17827
|
+
.ft P
|
17828
|
+
.fi
|
17829
|
+
.sp
|
17830
|
+
スニペットには1つ以上のキーワードが含まれています。 \fB<span keyword="keyword">\fP と \fB</span>\fP を除いたスニペットの最大サイズは200byteです。単位は文字数ではなくてバイトです。
|
17831
|
+
.sp
|
17832
|
+
配列のサイズは0以上3以下です。最大サイズの3は、じきにカスタマイズできるようになる予定です。
|
17833
|
+
.SS TODO
|
17834
|
+
.INDENT 0.0
|
17835
|
+
.IP \(bu 2
|
17836
|
+
テキストの断片の最大数をカスタマイズできるようにする。
|
17837
|
+
.IP \(bu 2
|
17838
|
+
テキストの断片最大サイズをカスタマイズできるようにする。
|
17839
|
+
.IP \(bu 2
|
17840
|
+
キーワードをカスタマイズできるようにする。
|
17841
|
+
.IP \(bu 2
|
17842
|
+
キーワードを囲むタグをカスタマイズできるようにする。
|
17843
|
+
.IP \(bu 2
|
17844
|
+
正規化の方法をカスタマイズできるようにする。
|
17845
|
+
.IP \(bu 2
|
17846
|
+
オブジェクトリテラル形式でのオプション指定をサポートする。
|
17847
|
+
.UNINDENT
|
17848
|
+
.SS 参考
|
17849
|
+
.INDENT 0.0
|
17850
|
+
.IP \(bu 2
|
17851
|
+
\fB/reference/commands/select\fP
|
17852
|
+
.UNINDENT
|
17853
|
+
.SS インデックス構築
|
17854
|
+
.sp
|
17855
|
+
groongaは2.0.0から動的なインデックス構築方法と静的なインデックス構築方法を両方サポートしています。
|
17856
|
+
.SS 動的なインデックス構築方法
|
17857
|
+
.sp
|
17858
|
+
動的なインデックス構築方法では、登録された文書はインデックス構築中にすぐに検索できるようになります。しかし、静的なインデックス構築方法に比べてコストがかかります。
|
17859
|
+
.sp
|
17860
|
+
動的なインデックス構築方法は鮮度が重要な検索システムに適しています。例えば、つぶやきやニュースやブログ記事などを検索するシステムは鮮度が重要になるでしょう。動的なインデックス構築方法はできたばかりの文書を検索できるようにし、インデックス構築中も検索できます。
|
17861
|
+
.SS 静的なインデックス構築方法
|
17862
|
+
.sp
|
17863
|
+
静的なインデックス構築方法では、動的なインデックス構築方法よりもインデックス構築にかかるコストが小さくなります。インデックス構築時間は短くなるでしょう。インデックスは小さくなるでしょう。インデックス構築に必要なリソースは少なくなるでしょう。しかし、登録中の文書は登録しようとしている全ての文書のインデックス構築が終わるまで検索できません。
|
17864
|
+
.sp
|
17865
|
+
静的なインデックス構築方法は消費リソースが少ないことが重要な検索システムに適しています。鮮度が重要でないシステムであれば静的なインデックス構築方法が適しているでしょう。例えば、リファレンスマニュアルを検索するシステムは鮮度を重視しません。これは、リファレンスマニュアルはリリース時にだけ更新されるだけだからです。
|
17866
|
+
.SS 使い方
|
17867
|
+
.sp
|
17868
|
+
groongaはデフォルトで動的なインデックス構築方法を使います。文書を登録するとすぐに検索できるようになります。
|
17869
|
+
.sp
|
17870
|
+
すでにデータが格納されているカラムにインデックスを追加した場合は静的なインデックス構築方法を使います。
|
17871
|
+
.sp
|
17872
|
+
スキーマを定義します。
|
17873
|
+
.sp
|
17874
|
+
実行例:
|
17875
|
+
.sp
|
17876
|
+
.nf
|
17877
|
+
.ft C
|
17878
|
+
table_create Tweets TABLE_NO_KEY
|
17879
|
+
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
17880
|
+
column_create Tweets content COLUMN_SCALAR ShortText
|
17881
|
+
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
17882
|
+
table_create Lexicon TABLE_HASH_KEY|KEY_NORMALIZE ShortText \-\-default_tokenizer TokenBigram
|
17883
|
+
# [[0, 1337566253.89858, 0.000355720520019531], true]
|
17884
|
+
.ft P
|
17885
|
+
.fi
|
17886
|
+
.sp
|
17887
|
+
データを登録します:
|
17888
|
+
.sp
|
17889
|
+
実行例:
|
16952
17890
|
.sp
|
16953
17891
|
.nf
|
16954
17892
|
.ft C
|
@@ -17113,7 +18051,7 @@ customized by \fI\-\-log\-path\fP option. Each log has its
|
|
17113
18051
|
log level. If a log is smaller than groonga process\(aq log
|
17114
18052
|
level, it\(aqs not logged. Log level can be customized by
|
17115
18053
|
\fI\-l\fP or \fBcommands/log_level\fP.
|
17116
|
-
.SS
|
18054
|
+
.SS フォーマット
|
17117
18055
|
.sp
|
17118
18056
|
Process log uses the following format:
|
17119
18057
|
.sp
|
@@ -17229,7 +18167,7 @@ log opened.
|
|
17229
18167
|
.sp
|
17230
18168
|
Query log is disabled by default. It can be enabled by
|
17231
18169
|
\fI\-\-query\-log\-path\fP option.
|
17232
|
-
.SS
|
18170
|
+
.SS フォーマット
|
17233
18171
|
.sp
|
17234
18172
|
Query log uses the following formats:
|
17235
18173
|
.sp
|
@@ -17386,6 +18324,407 @@ rc=0
|
|
17386
18324
|
.sp
|
17387
18325
|
TODO...
|
17388
18326
|
.SH 仕様
|
18327
|
+
.SS GQTP
|
18328
|
+
.sp
|
18329
|
+
GQTPはGroonga Query Transfer Protocolの頭文字です。GQTPはgroonga用の独自プロトコルです。
|
18330
|
+
.SS プロトコル
|
18331
|
+
.sp
|
18332
|
+
GQTPはステートフルなクライアント・サーバーモデルのプロトコルです。以下の流れが1つの処理単位です:
|
18333
|
+
.INDENT 0.0
|
18334
|
+
.IP \(bu 2
|
18335
|
+
クライアントがリクエストを送る
|
18336
|
+
.IP \(bu 2
|
18337
|
+
サーバーがリクエストを受け取る
|
18338
|
+
.IP \(bu 2
|
18339
|
+
サーバーがリクエストを処理する
|
18340
|
+
.IP \(bu 2
|
18341
|
+
サーバーがレスポンスを返す
|
18342
|
+
.IP \(bu 2
|
18343
|
+
クライアントがレスポンスを受け取る
|
18344
|
+
.UNINDENT
|
18345
|
+
.sp
|
18346
|
+
1つのセッション内で0個以上の処理単位を実行できます。
|
18347
|
+
.sp
|
18348
|
+
リクエストもレスポンスもGQTPヘッダーとボディから成ります。GQTPヘッダーは固定長のデータです。ボディは可変長サイズのデータです。ボディのサイズはGQTPヘッダーの中に入っています。GQTPではボディの中身については何も定義しません。
|
18349
|
+
.SS GQTPヘッダー
|
18350
|
+
.sp
|
18351
|
+
GQTPヘッダーは以下の符号なし整数値から成ります:
|
18352
|
+
.TS
|
18353
|
+
center;
|
18354
|
+
|l|l|l|.
|
18355
|
+
_
|
18356
|
+
T{
|
18357
|
+
名前
|
18358
|
+
T} T{
|
18359
|
+
サイズ
|
18360
|
+
T} T{
|
18361
|
+
説明
|
18362
|
+
T}
|
18363
|
+
_
|
18364
|
+
T{
|
18365
|
+
\fBprotocol\fP
|
18366
|
+
T} T{
|
18367
|
+
1byte
|
18368
|
+
T} T{
|
18369
|
+
プロトコルの種類。
|
18370
|
+
T}
|
18371
|
+
_
|
18372
|
+
T{
|
18373
|
+
\fBquery_type\fP
|
18374
|
+
T} T{
|
18375
|
+
1byte
|
18376
|
+
T} T{
|
18377
|
+
ボディのコンテントタイプ。
|
18378
|
+
T}
|
18379
|
+
_
|
18380
|
+
T{
|
18381
|
+
\fBkey_length\fP
|
18382
|
+
T} T{
|
18383
|
+
2byte
|
18384
|
+
T} T{
|
18385
|
+
未使用。
|
18386
|
+
T}
|
18387
|
+
_
|
18388
|
+
T{
|
18389
|
+
\fBlevel\fP
|
18390
|
+
T} T{
|
18391
|
+
1byte
|
18392
|
+
T} T{
|
18393
|
+
未使用。
|
18394
|
+
T}
|
18395
|
+
_
|
18396
|
+
T{
|
18397
|
+
\fBflags\fP
|
18398
|
+
T} T{
|
18399
|
+
1byte
|
18400
|
+
T} T{
|
18401
|
+
フラグ。
|
18402
|
+
T}
|
18403
|
+
_
|
18404
|
+
T{
|
18405
|
+
\fBstatus\fP
|
18406
|
+
T} T{
|
18407
|
+
2byte
|
18408
|
+
T} T{
|
18409
|
+
リターンコード。
|
18410
|
+
T}
|
18411
|
+
_
|
18412
|
+
T{
|
18413
|
+
\fBsize\fP
|
18414
|
+
T} T{
|
18415
|
+
4byte
|
18416
|
+
T} T{
|
18417
|
+
ボディのサイズ。
|
18418
|
+
T}
|
18419
|
+
_
|
18420
|
+
T{
|
18421
|
+
\fBopaque\fP
|
18422
|
+
T} T{
|
18423
|
+
4byte
|
18424
|
+
T} T{
|
18425
|
+
未使用。
|
18426
|
+
T}
|
18427
|
+
_
|
18428
|
+
T{
|
18429
|
+
\fBcas\fP
|
18430
|
+
T} T{
|
18431
|
+
8byte
|
18432
|
+
T} T{
|
18433
|
+
未使用。
|
18434
|
+
T}
|
18435
|
+
_
|
18436
|
+
.TE
|
18437
|
+
.sp
|
18438
|
+
ヘッダーのすべての値はネットワークバイトオーダーを使っています。
|
18439
|
+
.sp
|
18440
|
+
以下のセクションではそれぞれのヘッダーの値で利用可能な値について説明します。
|
18441
|
+
.sp
|
18442
|
+
GQTPヘッダーは全部で24byteになります。
|
18443
|
+
.SS \fBprotocol\fP
|
18444
|
+
.sp
|
18445
|
+
リクエストのGQTPヘッダーでもレスポンスのGQTPヘッダーでも、この値は常に \fB0xc7\fP になります。
|
18446
|
+
.SS \fBquery_type\fP
|
18447
|
+
.sp
|
18448
|
+
この値は以下のいずれかの値です:
|
18449
|
+
.TS
|
18450
|
+
center;
|
18451
|
+
|l|l|l|.
|
18452
|
+
_
|
18453
|
+
T{
|
18454
|
+
名前
|
18455
|
+
T} T{
|
18456
|
+
値
|
18457
|
+
T} T{
|
18458
|
+
説明
|
18459
|
+
T}
|
18460
|
+
_
|
18461
|
+
T{
|
18462
|
+
\fBNONE\fP
|
18463
|
+
T} T{
|
18464
|
+
0
|
18465
|
+
T} T{
|
18466
|
+
自由形式。
|
18467
|
+
T}
|
18468
|
+
_
|
18469
|
+
T{
|
18470
|
+
\fBTSV\fP
|
18471
|
+
T} T{
|
18472
|
+
1
|
18473
|
+
T} T{
|
18474
|
+
値をタブで区切った形式。
|
18475
|
+
T}
|
18476
|
+
_
|
18477
|
+
T{
|
18478
|
+
\fBJSON\fP
|
18479
|
+
T} T{
|
18480
|
+
2
|
18481
|
+
T} T{
|
18482
|
+
JSON。
|
18483
|
+
T}
|
18484
|
+
_
|
18485
|
+
T{
|
18486
|
+
\fBXML\fP
|
18487
|
+
T} T{
|
18488
|
+
3
|
18489
|
+
T} T{
|
18490
|
+
XML。
|
18491
|
+
T}
|
18492
|
+
_
|
18493
|
+
T{
|
18494
|
+
\fBMSGPACK\fP
|
18495
|
+
T} T{
|
18496
|
+
4
|
18497
|
+
T} T{
|
18498
|
+
MessagePack。
|
18499
|
+
T}
|
18500
|
+
_
|
18501
|
+
.TE
|
18502
|
+
.sp
|
18503
|
+
リクエストGQTPヘッダーでは使われません。
|
18504
|
+
.sp
|
18505
|
+
レスポンスGQTPヘッダーで使われます。ボディは指定した形式にします。
|
18506
|
+
.SS \fBflags\fP
|
18507
|
+
.sp
|
18508
|
+
この値は以下の値をビット単位ORしたものになります:
|
18509
|
+
.TS
|
18510
|
+
center;
|
18511
|
+
|l|l|l|.
|
18512
|
+
_
|
18513
|
+
T{
|
18514
|
+
名前
|
18515
|
+
T} T{
|
18516
|
+
値
|
18517
|
+
T} T{
|
18518
|
+
説明
|
18519
|
+
T}
|
18520
|
+
_
|
18521
|
+
T{
|
18522
|
+
\fBMORE\fP
|
18523
|
+
T} T{
|
18524
|
+
0x01
|
18525
|
+
T} T{
|
18526
|
+
まだデータがあります。
|
18527
|
+
T}
|
18528
|
+
_
|
18529
|
+
T{
|
18530
|
+
\fBTAIL\fP
|
18531
|
+
T} T{
|
18532
|
+
0x02
|
18533
|
+
T} T{
|
18534
|
+
これ以上データはありません。
|
18535
|
+
T}
|
18536
|
+
_
|
18537
|
+
T{
|
18538
|
+
\fBHEAD\fP
|
18539
|
+
T} T{
|
18540
|
+
0x04
|
18541
|
+
T} T{
|
18542
|
+
未使用。
|
18543
|
+
T}
|
18544
|
+
_
|
18545
|
+
T{
|
18546
|
+
\fBQUIET\fP
|
18547
|
+
T} T{
|
18548
|
+
0x08
|
18549
|
+
T} T{
|
18550
|
+
レスポンスを出力しません。
|
18551
|
+
T}
|
18552
|
+
_
|
18553
|
+
T{
|
18554
|
+
\fBQUIT\fP
|
18555
|
+
T} T{
|
18556
|
+
0x10
|
18557
|
+
T} T{
|
18558
|
+
終了します。
|
18559
|
+
T}
|
18560
|
+
_
|
18561
|
+
.TE
|
18562
|
+
.sp
|
18563
|
+
\fBMORE\fP あるいは \fBTAIL\fP フラグは必ず指定しないといけません。
|
18564
|
+
.sp
|
18565
|
+
\fBMORE\fP フラグを使うときは \fBQUIET\fP フラグも使うべきです。リクエストが途中のときはレスポンスを出力する必要がないからです。
|
18566
|
+
.sp
|
18567
|
+
セッションを終了するときは \fBQUIT\fP フラグを使ってください。
|
18568
|
+
.SS \fBstatus\fP
|
18569
|
+
.sp
|
18570
|
+
利用可能な値です。将来的に新しいステータスが追加される可能性があります。
|
18571
|
+
.INDENT 0.0
|
18572
|
+
.IP \(bu 2
|
18573
|
+
0: \fBSUCCESS\fP
|
18574
|
+
.IP \(bu 2
|
18575
|
+
1: \fBEND_OF_DATA\fP
|
18576
|
+
.IP \(bu 2
|
18577
|
+
65535: \fBUNKNOWN_ERROR\fP
|
18578
|
+
.IP \(bu 2
|
18579
|
+
65534: \fBOPERATION_NOT_PERMITTED\fP
|
18580
|
+
.IP \(bu 2
|
18581
|
+
65533: \fBNO_SUCH_FILE_OR_DIRECTORY\fP
|
18582
|
+
.IP \(bu 2
|
18583
|
+
65532: \fBNO_SUCH_PROCESS\fP
|
18584
|
+
.IP \(bu 2
|
18585
|
+
65531: \fBINTERRUPTED_FUNCTION_CALL\fP
|
18586
|
+
.IP \(bu 2
|
18587
|
+
65530: \fBINPUT_OUTPUT_ERROR\fP
|
18588
|
+
.IP \(bu 2
|
18589
|
+
65529: \fBNO_SUCH_DEVICE_OR_ADDRESS\fP
|
18590
|
+
.IP \(bu 2
|
18591
|
+
65528: \fBARG_LIST_TOO_LONG\fP
|
18592
|
+
.IP \(bu 2
|
18593
|
+
65527: \fBEXEC_FORMAT_ERROR\fP
|
18594
|
+
.IP \(bu 2
|
18595
|
+
65526: \fBBAD_FILE_DESCRIPTOR\fP
|
18596
|
+
.IP \(bu 2
|
18597
|
+
65525: \fBNO_CHILD_PROCESSES\fP
|
18598
|
+
.IP \(bu 2
|
18599
|
+
65524: \fBRESOURCE_TEMPORARILY_UNAVAILABLE\fP
|
18600
|
+
.IP \(bu 2
|
18601
|
+
65523: \fBNOT_ENOUGH_SPACE\fP
|
18602
|
+
.IP \(bu 2
|
18603
|
+
65522: \fBPERMISSION_DENIED\fP
|
18604
|
+
.IP \(bu 2
|
18605
|
+
65521: \fBBAD_ADDRESS\fP
|
18606
|
+
.IP \(bu 2
|
18607
|
+
65520: \fBRESOURCE_BUSY\fP
|
18608
|
+
.IP \(bu 2
|
18609
|
+
65519: \fBFILE_EXISTS\fP
|
18610
|
+
.IP \(bu 2
|
18611
|
+
65518: \fBIMPROPER_LINK\fP
|
18612
|
+
.IP \(bu 2
|
18613
|
+
65517: \fBNO_SUCH_DEVICE\fP
|
18614
|
+
.IP \(bu 2
|
18615
|
+
65516: \fBNOT_A_DIRECTORY\fP
|
18616
|
+
.IP \(bu 2
|
18617
|
+
65515: \fBIS_A_DIRECTORY\fP
|
18618
|
+
.IP \(bu 2
|
18619
|
+
65514: \fBINVALID_ARGUMENT\fP
|
18620
|
+
.IP \(bu 2
|
18621
|
+
65513: \fBTOO_MANY_OPEN_FILES_IN_SYSTEM\fP
|
18622
|
+
.IP \(bu 2
|
18623
|
+
65512: \fBTOO_MANY_OPEN_FILES\fP
|
18624
|
+
.IP \(bu 2
|
18625
|
+
65511: \fBINAPPROPRIATE_I_O_CONTROL_OPERATION\fP
|
18626
|
+
.IP \(bu 2
|
18627
|
+
65510: \fBFILE_TOO_LARGE\fP
|
18628
|
+
.IP \(bu 2
|
18629
|
+
65509: \fBNO_SPACE_LEFT_ON_DEVICE\fP
|
18630
|
+
.IP \(bu 2
|
18631
|
+
65508: \fBINVALID_SEEK\fP
|
18632
|
+
.IP \(bu 2
|
18633
|
+
65507: \fBREAD_ONLY_FILE_SYSTEM\fP
|
18634
|
+
.IP \(bu 2
|
18635
|
+
65506: \fBTOO_MANY_LINKS\fP
|
18636
|
+
.IP \(bu 2
|
18637
|
+
65505: \fBBROKEN_PIPE\fP
|
18638
|
+
.IP \(bu 2
|
18639
|
+
65504: \fBDOMAIN_ERROR\fP
|
18640
|
+
.IP \(bu 2
|
18641
|
+
65503: \fBRESULT_TOO_LARGE\fP
|
18642
|
+
.IP \(bu 2
|
18643
|
+
65502: \fBRESOURCE_DEADLOCK_AVOIDED\fP
|
18644
|
+
.IP \(bu 2
|
18645
|
+
65501: \fBNO_MEMORY_AVAILABLE\fP
|
18646
|
+
.IP \(bu 2
|
18647
|
+
65500: \fBFILENAME_TOO_LONG\fP
|
18648
|
+
.IP \(bu 2
|
18649
|
+
65499: \fBNO_LOCKS_AVAILABLE\fP
|
18650
|
+
.IP \(bu 2
|
18651
|
+
65498: \fBFUNCTION_NOT_IMPLEMENTED\fP
|
18652
|
+
.IP \(bu 2
|
18653
|
+
65497: \fBDIRECTORY_NOT_EMPTY\fP
|
18654
|
+
.IP \(bu 2
|
18655
|
+
65496: \fBILLEGAL_BYTE_SEQUENCE\fP
|
18656
|
+
.IP \(bu 2
|
18657
|
+
65495: \fBSOCKET_NOT_INITIALIZED\fP
|
18658
|
+
.IP \(bu 2
|
18659
|
+
65494: \fBOPERATION_WOULD_BLOCK\fP
|
18660
|
+
.IP \(bu 2
|
18661
|
+
65493: \fBADDRESS_IS_NOT_AVAILABLE\fP
|
18662
|
+
.IP \(bu 2
|
18663
|
+
65492: \fBNETWORK_IS_DOWN\fP
|
18664
|
+
.IP \(bu 2
|
18665
|
+
65491: \fBNO_BUFFER\fP
|
18666
|
+
.IP \(bu 2
|
18667
|
+
65490: \fBSOCKET_IS_ALREADY_CONNECTED\fP
|
18668
|
+
.IP \(bu 2
|
18669
|
+
65489: \fBSOCKET_IS_NOT_CONNECTED\fP
|
18670
|
+
.IP \(bu 2
|
18671
|
+
65488: \fBSOCKET_IS_ALREADY_SHUTDOWNED\fP
|
18672
|
+
.IP \(bu 2
|
18673
|
+
65487: \fBOPERATION_TIMEOUT\fP
|
18674
|
+
.IP \(bu 2
|
18675
|
+
65486: \fBCONNECTION_REFUSED\fP
|
18676
|
+
.IP \(bu 2
|
18677
|
+
65485: \fBRANGE_ERROR\fP
|
18678
|
+
.IP \(bu 2
|
18679
|
+
65484: \fBTOKENIZER_ERROR\fP
|
18680
|
+
.IP \(bu 2
|
18681
|
+
65483: \fBFILE_CORRUPT\fP
|
18682
|
+
.IP \(bu 2
|
18683
|
+
65482: \fBINVALID_FORMAT\fP
|
18684
|
+
.IP \(bu 2
|
18685
|
+
65481: \fBOBJECT_CORRUPT\fP
|
18686
|
+
.IP \(bu 2
|
18687
|
+
65480: \fBTOO_MANY_SYMBOLIC_LINKS\fP
|
18688
|
+
.IP \(bu 2
|
18689
|
+
65479: \fBNOT_SOCKET\fP
|
18690
|
+
.IP \(bu 2
|
18691
|
+
65478: \fBOPERATION_NOT_SUPPORTED\fP
|
18692
|
+
.IP \(bu 2
|
18693
|
+
65477: \fBADDRESS_IS_IN_USE\fP
|
18694
|
+
.IP \(bu 2
|
18695
|
+
65476: \fBZLIB_ERROR\fP
|
18696
|
+
.IP \(bu 2
|
18697
|
+
65475: \fBLZO_ERROR\fP
|
18698
|
+
.IP \(bu 2
|
18699
|
+
65474: \fBSTACK_OVER_FLOW\fP
|
18700
|
+
.IP \(bu 2
|
18701
|
+
65473: \fBSYNTAX_ERROR\fP
|
18702
|
+
.IP \(bu 2
|
18703
|
+
65472: \fBRETRY_MAX\fP
|
18704
|
+
.IP \(bu 2
|
18705
|
+
65471: \fBINCOMPATIBLE_FILE_FORMAT\fP
|
18706
|
+
.IP \(bu 2
|
18707
|
+
65470: \fBUPDATE_NOT_ALLOWED\fP
|
18708
|
+
.IP \(bu 2
|
18709
|
+
65469: \fBTOO_SMALL_OFFSET\fP
|
18710
|
+
.IP \(bu 2
|
18711
|
+
65468: \fBTOO_LARGE_OFFSET\fP
|
18712
|
+
.IP \(bu 2
|
18713
|
+
65467: \fBTOO_SMALL_LIMIT\fP
|
18714
|
+
.IP \(bu 2
|
18715
|
+
65466: \fBCAS_ERROR\fP
|
18716
|
+
.IP \(bu 2
|
18717
|
+
65465: \fBUNSUPPORTED_COMMAND_VERSION\fP
|
18718
|
+
.UNINDENT
|
18719
|
+
.SS \fBsize\fP
|
18720
|
+
.sp
|
18721
|
+
ボディのサイズです。ボディの最大サイズは4GiBです。これは \fBsize\fP が4byteの符号なし整数だからです。4GiB以上のサイズのデータを送りたい場合は \fBMORE\fP フラグを使ってください。
|
18722
|
+
.SS 例
|
18723
|
+
.sp
|
18724
|
+
TODO
|
18725
|
+
.SS 参照
|
18726
|
+
.sp
|
18727
|
+
TODO
|
17389
18728
|
.SS 検索
|
17390
18729
|
.sp
|
17391
18730
|
\fB/reference/commands/select\fP コマンドがqueryパラメータを使ってどのように検索するのかを説明します。
|
@@ -17524,6 +18863,17 @@ select Shops \-\-filter \(aq"point > 3 && description @ \e"スープカレー\e"
|
|
17524
18863
|
.SH 制限事項
|
17525
18864
|
.sp
|
17526
18865
|
groongaにはいくつか制限事項があります。
|
18866
|
+
.SS テーブルの制限
|
18867
|
+
.sp
|
18868
|
+
テーブルには以下の制限があります。
|
18869
|
+
.INDENT 0.0
|
18870
|
+
.IP \(bu 2
|
18871
|
+
1つのキーの最大サイズ: 4096Bytes
|
18872
|
+
.IP \(bu 2
|
18873
|
+
キーのサイズを合計した上限値: 4GByte
|
18874
|
+
.UNINDENT
|
18875
|
+
.sp
|
18876
|
+
実際には他の諸条件の制約により上記の値まで到達しない場合もあります。
|
17527
18877
|
.SS インデックス上限値
|
17528
18878
|
.sp
|
17529
18879
|
1つのインデックスにおける論理上の上限値は以下のとおりです。
|
@@ -17789,13 +19139,13 @@ Travis CI上でgroongaを使っているオープンソースソフトウェア
|
|
17789
19139
|
groongaプロジェクトではみなさんからのコントリビュートを歓迎します!コントリビュートの方法はいくつもあります。groongaを使ったり誰かに紹介することもコントリビュートですし、バグレポートを送ったり、groonga本体やgroonga関連の開発に参加することもコントリビュートです。プログラムではなく、ドキュメントでのコントリビュートも歓迎します!
|
17790
19140
|
.INDENT 0.0
|
17791
19141
|
.TP
|
17792
|
-
.B
|
19142
|
+
.B As a user:
|
17793
19143
|
このドキュメントを読んでください。
|
17794
19144
|
.TP
|
17795
|
-
.B
|
19145
|
+
.B As a spokesman:
|
17796
19146
|
groongaについてまわりの人に話してください。
|
17797
19147
|
.TP
|
17798
|
-
.B Bug report, development and documentation
|
19148
|
+
.B As a developer: Bug report, development and documentation
|
17799
19149
|
これらについてはこのセクションで説明します。
|
17800
19150
|
.UNINDENT
|
17801
19151
|
.SS バグレポートの送り方
|
@@ -18370,6 +19720,11 @@ make update\-poコマンドの実行により更新した各種.poファイル
|
|
18370
19720
|
.fi
|
18371
19721
|
.sp
|
18372
19722
|
これにより$GROONGA_CLONE_DIR/groonga\-(バージョン).tar.gzが作成されます。
|
19723
|
+
.IP ノート
|
19724
|
+
タグを打つ前にmake distを行うとversionが古いままになることがあります。
|
19725
|
+
するとgroonga \-\-versionで表示されるバージョン表記が更新されないので注意が必要です。
|
19726
|
+
make distで生成したtar.gzのversionおよびversion.shがタグと一致することを確認するのが望ましいです。
|
19727
|
+
.RE
|
18373
19728
|
.SS パッケージのビルド
|
18374
19729
|
.sp
|
18375
19730
|
リリース用のアーカイブファイルができたので、パッケージ化する作業を行います。
|
@@ -18460,6 +19815,8 @@ natty i386/amd64
|
|
18460
19815
|
oneiric i386/amd64
|
18461
19816
|
.IP \(bu 2
|
18462
19817
|
precise i386/amd64
|
19818
|
+
.IP \(bu 2
|
19819
|
+
quantal i386/amd64
|
18463
19820
|
.UNINDENT
|
18464
19821
|
.sp
|
18465
19822
|
正常にビルドが終了すると$GROONGA_CLONE_DIR/packages/apt/repositories配下に.debパッケージが生成されます。
|
@@ -18842,6 +20199,17 @@ freecode.comのプロジェクトページは以下の通りです。
|
|
18842
20199
|
\fI\%https://freecode.com/projects/groonga/releases/new\fP
|
18843
20200
|
.UNINDENT
|
18844
20201
|
.UNINDENT
|
20202
|
+
.IP ノート
|
20203
|
+
投稿した内容に対するレビューが運営側で実施されるので、反映されるまでしばらく時間がかかります。
|
20204
|
+
.RE
|
20205
|
+
.SS Twitterでリリースアナウンスをする
|
20206
|
+
.sp
|
20207
|
+
blogroongaのリリースエントリには「リンクをあなたのフォロワーに共有する」ためのツイートボタンがあるので、そのボタンを使ってリリースアナウンスします。(画面下部に配置されている)
|
20208
|
+
.sp
|
20209
|
+
このボタンを経由する場合、ツイート内容に自動的にリリースタイトル(「groonga 2.0.8リリース」など)とblogroongaのリリースエントリのURLが挿入されます。
|
20210
|
+
.sp
|
20211
|
+
この作業はblogroongaの英語版、日本語版それぞれで行います。
|
20212
|
+
あらかじめgroongaアカウントでログインしておくとアナウンスを円滑に行うことができます。
|
18845
20213
|
.sp
|
18846
20214
|
以上でリリース作業は終了です。
|
18847
20215
|
.SS リリース後にやること
|
@@ -18867,6 +20235,9 @@ $GROONGA_CLONE_DIRにて以下のコマンドを実行します。:
|
|
18867
20235
|
.fi
|
18868
20236
|
.sp
|
18869
20237
|
これにより$GROONGA_CLONE_DIR/base_versionが更新されるのでコミットしておきます。
|
20238
|
+
.IP ノート
|
20239
|
+
base_versionはtar.gzなどのリリース用のファイル名で使用します。
|
20240
|
+
.RE
|
18870
20241
|
.SS ビルド時のTIPS
|
18871
20242
|
.SS ビルドを並列化したい
|
18872
20243
|
.sp
|