# -*- po -*-
# English translations for Groonga package.
# Copyright (C) 2009-2014, Brazil, Inc
# This file is distributed under the same license as the Groonga package.
# Kouhei Sutou <kou@clear-code.com>, 2014.
#
msgid ""
msgstr ""
"Project-Id-Version: Groonga 4.0.1\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2014-08-28 12:07+0900\n"
"Last-Translator: Kouhei Sutou <kou@clear-code.com>\n"
"Language-Team: English\n"
"Language: en\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

msgid "トラブルシューティング"
msgstr "トラブルシューティング"

msgid "同じ検索キーワードなのに全文検索結果が異なる"
msgstr "同じ検索キーワードなのに全文検索結果が異なる"

msgid ""
"同じ検索キーワードでも一緒に指定するクエリによっては全文検索の結果が異なるこ"
"とがあります。ここでは、その原因と対策方法を説明します。"
msgstr ""
"同じ検索キーワードでも一緒に指定するクエリによっては全文検索の結果が異なるこ"
"とがあります。ここでは、その原因と対策方法を説明します。"

msgid "例"
msgstr "例"

msgid "まず、実際に検索結果が異なる例を説明します。"
msgstr "まず、実際に検索結果が異なる例を説明します。"

msgid ""
"DDLは以下の通りです。BlogsテーブルのbodyカラムをTokenMecabトークナイザーを"
"使ってトークナイズしてからインデックスを作成しています。::"
msgstr ""
"DDLは以下の通りです。BlogsテーブルのbodyカラムをTokenMecabトークナイザーを"
"使ってトークナイズしてからインデックスを作成しています。::"

msgid "テスト用のデータは1件だけ投入します。::"
msgstr "テスト用のデータは1件だけ投入します。::"

msgid "まず、全文検索のみで検索します。この場合ヒットします。::"
msgstr "まず、全文検索のみで検索します。この場合ヒットします。::"

msgid ""
"続いて、範囲指定と全文検索を組み合わせて検索します（1285858800は2010/10/1 "
"0:0:0の秒表記）。この場合もヒットします。::"
msgstr ""
"続いて、範囲指定と全文検索を組み合わせて検索します（1285858800は2010/10/1 "
"0:0:0の秒表記）。この場合もヒットします。::"

msgid ""
"最後に、範囲指定と全文検索の順番を入れ替えて検索します。個々の条件は同じです"
"が、この場合はヒットしません。::"
msgstr ""
"最後に、範囲指定と全文検索の順番を入れ替えて検索します。個々の条件は同じです"
"が、この場合はヒットしません。::"

msgid "どうしてこのような挙動になるかを説明します。"
msgstr "どうしてこのような挙動になるかを説明します。"

msgid "原因"
msgstr "原因"

msgid ""
"このような挙動になるのは全文検索時に複数の検索の挙動を使い分けているからで"
"す。ここでは簡単に説明するので、詳細は :doc:`/spec/search` を参照してくださ"
"い。"
msgstr ""
"このような挙動になるのは全文検索時に複数の検索の挙動を使い分けているからで"
"す。ここでは簡単に説明するので、詳細は :doc:`/spec/search` を参照してくださ"
"い。"

msgid "検索の挙動には以下の3種類があります。"
msgstr "検索の挙動には以下の3種類があります。"

msgid "完全一致検索"
msgstr "完全一致検索"

msgid "非わかち書き検索"
msgstr "非わかち書き検索"

msgid "部分一致検索"
msgstr "部分一致検索"

msgid ""
"groongaは基本的に完全一致検索のみを行います。上記の例では「東京都民に深刻なダ"
"メージを与えました。」を「東京都」というクエリで検索していますが、TokenMecab"
"トークナイザーを使っている場合はこのクエリはマッチしません。"
msgstr ""
"groongaは基本的に完全一致検索のみを行います。上記の例では「東京都民に深刻なダ"
"メージを与えました。」を「東京都」というクエリで検索していますが、TokenMecab"
"トークナイザーを使っている場合はこのクエリはマッチしません。"

msgid "検索対象の「東京都民に深刻なダメージを与えました。」は"
msgstr "検索対象の「東京都民に深刻なダメージを与えました。」は"

msgid "東京 / 都民 / に / 深刻 / な / ダメージ / を / 与え / まし / た / 。"
msgstr "東京 / 都民 / に / 深刻 / な / ダメージ / を / 与え / まし / た / 。"

msgid "とトークナイズされますが、クエリの「東京都」は"
msgstr "とトークナイズされますが、クエリの「東京都」は"

msgid "東京 / 都"
msgstr "東京 / 都"

msgid "とトークナイズされるため、完全一致しません。"
msgstr "とトークナイズされるため、完全一致しません。"

msgid ""
"groongaは完全一致検索した結果のヒット件数が所定の閾値を超えない場合に限り、非"
"わかち書き検索を行い、それでもヒット件数が閾値を超えない場合は部分一致検索を"
"行います（閾値は1がデフォルト値となっています）。このケースのデータは部分一致"
"検索ではヒットするので、「東京都」クエリのみを指定するとヒットします。"
msgstr ""
"groongaは完全一致検索した結果のヒット件数が所定の閾値を超えない場合に限り、非"
"わかち書き検索を行い、それでもヒット件数が閾値を超えない場合は部分一致検索を"
"行います（閾値は1がデフォルト値となっています）。このケースのデータは部分一致"
"検索ではヒットするので、「東京都」クエリのみを指定するとヒットします。"

msgid ""
"しかし、以下のように全文検索前にすでに閾値が越えている場合（「updated_at < "
"1285858800」で1件ヒットし、閾値を越える）は、たとえ完全一致検索で1件もヒット"
"しない場合でも部分一致検索などを行いません。::"
msgstr ""
"しかし、以下のように全文検索前にすでに閾値が越えている場合（「updated_at < "
"1285858800」で1件ヒットし、閾値を越える）は、たとえ完全一致検索で1件もヒット"
"しない場合でも部分一致検索などを行いません。::"

msgid ""
"そのため、条件の順序を変えると検索結果が変わるという状況が発生します。以下"
"で、この情報を回避する方法を2種類紹介しますが、それぞれトレードオフとなる条件"
"があるので採用するかどうかを十分検討してください。"
msgstr ""
"そのため、条件の順序を変えると検索結果が変わるという状況が発生します。以下"
"で、この情報を回避する方法を2種類紹介しますが、それぞれトレードオフとなる条件"
"があるので採用するかどうかを十分検討してください。"

msgid "対策方法1: トークナイザーを変更する"
msgstr "対策方法1: トークナイザーを変更する"

msgid ""
"TokenMecabトークナイザーは事前に準備した辞書を用いてトークナイズするため、再"
"現率よりも適合率を重視したトークナイザーと言えます。一方、TokenBigramなど、N-"
"gram系のトークナイザーは適合率を重視したトークナイザーと言えます。例えば、"
"TokenMecabの場合「東京都」で「京都」に完全一致することはありませんが、"
"TokenBigramでは完全一致します。一方、TokenMecabでは「東京都民」に完全一致しま"
"せんが、TokenBigramでは完全一致します。"
msgstr ""
"TokenMecabトークナイザーは事前に準備した辞書を用いてトークナイズするため、再"
"現率よりも適合率を重視したトークナイザーと言えます。一方、TokenBigramなど、N-"
"gram系のトークナイザーは適合率を重視したトークナイザーと言えます。例えば、"
"TokenMecabの場合「東京都」で「京都」に完全一致することはありませんが、"
"TokenBigramでは完全一致します。一方、TokenMecabでは「東京都民」に完全一致しま"
"せんが、TokenBigramでは完全一致します。"

msgid ""
"このようにN-gram系のトークナイザーを指定することにより再現率をあげることがで"
"きますが、適合率が下がり検索ノイズが含まれる可能性が高くなります。この度合い"
"を調整するためには :doc:`/reference/commands/select` のmatch_columnsで使用す"
"る索引毎に重み付けを指定します。"
msgstr ""
"このようにN-gram系のトークナイザーを指定することにより再現率をあげることがで"
"きますが、適合率が下がり検索ノイズが含まれる可能性が高くなります。この度合い"
"を調整するためには :doc:`/reference/commands/select` のmatch_columnsで使用す"
"る索引毎に重み付けを指定します。"

msgid ""
"ここでも、前述の例を使って具体例を示します。まず、TokenBigramを用いた索引を追"
"加します。::"
msgstr ""
"ここでも、前述の例を使って具体例を示します。まず、TokenBigramを用いた索引を追"
"加します。::"

msgid ""
"この状態でも以前はマッチしなかったレコードがヒットするようになります。::"
msgstr ""
"この状態でも以前はマッチしなかったレコードがヒットするようになります。::"

msgid ""
"しかし、N-gram系のトークナイザーの方がTokenMecabトークナイザーよりも語のヒッ"
"ト数が多いため、N-gram系のヒットスコアの方が重く扱われてしまいます。N-gram系"
"のトークナイザーの方がTokenMecabトークナイザーよりも適合率の低い場合が多いの"
"で、このままでは検索ノイズが上位に表示される可能性が高くなります。"
msgstr ""
"しかし、N-gram系のトークナイザーの方がTokenMecabトークナイザーよりも語のヒッ"
"ト数が多いため、N-gram系のヒットスコアの方が重く扱われてしまいます。N-gram系"
"のトークナイザーの方がTokenMecabトークナイザーよりも適合率の低い場合が多いの"
"で、このままでは検索ノイズが上位に表示される可能性が高くなります。"

msgid ""
"そこで、TokenMecabトークナイザーを使って作った索引の方をTokenBigramトークナイ"
"ザーを使って作った索引よりも重視するように重み付けを指定します。これは、"
"match_columnsオプションで指定できます。::"
msgstr ""
"そこで、TokenMecabトークナイザーを使って作った索引の方をTokenBigramトークナイ"
"ザーを使って作った索引よりも重視するように重み付けを指定します。これは、"
"match_columnsオプションで指定できます。::"

msgid ""
"この場合はスコアが11になっています。内訳は、Terms.blog_body索引（TokenMecab"
"トークナイザーを使用）でマッチしたので10、Bigram.blog_body索引（TokenBigram"
"トークナイザーを使用）でマッチしたので3、これらを合計して13になっています。こ"
"のようにTokenMecabトークナイザーの重みを高くすることにより、検索ノイズが上位"
"にくることを抑えつつ再現率を上げることができます。"
msgstr ""
"この場合はスコアが11になっています。内訳は、Terms.blog_body索引（TokenMecab"
"トークナイザーを使用）でマッチしたので10、Bigram.blog_body索引（TokenBigram"
"トークナイザーを使用）でマッチしたので3、これらを合計して13になっています。こ"
"のようにTokenMecabトークナイザーの重みを高くすることにより、検索ノイズが上位"
"にくることを抑えつつ再現率を上げることができます。"

msgid ""
"この例は日本語だったのでTokenBigramトークナイザーでよかったのですが、アルファ"
"ベットの場合はTokenBigramSplitSymbolAlphaトークナイザーなども利用する必要があ"
"ります。例えば、「楽しいbilliard」はTokenBigramトークナイザーでは"
msgstr ""
"この例は日本語だったのでTokenBigramトークナイザーでよかったのですが、アルファ"
"ベットの場合はTokenBigramSplitSymbolAlphaトークナイザーなども利用する必要があ"
"ります。例えば、「楽しいbilliard」はTokenBigramトークナイザーでは"

msgid "楽し / しい / billiard"
msgstr "楽し / しい / billiard"

msgid ""
"となり、「bill」では完全一致しません。一方、TokenBigramSplitSymbolAlphaトーク"
"ナイザーを使うと"
msgstr ""
"となり、「bill」では完全一致しません。一方、TokenBigramSplitSymbolAlphaトーク"
"ナイザーを使うと"

msgid "楽し / しい / いb / bi / il / ll / li / ia / ar / rd / d"
msgstr "楽し / しい / いb / bi / il / ll / li / ia / ar / rd / d"

msgid "となり、「bill」でも完全一致します。"
msgstr "となり、「bill」でも完全一致します。"

msgid ""
"TokenBigramSplitSymbolAlphaトークナイザーを使う場合も重み付けを考慮する必要が"
"あることはかわりありません。"
msgstr ""
"TokenBigramSplitSymbolAlphaトークナイザーを使う場合も重み付けを考慮する必要が"
"あることはかわりありません。"

msgid "利用できるバイグラム系のトークナイザーの一覧は以下の通りです。"
msgstr "利用できるバイグラム系のトークナイザーの一覧は以下の通りです。"

msgid ""
"TokenBigram: バイグラムでトークナイズする。連続する記号・アルファベット・数字"
"は一語として扱う。"
msgstr ""
"TokenBigram: バイグラムでトークナイズする。連続する記号・アルファベット・数字"
"は一語として扱う。"

msgid ""
"TokenBigramSplitSymbol: 記号もバイグラムでトークナイズする。連続するアルファ"
"ベット・数字は一語として扱う。"
msgstr ""
"TokenBigramSplitSymbol: 記号もバイグラムでトークナイズする。連続するアルファ"
"ベット・数字は一語として扱う。"

msgid ""
"TokenBigramSplitSymbolAlpha: 記号とアルファベットもバイグラムでトークナイズす"
"る。連続する数字は一語として扱う。"
msgstr ""
"TokenBigramSplitSymbolAlpha: 記号とアルファベットもバイグラムでトークナイズす"
"る。連続する数字は一語として扱う。"

msgid ""
"TokenBigramSplitSymbolAlphaDigit: 記号・アルファベット・数字もバイグラムで"
"トークナイズする。"
msgstr ""
"TokenBigramSplitSymbolAlphaDigit: 記号・アルファベット・数字もバイグラムで"
"トークナイズする。"

msgid ""
"TokenBigramIgnoreBlank: バイグラムでトークナイズする。連続する記号・アルファ"
"ベット・数字は一語として扱う。空白は無視する。"
msgstr ""
"TokenBigramIgnoreBlank: バイグラムでトークナイズする。連続する記号・アルファ"
"ベット・数字は一語として扱う。空白は無視する。"

msgid ""
"TokenBigramIgnoreBlankSplitSymbol: 記号もバイグラムでトークナイズする。連続す"
"るアルファベット・数字は一語として扱う。空白は無視する。"
msgstr ""
"TokenBigramIgnoreBlankSplitSymbol: 記号もバイグラムでトークナイズする。連続す"
"るアルファベット・数字は一語として扱う。空白は無視する。"

msgid ""
"TokenBigramIgnoreBlankSplitSymbolAlpha: 記号とアルファベットもバイグラムで"
"トークナイズする。連続する数字は一語として扱う。空白は無視する。"
msgstr ""
"TokenBigramIgnoreBlankSplitSymbolAlpha: 記号とアルファベットもバイグラムで"
"トークナイズする。連続する数字は一語として扱う。空白は無視する。"

msgid ""
"TokenBigramIgnoreBlankSplitSymbolAlphaDigit: 記号・アルファベット・数字もバイ"
"グラムでトークナイズする。空白は無視する。"
msgstr ""
"TokenBigramIgnoreBlankSplitSymbolAlphaDigit: 記号・アルファベット・数字もバイ"
"グラムでトークナイズする。空白は無視する。"

msgid "対策方法2: 閾値をあげる"
msgstr "対策方法2: 閾値をあげる"

msgid ""
"非わかち書き検索・部分一致検索を利用するかどうかの閾値は--with-match-"
"escalation-threshold configureオプションで変更することができます。以下のよう"
"に指定すると、100件以下のヒット数であれば、たとえ完全一致検索でヒットしても、"
"非わかち書き検索・部分一致検索を行います。::"
msgstr ""
"非わかち書き検索・部分一致検索を利用するかどうかの閾値は--with-match-"
"escalation-threshold configureオプションで変更することができます。以下のよう"
"に指定すると、100件以下のヒット数であれば、たとえ完全一致検索でヒットしても、"
"非わかち書き検索・部分一致検索を行います。::"

msgid ""
"この場合も対策方法1同様、検索ノイズが上位に現れる可能性が高くなることに注意し"
"てください。検索ノイズが多くなった場合は指定する値を低くする必要があります。"
msgstr ""
"この場合も対策方法1同様、検索ノイズが上位に現れる可能性が高くなることに注意し"
"てください。検索ノイズが多くなった場合は指定する値を低くする必要があります。"

msgid "How to avoid mmap Cannot allocate memory error"
msgstr "How to avoid mmap Cannot allocate memory error"

msgid "Example"
msgstr "Example"

msgid "There is a case following mmap error in log file:"
msgstr "There is a case following mmap error in log file:"

msgid ""
"2013-06-04 08:19:34.835218|A|4e86e700|mmap(4194304,551,432017408)=Cannot "
"allocate memory <13036498944>"
msgstr ""
"2013-06-04 08:19:34.835218|A|4e86e700|mmap(4194304,551,432017408)=Cannot "
"allocate memory <13036498944>"

msgid ""
"Note that <13036498944> means total size of mmap (almost 12GB) in this case."
msgstr ""
"Note that <13036498944> means total size of mmap (almost 12GB) in this case."

msgid "Solution"
msgstr "Solution"

msgid "So you need to confirm following point of views."
msgstr "So you need to confirm following point of views."

msgid "Are there enough free memory?"
msgstr "Are there enough free memory?"

msgid "Are maximum number of mappings exceeded?"
msgstr "Are maximum number of mappings exceeded?"

msgid "To check there are enough free memory, you can use vmstat command."
msgstr "To check there are enough free memory, you can use vmstat command."

msgid ""
"To check whether maximum number of mappings are exceeded, you can "
"investigate the value of vm.max_map_count."
msgstr ""
"To check whether maximum number of mappings are exceeded, you can "
"investigate the value of vm.max_map_count."

msgid ""
"If this issue is fixed by modifying the value of vm.max_map_count, it's "
"exactly the reason."
msgstr ""
"If this issue is fixed by modifying the value of vm.max_map_count, it's "
"exactly the reason."

msgid ""
"As groonga allocates memory chunks each 256KB, you can estimate the size of "
"database you can handle by following formula:"
msgstr ""
"As groonga allocates memory chunks each 256KB, you can estimate the size of "
"database you can handle by following formula:"

msgid "(database size) = vm.max_map_count * (memory chunks)"
msgstr "(database size) = vm.max_map_count * (memory chunks)"

msgid ""
"If you want to handle over 16GB groonga database, you must specify at least "
"65536 as the value of vm.max_map_count:"
msgstr ""
"If you want to handle over 16GB groonga database, you must specify at least "
"65536 as the value of vm.max_map_count:"

msgid "database size (16GB) = vm.max_map_count (65536) * memory chunks (256KB)"
msgstr ""
"database size (16GB) = vm.max_map_count (65536) * memory chunks (256KB)"

msgid ""
"You can modify vm.max_map_count temporary by sudo sysctl -w vm."
"max_map_count=65536."
msgstr ""
"You can modify vm.max_map_count temporary by sudo sysctl -w vm."
"max_map_count=65536."

msgid ""
"Then save the configuration value to ``/etc/sysctl.conf`` or ``/etc/sysctl.d/"
"*.conf``."
msgstr ""

msgid ""
"See :doc:`/reference/tuning` documentation about tuning related parameters."
msgstr ""
"See :doc:`/reference/tuning` documentation about tuning related parameters."
