# Japanese translations for 1.2.1 package.
# Copyright (C) 2009-2012, Brazil, Inc
# This file is distributed under the same license as the groonga package.
# Kouhei Sutou <kou@clear-code.com>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: 1.2.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-01-23 17:04+0900\n"
"PO-Revision-Date: 2014-06-05 13:15+0900\n"
"Last-Translator: Kouhei Sutou <kou@clear-code.com>\n"
"Language-Team: Japanese\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"

msgid "Execution example::"
msgstr "実行例::"

msgid "Tutorial"
msgstr "チュートリアル"

msgid "Various data types"
msgstr "いろいろなデータの保存"

msgid ""
"Groonga is a full text search engine but also serves as a column-oriented "
"data store. Groonga supports various data types, such as numeric types, "
"string types, date and time type, longitude and latitude types, etc. This "
"tutorial shows a list of data types and explains how to use them."
msgstr ""
"Groongaは全文検索エンジンを起源として独自のカラムストアを持つに至るわけです"
"が、索引語や文書を保存するだけでなく、数値や文字列、日時や経緯度など、いろい"
"ろなデータを保存することができます。本チュートリアルでは、Groongaで保存できる"
"データの種類、およびに保存の方法を説明します。"

msgid "Overview"
msgstr "データの種類"

msgid ""
"The basic data types of Groonga are roughly divided into 5 groups --- "
"boolean type, numeric types, string types, date/time type and longitude/"
"latitude types. The numeric types are further divided according to whether "
"integer or floating point number, signed or unsigned and the number of bits "
"allocated to each integer. The string types are further divided according to "
"the maximum length. The longitude/latitude types are further divided "
"according to the geographic coordinate system. For more details, see :doc:`/"
"reference/types`."
msgstr ""
"Groongaにおいて利用できる基本型は、真偽値、数値、文字列、日時、経緯度の5種類"
"に大別できます。基本型において、数値は整数・浮動小数点数の違い、符号の有無と"
"割り当てるビット数によって細分化できるほか、文字列は長さの上限によって細分化"
"できます。また、経緯度には測地系による分類があります。詳しくは :doc:`/"
"reference/types` を参照してください。"

msgid ""
"In addition, Groonga supports reference types and vector types. Reference "
"types are designed for accessing other tables. Vector types are designed for "
"storing a variable number of values in one element."
msgstr ""
"拡張型としては、別テーブルを参照するための情報であるテーブル参照を保存するこ"
"とができます。また、基本型もしくはテーブル参照を複数まとめて保存できるよう"
"に、ベクターカラムをサポートしています。"

msgid "First, let's create a table for this tutorial."
msgstr "それでは、本チュートリアルで使用するテーブルを作成しておきましょう。"

msgid "Boolean type"
msgstr "真偽値"

msgid ""
"The boolean type is used to store true or false. To create a boolean type "
"column, specify Bool to the `type` parameter of :doc:`/reference/commands/"
"column_create` command. The default value of the boolean type is false."
msgstr ""
"ブール型は真偽値（true/false）を表現するための型です。ブール型のカラムを作成"
"するには、 :doc:`/reference/commands/column_create` コマンドの `type` 引数に "
"Bool を指定します。ブール型のデフォルト値はfalseです。"

msgid ""
"The following example creates a boolean type column and adds three records. "
"Note that the third record has the default value because no value is "
"specified."
msgstr ""
"以下の例では、ブール型のカラムを作成し、3つのレコードを追加します。3番目のレ"
"コードについては、値を省略しているため、デフォルト値が格納されます。"

msgid "Numeric types"
msgstr "数値"

msgid ""
"The numeric types are divided into integer types and a floating point number "
"type. The integer types are further divided into the signed integer types "
"and unsigned integer types. In addition, you can choose the number of bits "
"allocated to each integer. For more details, see :doc:`/reference/types`. "
"The default value of the numeric types is 0."
msgstr ""
"数値型は、整数と浮動小数点数に分けることができます。整数は、符号付き整数と符"
"号なし整数に分けることができるだけでなく、割り当てるビット数によっても分ける"
"ことができます。割り当てるビット数を大きくすると、カラムのサイズは大きくなっ"
"てしまいますが、表現できる整数の範囲を大きくすることができます。詳しくは :"
"doc:`/reference/types` を参照してください。数値型のデフォルト値はいずれも0で"
"す。"

msgid ""
"The following example creates an Int8 column and a Float column, and then "
"updates existing records. The :doc:`/reference/commands/load` command "
"updates the weight column as expected. On the other hand, the price column "
"values are different from the specified values because 15.9 is not an "
"integer and 200 is too large. 15.9 is converted to 15 by removing the "
"fractional part. 200 causes an overflow and the result becomes -56. Note "
"that the result of an overflow/underflow is undefined."
msgstr ""
"以下の例では、Int8型のカラムとFloat型のカラムを作成し、既存のレコードを更新し"
"ます。weightカラムについては、指定した値が問題なく格納されています。一方、"
"priceカラムに指定した小数については、小数点以下を切り捨てた値が格納されていま"
"す。また、表現できる範囲を超える値を格納しようとした2番目のレコードについて"
"は、指定した値とは異なる値が格納されています。このように、表現できる範囲を超"
"える値を指定すると、操作後の値は未定義になるので注意してください。"

msgid "String types"
msgstr "文字列"

msgid ""
"The string types are divided according to the maximum length. For more "
"details, see :doc:`/reference/types`. The default value is the zero-length "
"string."
msgstr ""
"文字列型は、長さの上限によって分けることができます。詳しくは :doc:`/"
"reference/types` を参照してください。文字列型のデフォルト値は長さ0の文字列で"
"す。"

msgid ""
"The following example creates a ShortText column and updates existing "
"records. The third record has the default value because not updated."
msgstr ""
"以下の例では、ShortText型のカラムを作成し、IDが1と2のレコードを更新します。更"
"新しないレコードについては、デフォルト値のままとなります。"

msgid "Date and time type"
msgstr "日時"

msgid ""
"The date and time type of Groonga is Time. Actually, a Time column stores a "
"date and time as the number of microseconds since the Epoch, 1970-01-01 "
"00:00:00. A Time value can represent a date and time before the Epoch "
"because the actual data type is a signed integer. Note that :doc:`/reference/"
"commands/load` and :doc:`/reference/commands/select` commands use a decimal "
"number to represent a data and time in seconds. The default value is 0.0, "
"which means the Epoch."
msgstr ""
"日時を表現するための型はTimeです。内部では1970年1月1日0時0分0秒を基準とする経"
"過時間をマイクロ秒単位で表現します。符号付きの整数を用いるため、1970年以前の"
"日時も表現することができます。内部表現はマイクロ秒単位の整数ですが、 :doc:`/"
"reference/commands/load` コマンドおよび :doc:`/reference/commands/select` コ"
"マンドでは、経過秒数による指定・表示となります。デフォルト値は1970年1月1日0時"
"0分0秒のことを表す0.0です。"

msgid ""
"Groonga internally holds the value of Epoch as pair of integer. The first "
"integer represents the value of seconds, on the other hand, the second "
"integer represents the value of micro seconds. So, Groonga shows the value "
"of Epoch as floating point. Integral part means the value of seconds, "
"fraction part means the value of micro seconds."
msgstr ""
"Groonga内部では経過秒数を整数のペアで保持しています。最初の整数で秒を表現し、"
"もう一方でマイクロ秒を表現します。それゆえGroongaでは小数で経過秒数を表示しま"
"す。整数部が秒数で、小数部はマイクロ秒の値です。"

msgid ""
"The following example creates a Time column and updates existing records. "
"The first record has the default value because not updated."
msgstr ""
"以下の例では、Time型のカラムを作成し、IDが2と3のレコードを更新します。更新し"
"ないレコードについては、デフォルト値のままとなります。"

msgid "Longitude and latitude types"
msgstr "経緯度"

msgid ""
"The longitude and latitude types are divided according to the geographic "
"coordinate system. For more details, see :doc:`/reference/types`. To "
"represent a longitude and latitude, Groonga uses a string formatted as "
"follows:"
msgstr ""
"経緯度を表現するための型は、測地系によって分けることができます。詳しくは :"
"doc:`/reference/types` を参照してください。経緯度の指定・表示には、以下に示す"
"形式の文字列を使います。"

msgid ""
"\"longitude x latitude\" in milliseconds (e.g.: \"128452975x503157902\")"
msgstr "\"経度のミリ秒表記x緯度のミリ秒表記\" （例: \"128452975x503157902\"）"

msgid "\"longitude x latitude\" in degrees (e.g.: \"35.6813819x139.7660839\")"
msgstr "\"経度の度数表記x緯度の度数表記\" （例: \"35.6813819x139.7660839\"）"

msgid ""
"A number with/without a decimal point represents a longitude or latitude in "
"milliseconds/degrees respectively. Note that a combination of a number with "
"a decimal point and a number without a decimal point (e.g. 35.1x139) must "
"not be used. A comma (',') is also available as a delimiter. The default "
"value is \"0x0\"."
msgstr ""
"小数点を含んでいなければミリ秒表記、小数点を含んでいれば度数表記として扱われ"
"ます。ミリ秒表記と度数表記を混ぜたときの動作は未定義なので注意してください。"
"経度と緯度の区切りとしては、'x' のほかに ',' を使うことができます。経緯度のデ"
"フォルト値は \"0x0\" です。"

msgid ""
"The following example creates a WGS84GeoPoint column and updates existing "
"records. The second record has the default value because not updated."
msgstr ""
"以下の例では、世界測地系を用いるWGS84GeoPoint型のカラムを作成し、IDが1と3のレ"
"コードを更新します。更新しないレコードについては、デフォルト値のままとなりま"
"す。"

msgid "Reference types"
msgstr "テーブル参照"

msgid ""
"Groonga supports a reference column, which stores references to records in "
"its associated table. In practice, a reference column stores the IDs of the "
"referred records in the associated table and enables access to those records."
msgstr ""
"Groongaでは、テーブル参照のカラム、すなわち関連付けたテーブルを参照するカラム"
"を作成できます。より正確には、カラム作成時に参照先となるテーブルとの関連付け"
"をおこない、参照先テーブルにおけるレコードIDを格納しておくことにより、参照先"
"のレコードにアクセスできるようにします。"

msgid ""
"You can specify a column in the associated table to the `output_columns` "
"parameter of a :doc:`/reference/commands/select` command. The format is "
"\"Src.Dest\" where Src is the name of the reference column and Dest is the "
"name of the target column. If only the reference column is specified, it is "
"handled as \"Src._key\". Note that if a reference does not point to a valid "
"record, a :doc:`/reference/commands/select` command outputs the default "
"value of the target column."
msgstr ""
"テーブル参照のカラムがあるときは、 :doc:`reference/commands/select` コマンド"
"の `output_columns` 引数に \"参照元カラム.参照先カラム\" と指定することによ"
"り、参照先カラムの値を取り出すことができます。参照元カラムのみを指定したとき"
"は、 \"参照元カラム名._key\" と同様の扱いとなり、参照先レコードの主キーが取り"
"出されます。テーブル参照が有効なレコードを指していないときは、参照先カラムの"
"デフォルト値が取り出されるようになっています。"

msgid ""
"The following example adds a reference column to the Site table that was "
"created in the previous tutorial. The new column, named link, is designed "
"for storing links among records in the Site table."
msgstr ""
"ここでは、先のチュートリアルで作成したSiteテーブルにlinkという新たなカラムを"
"作成し、サイト間のリンク関係を保存できるようにしてみましょう。"

msgid ""
"The `type` parameter of the :doc:`/reference/commands/column_create` command "
"specifies the table to be associated with the reference column. In this "
"example, the reference column is associated with the own table. Then, the :"
"doc:`/reference/commands/load` command registers a link from \"http://"
"example.org\" to \"http://example.net\". Note that a reference column "
"requires the primary key, not the ID, of the record to be referred to. After "
"that, the link is confirmed by the :doc:`/reference/commands/select` "
"command. In this case, the primary key and the title of the referred record "
"are output because link._key and link.title are specified to the "
"`output_columns` parameter."
msgstr ""
"テーブル参照のカラムを作成するときは、 :doc:`/reference/commands/"
"column_create` コマンドの `type` 引数に参照先テーブルを指定します。この例で"
"は、同じテーブルに含まれる別のレコードを参照させたいので、Siteを指定すること"
"になります。次に、 \"http://example.org/\" から \"http://example.net/\" への"
"リンクを登録しています。テーブル参照を作成するときは、IDではなく主キーを指定"
"することに注意してください。最後に、リンクの内容を確認しています。この例で"
"は、  `output_columns` 引数に link._key と link.title を指定しているので、参"
"照先の主キーとタイトルが表示されています。"

msgid "Vector types"
msgstr "ベクターカラム"

msgid ""
"Groonga supports a vector column, in which each element can store a variable "
"number of values. To create a vector column, specify the COLUMN_VECTOR flag "
"to the `flags` parameter of a :doc:`/reference/commands/column_create` "
"command. A vector column is useful to represent a many-to-many relationship."
msgstr ""
":doc:`/reference/commands/column_create` コマンドでカラムを作成するとき、 "
"`flags` 引数にCOLUMN_VECTORフラグを指定すると、 `type` 引数に指定した型の配列"
"を格納するカラムになります。このようなカラムのことは、ベクターカラムと呼びま"
"す。ベクターカラムは、各レコードに複数の値を格納できるため、一対多の参照関係"
"を表すのに便利です。"

msgid ""
"The previous example used a regular column, so each record could have at "
"most one link. Obviously, the specification is insufficient because a site "
"usually has more than one links. To solve this problem, the following "
"example uses a vector column."
msgstr ""
"さきほどテーブル参照の例として作成したカラムでは、各サイトに一つのリンクしか"
"保存できませんでした。通常は一つのサイトから多くのサイトにリンクが張られてい"
"るので、これでは残念な仕様になってしまいます。そこで、ベクターカラムを使っ"
"て、複数のリンクを保存できるようにしてみましょう。"

msgid ""
"The only difference at the first step is the `flags` parameter that "
"specifies to create a vector column. The `type` parameter of the :doc:`/"
"reference/commands/column_create` command is the same as in the previous "
"example. Then, the :doc:`/reference/commands/load` command registers three "
"links from \"http://example.org/\" to \"http://example.net/\", \"http://"
"example.org/\" and \"http://example.com/\". After that, the links are "
"confirmed by the :doc:`/reference/commands/select` command. In this case, "
"the primary keys and the titles are output as arrays because links._key and "
"links.title are specified to the `output_columns` parameter."
msgstr ""
"新たなカラムにはSiteテーブルに対する参照の配列を格納するので、 `type` 引数に"
"Siteを指定するとともに、 `flags` 引数にCOLUMN_VECTORフラグを指定しています。"
"次に、 :doc:`/reference/commands/load` による更新では、 \"http://example.org/"
"\" から \"http://example.net/\" へのリンクに加えて、 \"http://example.org/\" "
"と \"http://example.com/\" へのリンクも登録しています。そして、最後にリンクの"
"内容を確認しています。この例では、 `output_columns` 引数に links._key と "
"links.title を指定しているので、参照先の主キーとタイトルをそれぞれ配列にした"
"ものが表示されています。"

msgid "Drilldown by ``domain`` column"
msgstr "``domain`` カラムによるドリルダウン"

msgid "Drilldown"
msgstr "ドリルダウン"

msgid ""
"You learned how to filter search results and sort ones in the previous "
"sections. Now that you can search as you likes, but how do you summarize the "
"number of records which has specific value in the column?"
msgstr ""

msgid ""
"As you know, there is a naive solution to execute query by every the value "
"of column, then you can get the number of records as a result. It is a "
"simple way, but it is not reasonable to many records."
msgstr ""

msgid ""
"If you are familiar with SQL, you will doubt with \"Is there a similar SQL "
"functionality to ``GROUP BY`` in Groonga?\"."
msgstr ""

msgid ""
"Of course, Groonga provides such a functionality. It's called as "
"``drilldown``."
msgstr ""

msgid ""
"``drilldown`` enables you to get the number of records which belongs to "
"specific the value of column at once."
msgstr ""

msgid ""
"To illustrate this feature, imagine the case that classification by domain "
"and grouping by country that domain belongs to."
msgstr ""

msgid "Here is the concrete examples how to use this feature."
msgstr "この機能を使った具体的な例を示します。"

msgid ""
"In this example, we add two columns to ``Site`` table. ``domain`` column is "
"used for TLD (top level domain). ``country`` column is used for country "
"name. The type of these columns are ``SiteDomain`` table which uses domain "
"name as a primary key and ``SiteCountry`` table which uses country name as a "
"primary key."
msgstr ""
"この例では、 ``Site`` テーブルに2つのカラムを追加しています。 ``domain`` カラ"
"ムはTLD(トップレベルドメイン)に使います。 ``country`` カラムは国名に使いま"
"す。これらのカラムの型はドメイン名を主キーとする ``SiteDomain`` テーブルと国"
"名を主キーとする ``SiteCountry`` テーブルです。"

msgid ""
"Here is a example of drilldown with ``domain`` column. Three kind of values "
"are used in ``domain`` column - \".org\", \".net\" and \".com\"."
msgstr ""
"``domain`` カラムでドリルダウンする例を示します。 3つの値が ``domain`` カラム"
"では使われています。\".org\"、\".net\"そして\".com\"です。"

msgid "Here is a summary of above query."
msgstr "上記のクエリの集計結果です。"

msgid "Group by"
msgstr "グループ化するカラムの値"

msgid "The number of group records"
msgstr "グループ化されたレコード数"

msgid "Group records means following records"
msgstr "グループ化されたレコードは次のとおり"

msgid ".org"
msgstr ""

msgid "3"
msgstr ""

msgid "http://example.org/"
msgstr ""

msgid "http://example.org/aba"
msgstr ""

msgid "http://example.org/gat"
msgstr ""

msgid ".net"
msgstr ""

msgid "http://example.net/"
msgstr ""

msgid "http://example.net/afr"
msgstr ""

msgid "http://example.net/atv"
msgstr ""

msgid ".com"
msgstr ""

msgid "http://example.com/"
msgstr ""

msgid "http://example.com/rab"
msgstr ""

msgid "http://example.com/vdw"
msgstr ""

msgid ""
"The value of drilldown are returned as the value of ``_nsubrecs`` column. In "
"this case, ``Site`` table is grouped by \".org\", \".net\", \".com\" domain. "
"``_nsubrecs`` shows that each three domain has three records."
msgstr ""
"ドリルダウン結果は ``_nsubrecs`` カラムの値として返ります。この場合は、"
"``Site`` テーブルは \".org\"、\".net\"、\".com\"ドメインでグループ化されてい"
"ます。 ``_nsubrecs`` はグループ化されたドメインが3つのレコードをそれぞれもつ"
"ことを意味します。"

msgid ""
"If you execute drildown to the column which has table as a type, you can get "
"the value of column which is stored in referenced table. ``_nsubrecs`` "
"pseudo column is added to the table which is used for drilldown. this pseudo "
"column stores the number of records which is grouped by."
msgstr ""
"テーブル型を持つカラムに対してドリルダウンを行った場合、参照先のテーブルに存"
"在するカラム値を取得することもできます。ドリルダウンを行ったテーブルには、 "
"``_nsubrecs`` という仮想的なカラムが追加されます。このカラムには、グループ化"
"されたレコード数が入ります。"

msgid ""
"Then, investigate referenced table in detail. As ``Site`` table use "
"``SiteDomain`` table as column type of ``domain``, you can use ``--"
"drilldown_output_columns`` to know detail of referenced column."
msgstr ""
"では、参照されているテーブルの詳細を調べてみましょう。 ``Site`` テーブルは "
"``SiteDomain`` テーブルを ``domain`` カラムの型として使っています。 ``--"
"drilldown_output_columns`` を参照されているカラムの詳細を知るのに使えます。"

msgid ""
"Now, you can see detail of each grouped domain, drilldown by ``country`` "
"column which has \".org\" as column value."
msgstr ""
"これでグループ化されたドメインの詳細がわかります。 ``domain`` の値が\".org"
"\"であるレコードに対して ``country`` カラムを使ってドリルダウンしてみましょ"
"う。"

msgid "Drilldown with multiple column"
msgstr "複数のカラムでドリルダウン"

msgid ""
"Drilldown feature supports multiple column. Use comma separated multiple "
"column names as ``drildown`` parameter. You can get the each result of "
"drilldown at once."
msgstr ""
"ドリルダウンでは複数のカラムをサポートしています。 ``drilldown`` パラメータの"
"引数にカンマ区切りの値を指定します。すると一度にまとめてドリルダウン結果を取"
"得できます。"

msgid "Sorting drildown results"
msgstr "ドリルダウン結果をソートする"

msgid ""
"Use ``--drilldown_sortby`` if you want to sort the result of drilldown. For "
"example, specify ``_nsubrecs`` as ascending order."
msgstr ""
"ドリルダウン結果をソートしたい場合には ``--drilldown_sortby`` を使います。指"
"定した ``_nsubrecs`` カラムを昇順でソートします。"

msgid "limits drildown results"
msgstr "ドリルダウン結果の制限"

msgid ""
"The number of drilldown results is limited to 10 as a default. Use "
"``drilldown_limits`` and ``drilldown_offset`` parameter to customize "
"orilldown results."
msgstr ""
"ドリルダウン結果はデフォルト10件に制限されています。 ``drilldown_limits`` と "
"``drilldown_offset`` パラメータをドリルダウン結果をカスタマイズするのに使いま"
"す。"

msgid ""
"文字列型のカラムに対するドリルダウンは、他の型でのドリルダウンに比べて低速で"
"す。文字列でのドリルダウンを行いたい場合には、このチュートリアルのように、文"
"字列型を主キーとするテーブルを別途作成し、そのテーブルを型とするカラムを作成"
"します。"
msgstr ""

msgid "タグ検索・参照関係の逆引き"
msgstr ""

msgid ""
"本チュートリアルで、Groongaはカラム値として他のテーブルへの参照の配列を持つこ"
"とができることを紹介いたしました。実は、テーブルへの参照の配列データを用いる"
"ことによって、いわゆるタグ検索を行うことが可能となります。"
msgstr ""

msgid ""
"タグ検索はGroongaの転置インデックスというデータ構造を用いて高速に行われます。"
msgstr ""

msgid "タグ検索"
msgstr ""

msgid ""
"動画共有サイトの検索エンジンを作ることを想定します。1つの動画には、その動画の"
"特徴を表す、複数の語句が付与されています。「ある語句が付与されている動画の一"
"覧を取得する」検索を行いたいとします。"
msgstr ""

msgid "実際に、動画情報のテーブルを作成し、検索をしてみましょう。"
msgstr ""

msgid ""
"動画の情報を保存する、Videoテーブルを作成します。Videoテーブルでは、動画のタ"
"イトルをtitleカラムに、動画のタグ情報をtagsカラムにTagテーブル型で複数格納し"
"ています。 タグの情報を保存する、Tagテーブルを作成します。Tagテーブルでは、タ"
"グ文字列を主キーに格納し、Videoテーブルのtagsカラムに対するインデックスを"
"index_tagsカラムに格納しています。"
msgstr ""

msgid ""
"インデックスカラムを作成すると、全文検索が高速に行えるようになります。イン"
"デックスカラムは、対象のカラムに保存されたデータに更新があったとき、自動的に"
"更新されます。"
msgstr ""

msgid "「ある語句が付与されている動画の一覧を取得する」検索を行いましょう。"
msgstr ""

msgid ""
"このように、「Variety」、「Sports」、「Animation」のようなタグで検索を行うこ"
"とができました。"
msgstr ""

msgid "参照関係の逆引き"
msgstr ""

msgid ""
"Groongaはテーブル間の参照関係の逆引きを高速に行うためのインデックスを付与する"
"ことができます。タグ検索は、その1例にすぎません。"
msgstr ""

msgid ""
"例えば、ソーシャルネットワーキングサイトにおける友人関係を逆引き検索すること"
"ができます。"
msgstr ""

msgid ""
"以下の例では、ユーザー情報を格納するUserテーブルを作成し、ユーザー名を格納す"
"るusernameカラム、ユーザーの友人一覧を配列で格納するfriendsカラムとそのイン"
"デックスのindex_friendsカラムを追加しています。"
msgstr ""

msgid ""
"指定したユーザーを友人リストに入れているユーザーの一覧を表示してみましょう。"
msgstr ""

msgid ""
"さらに、ドリルダウンを使って、友人リストに入っている数の一覧を表示してみま"
"しょう。"
msgstr ""

msgid "このように、テーブルの参照関係を逆にたどる検索ができました。"
msgstr ""

msgid "インデックス付きジオサーチ"
msgstr ""

msgid ""
"位置情報のカラムに対して、インデックスを付与することが出来ます。大量の位置情"
"報レコードを検索する場合に、検索速度が速くなります。"
msgstr ""

msgid ""
"同様に、位置情報レコードを用いてソートする場合に、ソート速度が速くなります。"
msgstr ""

msgid "Basic operations"
msgstr "基本的な操作"

msgid ""
"A Groonga package provides a C library (libgroonga) and a command line tool "
"(groonga). This tutorial explains how to use the command line tool, with "
"which you can create/operate databases, start a server, establish a "
"connection with a server, etc."
msgstr ""
"Groongaには、Cのライブラリとして使用する方法と、groonga実行ファイルを通して使"
"用する方法があります。本チュートリアルでは、groonga実行ファイルを使用する方法"
"について説明します。groonga実行ファイルを使って、データベースの作成・操作・"
"サーバの起動・サーバへの接続などの操作が行えます。"

msgid "Create a database"
msgstr "データベースの作成"

msgid ""
"The first step to using Groonga is to create a new database. The following "
"shows how to do it."
msgstr ""
"Groongaユーザへの第一歩はデータベースの作成です。まずは以下の書式をご覧くださ"
"い。"

msgid "Form::"
msgstr "書式::"

msgid ""
"The `-n` option specifies to create a new database and DB_PATH specifies the "
"path of the new database. Actually, a database consists of a series of files "
"and DB_PATH specifies the file which will be the entrance to the new "
"database. DB_PATH also specifies the path prefix for other files. Note that "
"database creation fails if DB_PATH points to an existing file."
msgstr ""
"`-n` オプションは、データベースの作成を指示します。DB_PATHは、新しく作成する"
"データベースのパスを指定します。データベースは複数のファイルによって構成され"
"るため、正確には、データベースの入り口となるファイルのパスとして使用されま"
"す。また、データベースを構成する他のファイルについては、DB_PATHがパスのプレ"
"フィックスとして使用されます。指定されたパスにファイルが存在しているときは失"
"敗するので注意してください。"

msgid ""
"This command creates a new database and then enters into interactive mode in "
"which Groonga prompts you to enter commands for operating that database. You "
"can terminate this mode with Ctrl-d."
msgstr ""
"上記のコマンドは、データベースを作成してから、コマンドの入力を受け付ける対話"
"モードに入ります。Ctrlキーを押しながらdキーを押すと、対話モードから抜けること"
"ができます。"

msgid ""
"After this database creation, you can find a series of files in /tmp/groonga-"
"databases."
msgstr "データベースの作成に成功すれば、/tmp/groonga-databases以下にデータベースを構成するファイルが配置されます。"

msgid "Operate a database"
msgstr "データベースの操作"

msgid "The following shows how to operate an existing database."
msgstr "以下の書式は、既存のデータベースを操作する方法を示しています。"

msgid ""
"DB_PATH specifies the path of a target database. This command fails if the "
"specified database does not exist."
msgstr ""
"DB_PATHには操作対象のデータベースを指定します。指定したデータベースが存在しな"
"いときは失敗します。"

msgid ""
"If COMMAND is specified, Groonga executes COMMAND and returns the result. "
"Otherwise, Groonga starts in interactive mode that reads commands from the "
"standard input and executes them one by one. This tutorial focuses on the "
"interactive mode."
msgstr ""
"COMMAND が指定された場合、COMMAND を実行した後、実行結果を返します。指定され"
"なかった場合には、対話モードに入ります。対話モードでは、標準入力からコマンド"
"を読み込み、順次実行します。本チュートリアルでは、対話モードを主に使用しま"
"す。"

msgid ""
"Let's see the status of a Groonga process by using a :doc:`/reference/"
"commands/status` command."
msgstr ""
"それでは、 :doc:`/reference/commands/status` コマンドを実行して、Groongaの実"
"行状態を確認してみましょう。"

msgid ""
"As shown in the above example, a command returns a JSON array. The first "
"element contains an error code, execution time, etc. The second element is "
"the result of an operation."
msgstr ""
"以上のように、コマンドの実行結果は基本的にjson形式の配列として返却されます。"
"配列の先頭には、エラーコードや実行時間などの情報が入ります。2番目の要素には、"
"指示された操作の実行結果が入ります。"

msgid "Command format"
msgstr "コマンドの書式"

msgid "Commands for operating a database accept arguments as follows::"
msgstr "データベースを操作するコマンドには、以下の書式で引数を与えます。::"

msgid ""
"In the first form, arguments must be passed in order. This kind of arguments "
"are called positional arguments because the position of each argument "
"determines its meaning."
msgstr ""
"書式1では値を適切な順番で渡す必要があります。このような引数は、位置によって値"
"の意味が決まるため、位置固定引数などと呼ばれることもあります。"

msgid ""
"In the second form, you can specify a parameter name with its value. So, the "
"order of arguments is not defined. This kind of arguments are known as named "
"parameters or keyword arguments."
msgstr ""
"書式2では値を名前と一緒に渡します。そのため、任意の順序で引数を指定することが"
"できます。このような引数は、名前付き引数やキーワード引数と呼ばれることもあり"
"ます。"

msgid ""
"If you want to specify a value which contains white-spaces or special "
"characters, such as quotes and parentheses, please enclose the value with "
"single-quotes or double-quotes."
msgstr ""
"空白や特殊な記号（ダブルクォート、シングルクォート、および丸括弧）を含む値を"
"指定したいときは、シングルクォート(')かダブルクォート(\")で値を囲むようにして"
"ください。"

msgid ""
"For details, see also the paragraph of \"command\" in :doc:`/reference/"
"executables/groonga`."
msgstr ""
"詳しくは、 :doc:`/reference/executables/groonga` のコマンドの項を参考にしてく"
"ださい。"

msgid "Basic commands"
msgstr "主なコマンド"

msgid ":doc:`/reference/commands/status`"
msgstr ""

msgid "shows status of a Groonga process."
msgstr "Groongaプロセスの状態を表示します。"

msgid ":doc:`/reference/commands/table_list`"
msgstr ""

msgid "shows a list of tables in a database."
msgstr "データベースに定義されているテーブルのリストを表示します。"

msgid ":doc:`/reference/commands/column_list`"
msgstr ""

msgid "shows a list of columns in a table."
msgstr "テーブルに定義されているカラムのリストを表示します。"

msgid ":doc:`/reference/commands/table_create`"
msgstr ""

msgid "adds a table to a database."
msgstr "データベースにテーブルを追加します。"

msgid ":doc:`/reference/commands/column_create`"
msgstr ""

msgid "adds a column to a table."
msgstr "テーブルにカラムを追加します。"

msgid ":doc:`/reference/commands/select`"
msgstr ""

msgid "searches records from a table and shows the result."
msgstr "テーブルに含まれるレコードを検索して表示します。"

msgid ":doc:`/reference/commands/load`"
msgstr ""

msgid "inserts records to a table."
msgstr "テーブルにレコードを挿入します。"

msgid "Create a table"
msgstr "テーブルの作成"

msgid "A :doc:`/reference/commands/table_create` command creates a new table."
msgstr ""
":doc:`/reference/commands/table_create` コマンドを使用してテーブルを作成しま"
"す。"

msgid ""
"In most cases, a table has a primary key which must be specified with its "
"data type and index type."
msgstr ""
"Groongaのテーブルには基本的に主キーが必要であり、テーブルを作成する際には型と"
"格納方法も併せて指定する必要があります。"

msgid ""
"There are various data types such as integers, strings, etc. See also :doc:`/"
"reference/types` for more details. The index type determines the search "
"performance and the availability of prefix searches. The details will be "
"described later."
msgstr ""
"型には数値や文字列などがあります。ここではデータの種類を表しているものという"
"程度に考えてください。詳細は :doc:`/reference/types` に記述されています。主"
"キーの格納方法は、主キーを条件とする検索にかかる時間や、前方一致検索の可否な"
"どを左右します。こちらも後で説明します。"

msgid ""
"Let's create a table. The following example creates a table with a primary "
"key. The `name` parameter specifies the name of the table. The `flags` "
"parameter specifies the index type for the primary key. The `key_type` "
"parameter specifies the data type of the primary key."
msgstr ""
"それでは、テーブルを作成してみましょう。以下の例では、主キーのあるテーブルを"
"作成します。 `name` 引数はテーブルの名前を指定します。 `flags` 引数は主キーの"
"格納方法を指定するために使っています。 `key_type` 引数は主キーの型を指定しま"
"す。"

msgid ""
"The second element of the result indicates that the operation succeeded."
msgstr "実行結果の第2要素は、操作が成功したことを示しています。"

msgid "View a table"
msgstr "テーブルの表示"

msgid ""
"A :doc:`/reference/commands/select` command can enumerate records in a table."
msgstr ""
":doc:`/reference/commands/select` コマンドを用いて、テーブルの中身を表示する"
"ことができます。"

msgid ""
"When only a table name is specified with a `table` parameter, a :doc:`/"
"reference/commands/select` command returns the first (at most) 10 records in "
"the table. [0] in the result shows the number of records in the table. The "
"next array is a list of columns. [\"_id\",\"Uint32\"] is a column of UInt32, "
"named _id. [\"_key\",\"ShortText\"] is a column of ShortText, named _key."
msgstr ""
":doc:`/reference/commands/select` にテーブル名のみを指定すると、指定したテー"
"ブルの中身を10件まで表示します。実行結果の[0]はテーブルに含まれるレコードの数"
"を示しています。今回は何も登録されていないため0件です。レコード数の次に表示さ"
"れている配列はテーブルの構成を示しています。[\"_id\",\"Uint32\"]はUInt32型の"
"値を持つ_idという名前のカラム、[\"_key\",\"ShortText\"]はShortText型の値を持"
"つ_keyという名前のカラムをそれぞれ表しています。"

msgid ""
"The above two columns, _id and _key, are the necessary columns. The _id "
"column stores IDs those are automatically allocated by Groonga. The _key "
"column is associated with the primary key. You are not allowed to rename "
"these columns."
msgstr ""
"上記の_idカラムと_keyカラムの2つのカラムは必須のカラムです。_idカラムは"
"Groongaが自動的に割り当てるIDを格納します。_keyカラムは主キーを格納します。こ"
"れらのカラム名を変更することはできません。"

msgid "Create a column"
msgstr "カラムの作成"

msgid ""
"A :doc:`/reference/commands/column_create` command creates a new column."
msgstr ""
":doc:`/reference/commands/column_create` コマンドを用いて、カラムを作成するこ"
"とができます。"

msgid ""
"Let's add a column. The following example adds a column to the Site table. "
"The `table` parameter specifies the target table. The `name` parameter "
"specifies the name of the column. The `type` parameter specifies the data "
"type of the column."
msgstr ""
"それでは、カラムを作成してみましょう。以下の例では、新しいカラムをSiteテーブ"
"ルに追加します。 `table` 引数はテーブルの名前を指定します。 `name` 引数は新し"
"いカラムの名前を指定します。 `type` 引数はカラムに格納する値の型を指定しま"
"す。"

msgid "Load records"
msgstr "データのロード"

msgid ""
"A :doc:`/reference/commands/load` command loads JSON-formatted records into "
"a table."
msgstr ""
":doc:`/reference/commands/load` コマンドは、JSON形式のレコードを受け取り、"
"テーブルに格納します。"

msgid "The following example loads nine records into the Site table."
msgstr "以下の例では9つのレコードをSiteテーブルに格納します。"

msgid ""
"The second element of the result indicates how many records were "
"successfully loaded. In this case, all the records are successfully loaded."
msgstr ""
"実行結果の第2要素はロードされたレコードの数を示しています。上記の操作では、す"
"べてのレコードを問題なくロードできています。"

msgid "Let's make sure that these records are correctly stored."
msgstr "念のため、データが入っていることを確認してみましょう。"

msgid "Get a record"
msgstr "レコードの取得"

msgid ""
"A :doc:`/reference/commands/select` command can search records in a table."
msgstr ""
":doc:`/reference/commands/select` コマンドを用いて、テーブルの中身を表示する"
"ことができます。"

msgid ""
"If a search condition is specified with a `query` parameter, a :doc:`/"
"reference/commands/select` command searches records matching the search "
"condition and returns the matched records."
msgstr ""
"`query` 引数を使って検索条件が指定された場合、 :doc:`/reference/commands/"
"select` コマンドは検索条件に適合するレコードを検索し、検索結果を出力します。"

msgid ""
"Let's get a record having a specified record ID. The following example gets "
"the first record in the Site table. More precisely, the `query` parameter "
"specifies a record whose _id column stores 1."
msgstr ""
"それでは、IDを指定してレコードを取り出してみましょう。以下の例では、Siteテー"
"ブルの先頭レコードを取り出します。正確には、 `query` 引数を使って _id カラム"
"に1が格納されているレコードを要求しています。"

msgid ""
"Next, let's get a record having a specified key. The following example gets "
"the record whose primary key is \"http://example.org/\". More precisely, the "
"`query` parameter specifies a record whose _key column stores \"http://"
"example.org/\"."
msgstr ""
"次に、主キーを指定してレコードを取り出してみましょう。以下の例では、主キーが "
"\"http://example.org/\" のキーを取り出します。正確には、 `query` 引数を使っ"
"て _key カラムに \"http://example.org/\" が格納されているレコードを要求してい"
"ます。"

msgid "Create a lexicon table for full text search"
msgstr "全文検索用の語彙表の作成"

msgid "Let's go on to how to make full text search."
msgstr "そろそろ全文検索の使い方について見ていきましょう。"

msgid ""
"Groonga uses an inverted index to provide fast full text search. So, the "
"first step is to create a lexicon table which stores an inverted index, also "
"known as postings lists. The primary key of this table is associated with a "
"vocabulary made up of index terms and each record stores postings lists for "
"one index term."
msgstr ""
"Groongaでは転置インデックスを使って高速な全文検索を実現しています。そのため、"
"まずは転置インデックスとして用いるテーブルを作成する必要があります。テーブル"
"の内容は、文書に含まれる単語やN-gramなどの索引語を主キーとして、各カラムに索"
"引語の位置情報を格納するという構成になります。結果として、主キーのカラムは全"
"文検索における語彙表の役割を果たします。"

msgid ""
"The following shows a command which creates a lexicon table named Terms. The "
"data type of its primary key is ShortText."
msgstr ""
"以下の例では、Termsという名前のテーブルを転置インデックスの語彙表として作成し"
"ています。索引語を格納するため、主キーの型はShortTextです。"

msgid ""
"The :doc:`/reference/commands/table_create` command takes many parameters "
"but you don't need to understand all of them. Please skip the next paragraph "
"if you are not interested in how it works."
msgstr ""
":doc:`/reference/commands/table_create` には多くの引数が指定されているもの"
"の、本チュートリアルではすべてを理解する必要はありません。以下に簡単な説明を"
"述べますが、読み飛ばしてもらってかまいません。"

msgid ""
"The TABLE_PAT_KEY flag specifies to store index terms in a patricia trie. "
"The KEY_NORMALIZE flag specifies to normalize index terms. In this example, "
"both flags are validated by using a '|'. The `default_tokenizer` parameter "
"specifies the method for tokenizing text. This example uses TokenBigram that "
"is generally called N-gram."
msgstr ""
"TABLE_PAT_KEYフラグは、主キーをパトリシア木に格納することを指示しています。"
"KEY_NORMALIZEフラグは、索引語を正規化して登録することを指示しています。 "
"`default_tokenizer` 引数には、検索対象の文書をトークナイズする方式を指定する"
"ようになっています。上記の例では、一般的にN-gramと呼ばれるインデックス方式に"
"対応するTokenBigramを指定しています。"

msgid "Create an index column for full text search"
msgstr "全文検索用のインデックスカラムの作成"

msgid ""
"The second step is to create an index column, which allows you to search "
"records from its associated column. That is to say this step specifies which "
"column needs an index."
msgstr ""
"次に必要なのは、インデックス型のカラムを作成することです。このカラムは、関連"
"付けられたカラムに対する全文検索に利用されます。つまり、全文検索を行いたいカ"
"ラムに対してインデックスを作成することに相当します。"

msgid ""
"Let's create an index column. The following example creates an index column "
"for a column in the Site table."
msgstr ""
"それでは、インデックスカラムを作成してみましょう。以下の例では、Siteテーブル"
"のカラムに対するインデックスカラムを作成します。それでは、Siteテーブルのtitle"
"カラムを全文検索の対象とするべく、インデックス型のカラムを作成してみましょ"
"う。"

msgid ""
"The `table` parameter specifies the index table and the `name` parameter "
"specifies the index column. The `type` parameter specifies the target table "
"and the `source` parameter specifies the target column. The COLUMN_INDEX "
"flag specifies to create an index column and the WITH_POSITION flag "
"specifies to create a full inverted index, which contains the positions of "
"each index term. This combination, COLUMN_INDEX|WITH_POSITION, is "
"recommended for the general purpose."
msgstr ""
"`table` 引数は語彙表を指定し、 `name` 引数はインデックスカラムを指定します。"
"また、 `type` 引数はインデックスの対象となるテーブルを指定し、 `source` 引数"
"はインデックスの対象となるカラムを指定します。COLUMN_INDEXフラグはインデック"
"スカラムの作成を指示し、WITH_POSITIONフラグは各索引語の位置情報をインデックス"
"に含めることを指示します。一般的な全文検索インデックスを作成したいときは、"
"COLUMN_INDEX|WITH_POSITIONを指定してください。索引語の位置情報については、本"
"チュートリアルでは触れません。"

msgid ""
"You can create a lexicon table and index columns before/during/after loading "
"records. If a target column already has records, Groonga creates an inverted "
"index in a static manner. In contrast, if you load records into an already "
"indexed column, Groonga updates the inverted index in a dynamic manner."
msgstr ""
"語彙表とインデックスカラムを作成するタイミングは、データをロードする前後のど"
"ちらでも問題ありません。データをロードした後でインデックスを作成し、さらに新"
"しいデータをロードすることもできます。インデックスの作成を指示したタイミング"
"でレコードが既に存在するときは、静的にインデックスを作成します。一方、イン"
"デックスを作成した後で追加されたレコードについては、動的にインデックスを更新"
"します。"

msgid "Full text search"
msgstr "全文検索"

msgid ""
"It's time. You can make full text search with a :doc:`/reference/commands/"
"select` command."
msgstr ""
"インデックスを作成したことにより、 :doc:`/reference/commands/select` コマンド"
"による全文検索が可能になります。"

msgid ""
"A query for full text search is specified with a `query` parameter. The "
"following example searches records whose \"title\" column contains \"this\". "
"The '@' specifies to make full text search. Note that a lower case query "
"matches upper case and capitalized terms in a record if KEY_NORMALIZE was "
"specified when creating a lexcon table."
msgstr ""
"全文検索のクエリは `query` 引数により指定することができます。以下の例では、"
"titleカラムに \"this\" という文字列が含まれているレコードを検索します。 "
"`query` 引数に含まれる '@' は、全文検索を指示しています。語彙表の作成におい"
"て KEY_NORMALIZE フラグを指定したときは、全角・半角や大文字・小文字などの違い"
"が吸収されることに注意してください。"

msgid ""
"In this example, the first record matches the query because its title "
"contains \"This\", that is the capitalized form of the query."
msgstr ""
"上記の例では、\"This\" という単語を含む先頭レコードのみが検索条件に適合しま"
"す。"

msgid ""
"A :doc:`/reference/commands/select` command accepts an optional parameter, "
"named `match_columns`, that specifies the default target columns. This "
"parameter is used if target columns are not specified in a query. [#]_"
msgstr ""
":doc:`/reference/commands/select` コマンドには、 `match_columns` という引数が"
"存在します。このパラメータはデフォルトで検索対象にするカラムを指定するもの"
"で、カラム名を指定しない検索条件にのみ適用されます。 [1]_"

msgid ""
"The combination of \"`--match_columns` title\" and \"`--query` this\" brings "
"you the same result that \"`--query` title:@this\" does."
msgstr ""
"\"`--match_columns` title\" と \"`--query` this\" の組み合わせを指定すると、 "
"\"`--query` title:@this\" を指定したときと同じ検索条件になります。"

msgid "Specify output columns"
msgstr "出力カラムの指定"

msgid ""
"An `output_columns` parameter of a :doc:`/reference/commands/select` command "
"specifies columns to appear in the search result. If you want to specify "
"more than one columns, please separate column names by commas (',')."
msgstr ""
":doc:`/reference/commands/select` コマンドにおいて `output_columns` 引数を用"
"いることで、検索結果に含めるカラムを指定することができます。複数のカラムを指"
"定するときは、カンマ（,）区切りでカラムを列挙します。"

msgid ""
"This example specifies three output columns including the _score column, "
"which stores the relevance score of each record."
msgstr ""
"上記の例では、_scoreカラムを含む3つのカラムを指定しています。_scoreカラムは"
"Groongaの検索結果に含まれるカラムであり、全文検索の条件に合致するレコードほど"
"高い数値が入ります。"

msgid "Specify output ranges"
msgstr "表示範囲指定"

msgid ""
"A :doc:`/reference/commands/select` command returns a part of its search "
"result if `offset` and/or `limit` parameters are specified. These parameters "
"are useful to paginate a search result, a widely-used interface which shows "
"a search result on a page by page basis."
msgstr ""
":doc:`/reference/commands/select` コマンドにおいて `offset` 引数と `limit` 引"
"数を用いることで、検索結果の一部のみを表示することができます。大量の検索結果"
"を分割してページ単位で表示したい場合などに有用です。"

msgid ""
"An `offset` parameter specifies the starting point and a `limit` parameter "
"specifies the maximum number of records to be returned. If you need the "
"first record in a search result, the offset parameter must be 0 or omitted."
msgstr ""
"`offset` 引数には、検索結果における始点を指定します。検索結果の1件目が必要な"
"場合、 `offset` 引数を省略するか、0を指定するようにしてください。 `limit` 引"
"数には、検索結果の表示件数を指定します。"

msgid "Sort a search result"
msgstr "検索結果の並べ替え"

msgid ""
"A :doc:`/reference/commands/select` command sorts its result when used with "
"a `sortby` parameter."
msgstr ""
":doc:`/reference/commands/select` コマンドに `sortby` 引数を渡すことにより、"
"検索結果を並べ替えることができます。"

msgid ""
"A `sortby` parameter specifies a column as a sorting creteria. A search "
"result is arranged in ascending order of the column values. If you want to "
"sort a search result in reverse order, please add a leading hyphen ('-') to "
"the column name in a parameter."
msgstr ""
"`sortby` 引数には、整列の基準として用いるカラムを指定します。検索結果は指定し"
"たカラムの値が昇順になるように並べ替えられます。 `sortby` 引数の中でカラム名"
"の前にハイフン（-）を付けることにより、降順に並べ替えることもできます。"

msgid "The following example shows records in the Site table in reverse order."
msgstr "以下の例では、Siteテーブルのレコードを逆順に表示しています。"

msgid ""
"The next example uses the _score column as the sorting criteria for ranking "
"the search result. The result is sorted in relevance order."
msgstr ""
"次の例では、_scoreカラムを整列の基準とすることにより、検索結果のランキングを"
"おこなっています。検索結果はクエリとの関連性が高い順に並べ替えられます。"

msgid ""
"If you want to specify more than one columns, please separate column names "
"by commas (','). In such a case, a search result is sorted in order of the "
"values in the first column, and then records having the same values in the "
"first column are sorted in order of the second column values."
msgstr ""
"整列の基準となるカラムを複数指定したいときは、カンマ（,）区切りでカラムを列挙"
"します。複数のカラムを指定したときは、最初のカラムを基準として整列した後、最"
"初のカラムに同じ値が格納されているレコードを次のカラムを基準として整列しま"
"す。"

msgid "footnote"
msgstr "脚注"

msgid ""
"Currently, a `match_columns` parameter is available iff there exists an "
"inverted index for full text search. A `match_columns` parameter for a "
"regular column is not supported."
msgstr ""
"現在のバージョンでは、全文検索インデックスが存在する場合にのみ、 "
"`match_columns` 引数を利用することができます。通常のカラムでの絞り込みには利"
"用できません。"

msgid "全文検索の語彙表に対する追加情報"
msgstr ""

msgid ""
"Groongaでは、全文検索に用いるための語意表がテーブルとして扱えます。よって、語"
"彙ごとに複数の情報を保持することができます。例えば、語彙の出現数や検索ストッ"
"プワードのフラグ、単語の重要度などを保持することができます。"
msgstr ""

msgid "この項目については、現在執筆中です。"
msgstr ""

msgid "match_columnsパラメータ"
msgstr ""

msgid "複数のカラムを対象とした全文検索"
msgstr ""

msgid ""
"Groongaでは、複数のカラムを対象とした全文検索を行うことができます。例えば、ブ"
"ログのテーブルで、タイトルと内容とがそれぞれ別のカラムに入ったものがあるとし"
"ましょう。「タイトルもしくは内容に特定の単語を含む」検索を行いたいとします。"
msgstr ""

msgid ""
"この場合、2つのインデックス作成方式があります。1つは、それぞれのカラムに1つず"
"つインデックスを付与する方式です。もう1つは、複数のカラムに対して1つのイン"
"デックスを付与する方式です。Groongaでは、どちらの形式のインデックスが存在して"
"いる場合でも、同一の記法で全文検索を行うことができます。"
msgstr ""

msgid "カラムごとにインデックスを付与する場合"
msgstr ""

msgid ""
"Blog1テーブルを作り、タイトル文字列のtitleカラム、本文のmessageカラムを追加し"
"ています。 インデックス用のIndexBlog1テーブルも作り、titleカラムのインデック"
"ス用にindex_titleカラム、messageカラムのインデック用にindex_messageカラムと、"
"それぞれ1カラムごとに1つずつ追加しています。"
msgstr ""

msgid ""
"match_columnsオプションで、検索対象のカラムを複数指定することが出来ます。検索"
"する文字列はqueryオプションで指定します。これを使うことで、タイトルと本文を全"
"文検索することができます。"
msgstr ""

msgid "実際に検索してみましょう。"
msgstr ""

msgid "複数のカラムにまたがったインデックスを付与する場合"
msgstr ""

msgid ""
"内容は上の例とほぼ同じですが、titleとmessageの2つのカラムに対するインデックス"
"が共通になっており、インデックスカラムが1つしかありません。"
msgstr ""

msgid ""
"共通のインデックスを用いても、titleカラムのみでの検索、messageカラムのみでの"
"検索、titleもしくはmessageカラムでの検索、全ての検索を行うことができます。"
msgstr ""

msgid "実際に検索してみましょう。結果は上の例と同じになります。"
msgstr ""

msgid ""
"There may be a question that \"which is the better solution for indexing.\" "
"It depends on the case."
msgstr ""
"\"インデックスはどちらがよい方法なのか\"と疑問に思うかも知れません。それは場"
"合によります。"

msgid ""
"Indexes for each column - The update performance tends to be better than "
"multiple colum index because there is enough buffer for updating. On the "
"other hand, the efficiency of disk usage is not so good."
msgstr ""
"カラムごとのインデックス - マルチカラムインデックスよりも更新性能が良い傾向が"
"あります。一方、ディスク使用効率はあまり良くありません。"

msgid ""
"Indexes for multiple column - It saves disk usage because it shares common "
"buffer. On the other hand, the update performance is not so good."
msgstr ""
"マルチカラムインデックス - バッファを共有するためディスク使用効率が良いです。"
"一方、更新性能があまり良くありません。"

msgid "インデックス名を指定した全文検索"
msgstr ""

msgid "執筆中です。"
msgstr ""

msgid "Nested index search among related table by column index"
msgstr "カラムインデックスによる関連テーブルをまたぐ検索"

msgid ""
"If there are relationships among multiple table with column index, you can "
"search multiple table by specifying reference column name."
msgstr ""
"複数のテーブルがカラムインデックスで関連付けられているなら、参照カラム名を指"
"定して複数のテーブルにまたがって検索することができます。"

msgid "Here is the concrete example."
msgstr "具体的な例を示します。"

msgid ""
"There are tables which store blog articles, comments for articles. The table "
"which stores articles has columns for article and comment. And the comment "
"column refers Comments table. The table which stores comments has columns "
"for comment and column index to article table."
msgstr ""
"ブログ記事や記事のコメントを保存するテーブルがあります。記事を保存するテーブ"
"ルには記事とコメントのためのカラムがあります。そしてそのコメントカラムは"
"Commentsテーブルを参照しています。コメントを保存するテーブルにはコメントと記"
"事テーブルに対するカラムインデックスが設定されています。"

msgid ""
"if you want to search the articles which contain specified keyword in "
"comment, you need to execute fulltext search for table of comment, then "
"search the records which contains fulltext search results."
msgstr ""
"特定のキーワードをコメントに含む記事を探すには、コメントテーブルを全文検索す"
"る必要があり、全文検索結果を含むレコードをさらに検索する必要があります。"

msgid ""
"But, you can search the records by specifying the reference column index at "
"once."
msgstr ""
"しかし、カラムインデックスを指定することで一度にレコードを検索することができ"
"ます。"

msgid "Here is the sample schema."
msgstr "サンプルのスキーマ定義はこちらです。"

msgid "Here is the sample data."
msgstr "サンプルデータはこちらです。"

msgid ""
"You can write the query that search the records which contains specified "
"keyword as a comment, then fetch the articles which refers to it."
msgstr ""
"特定のキーワードをコメントに含むレコードを検索するクエリを書くことができ、そ"
"れによりレコードを参照する記事を取得します。"

msgid "Query for searching the records described above::"
msgstr "これまでに記述したレコードを検索するクエリ::"

msgid ""
"You need to concatenate comment column of Articles table and content column "
"of Comments table with period(.) as --match_columns arguments."
msgstr ""
"ArticlesテーブルのcommentカラムとCommentsテーブルのcontentカラムをピリオド(.)"
"で連結し ``--match_columns`` の引数とする必要があります。"

msgid ""
"At first, this query execute fulltext search from content of Comments table, "
"then fetch the records of Articles table which refers to already searched "
"records of Comments table. (Because of this, if you comment out the query "
"which create column index 'article' of Comments table, you can't get "
"intended search results.)"
msgstr ""
"最初に、このクエリはCommentsテーブルのcontentを全文検索し、次にCommentsテーブ"
"ルを検索した結果のレコードを参照するArticlesテーブルのレコードを取得します。"
"(これにより、Commentsテーブルの'article'カラムインデックスを生成するクエリを"
"コメントアウトすると、意図した検索結果が得られません。)"

msgid ""
"Now, you can search articles which contains specific keywords as a comment."
msgstr "これで、特定のキーワードをコメントとして含む記事を検索できます。"

msgid ""
"The feature of nested index search is not limited to the relationship "
"between two table only."
msgstr ""
"このネストしたインデックスの検索という特徴には関連するテーブルが2つだけに制限"
"されません。"

msgid ""
"Here is the sample schema similar to previous one. The difference is added "
"table which express 'Reply' and relationship is extended to three tables."
msgstr ""
"前のものと似たサンプルのスキーマ定義です。違いは'返信'を表現するテーブルの追"
"加と関連するテーブルが3つに増えたことです。"

msgid ""
"The first query searches 'mroonga' from Comments2 table, the second one "
"searches 'mroonga' from Replies2 and Comment2 table by using reference "
"column index."
msgstr ""
"最初のクエリはComments2テーブルから'mroonga'を検索します。2つめのクエリは"
"Replies2とComments2テーブルからカラムインデックスによる参照を用い"
"て'mroonga'を検索します。"

msgid ""
"As a result, the first query matches two article because of Comments2 table "
"has two records which contains 'mroonga' as keyword."
msgstr ""
"結果として、最初のクエリはComments2テーブルに'mroonga'をキーワードとして含む"
"レコードが2つあるので、該当する記事2つにマッチします。"

msgid ""
"On the other hand, the second one matches one article only because of "
"Replies2 table has only one record which contains 'mroonga' as keyword, and "
"there is one record which contains same keyword and refers to the record in "
"Comments2 table."
msgstr ""
"一方、2つめのクエリはReplies2テーブルに'mroonga'というキーワードにマッチする"
"レコードが1つしかなく、Comments2テーブルでそのキーワードを含むレコードを参照"
"するコメントが1つなので、該当する記事は1つだけとなります。"

msgid "インデックスの重み"
msgstr ""

msgid "マイクロブログ検索システムの作成"
msgstr ""

msgid ""
"これまで学んだGroongaの機能を用いて、マイクロブログの検索システムを作成してみ"
"ましょう。マイクロブログとは、Twitterのような短いメッセージを投稿するブログで"
"す。"
msgstr ""

msgid "テーブルの作成"
msgstr ""

msgid "まずは、テーブルを作成します。"
msgstr ""

msgid "Usersテーブル"
msgstr ""

msgid ""
"ユーザーの名前や自己紹介文、フォローしているユーザー一覧など、ユーザー情報を"
"格納するためのテーブルです。"
msgstr ""

msgid "``_key``"
msgstr ""

msgid "ユーザーID"
msgstr ""

msgid "``name``"
msgstr ""

msgid "ユーザー名"
msgstr ""

msgid "``follower``"
msgstr ""

msgid "フォローしているユーザーの一覧"
msgstr ""

msgid "``favorites``"
msgstr ""

msgid "お気に入りのコメント一覧"
msgstr ""

msgid "``location``"
msgstr ""

msgid "ユーザーの現在地（緯度経度座標）"
msgstr ""

msgid "``location_str``"
msgstr ""

msgid "ユーザーの現在地（文字列）"
msgstr ""

msgid "``description``"
msgstr ""

msgid "ユーザーの自己紹介"
msgstr ""

msgid ""
"Usersテーブルのfollowerカラムに対するインデックス。 このインデックスを作るこ"
"とで、あるユーザーをフォローしているユーザーを検索できるようになります。"
msgstr ""

msgid "``followee``"
msgstr ""

msgid "Commentsテーブル"
msgstr ""

msgid ""
"コメント内容や投稿日時、返信先情報など、コメントに関する内容を格納するテーブ"
"ルです。"
msgstr ""

msgid "コメントID"
msgstr ""

msgid "``comment``"
msgstr ""

msgid "コメント内容"
msgstr ""

msgid "``last_modified``"
msgstr ""

msgid "投稿日時"
msgstr ""

msgid "``replied_to``"
msgstr ""

msgid "返信元のコメント内容"
msgstr ""

msgid "``replied_users``"
msgstr ""

msgid "返信先のユーザーの一覧"
msgstr ""

msgid "``hash_tags``"
msgstr ""

msgid "コメントのハッシュタグの一覧"
msgstr ""

msgid "投稿場所(緯度経度座標のため)"
msgstr ""

msgid "``posted_by``"
msgstr ""

msgid "コメントを書いたユーザー"
msgstr ""

msgid ""
"Usersテーブルのfavoritesカラムに対するインデックス。 このインデックスを作るこ"
"とで、指定したコメントを誰がお気に入りに入れているのかを検索できるようになり"
"ます。"
msgstr ""

msgid "``favorited_by``"
msgstr ""

msgid "HashTagsテーブル"
msgstr ""

msgid "コメントのハッシュタグを一覧で保存するためのテーブルです。"
msgstr ""

msgid "ハッシュタグ"
msgstr ""

msgid ""
"「Comments.hash_tags」のインデックス。 このインデックスを作ることで、指定した"
"ハッシュタグのついているコメントの一覧を出すことが出来るようになります。"
msgstr ""

msgid "``hash_index``"
msgstr ""

msgid "Bigramテーブル"
msgstr ""

msgid ""
"ユーザー情報・コメントで全文検索が出来るようにするためのインデックスを格納す"
"るテーブルです。"
msgstr ""

msgid "単語"
msgstr ""

msgid ""
"ユーザー情報のインデックス。 このカラムは、ユーザー名「Users.name」、現在地"
"「Users.location_str」、自己紹介文「Users.description」のインデックスになって"
"います。"
msgstr ""

msgid "``users_index``"
msgstr ""

msgid "``comment_index``"
msgstr ""

msgid "コメント内容「Comments.comment」のインデックス"
msgstr ""

msgid "GeoIndex table"
msgstr "GeoIndexテーブル"

msgid ""
"This is the table which stores indexes of location column to search geo "
"location effectively."
msgstr ""
"位置情報検索を効果的に行うための locationカラムのインデックスを保持するテーブ"
"ルです。"

msgid "Indexes of location column for Users table"
msgstr "Usersテーブルのlocationカラムに対するインデックス"

msgid "``users_location``"
msgstr ""

msgid "Indexes of location column for Comments table"
msgstr "Commentsテーブルのlocationカラムに対するインデックス"

msgid "``comments_location``"
msgstr ""

msgid "データのロード"
msgstr ""

msgid "つづいて、テスト用データをロードします。"
msgstr ""

msgid ""
"Usersテーブルのfollowerカラムとfavoritesカラム、そしてCommentsテーブルの"
"replied_usersカラムは、ベクターカラムです。そのため、これらのカラムは配列で値"
"を指定します。"
msgstr ""

msgid ""
"Usersテーブルのlocationカラムと、Commentsテーブルのlocationカラムは、GeoPoint"
"型です。この型での値の指定は、\"[緯度]x[経度]\"と記述して指定します。"
msgstr ""

msgid ""
"Commentsテーブルのlast_modifiedカラムは、Time型です。この型での値を指定する方"
"法は2つあります。 1つ目の方法は、1970年1月1日0時0分0秒からの経過秒数の値を直"
"接指定する方法です。このとき、小数部分を指定することでマイクロ秒数での指定が"
"可能です。指定した値は、データのロードの際にマイクロ秒を単位とする整数値に変"
"換後、格納されます。 2つ目の方法は、文字列で日時と時刻を指定する方法で"
"す。\"年/月/日 時:分:秒\"というフォーマットで記述することで、データロードの際"
"に文字列からキャストされ、マイクロ秒数の値が格納されます。"
msgstr ""

msgid "検索"
msgstr ""

msgid "それでは、実際に検索をしてみましょう。"
msgstr ""

msgid "キーワードでユーザー検索"
msgstr ""

msgid ""
"ここでは、 :doc:`match_columns` で扱った、複数カラムを対象とした検索を行いま"
"す。 指定された文字列で、ユーザー名・現在地・自己紹介文を対象に検索をします。"
msgstr ""

msgid ""
"「東京」をキーワードにユーザー検索した結果、東京都に住んでいる「グニャラく"
"ん」と「OffGao」がヒットしました。"
msgstr ""

msgid "GeoPointでユーザー検索"
msgstr ""

msgid ""
"ここでは、 :doc:`search` で扱った、GeoPoint型のカラムで検索をします。 以下の"
"例では、指定された位置から5000m以内にいるユーザーを検索しています。"
msgstr ""

msgid ""
"新宿駅から5km以内にすんでいるユーザーを検索したところ、「グニャラくん」と"
"「OffGao」がヒットしました。"
msgstr ""

msgid "あるユーザーをフォローしているユーザーの検索"
msgstr ""

msgid ""
"ここでは、 :doc:`index` で扱った、参照関係の逆引きをします。 以下の例では、"
"Usersテーブルのfollowerカラムにあるフォローリストを逆引きします。"
msgstr ""

msgid ""
"「グニャラくん」をフォローしている「hsiomaneki」と「OffGao」がヒットしまし"
"た。"
msgstr ""

msgid "GeoPointでコメント検索"
msgstr ""

msgid ""
"ある範囲内で書かれたコメントを検索します。 また、 :doc:`drilldown` で扱ったド"
"リルダウンも行います。検索結果をハッシュタグとユーザーでドリルダウンし、ユー"
"ザー別・ハッシュタグ別のカウントを出します。"
msgstr ""

msgid ""
"範囲を広く指定したため、位置情報のあるすべてのコメントがヒットしました。そし"
"て、ヒットしたコメントからドリルダウンされた結果も返ってきており、ハッシュタ"
"グは「#groonga」が2つに「#travel」が1つ、投稿者は「グニャラくん」「OffGao」が"
"それぞれ2件ずつであることがわかります。"
msgstr ""

msgid "キーワードでコメント検索"
msgstr ""

msgid ""
"あるキーワードを含むコメントを検索します。 さらに、 :doc:`search` で扱った、"
"スコア値_scoreも出してみましょう。"
msgstr ""

msgid ""
"「なう」をキーワードにコメント検索した結果、2件のコメントがヒットしました。ま"
"た、_scoreの値も返ってきており、「なう」の数が出力されていることが確認できま"
"す。"
msgstr ""

msgid "GeoPointとキーワードでコメント検索"
msgstr ""

msgid ""
"今度は、キーワードとGeoPointの両方を条件に検索をしてみます。--queryと--filter"
"の両方を使用した場合、両方の条件に一致するレコードがヒットします。"
msgstr ""

msgid ""
"両方の条件を満たすコメントが1件ヒットしました。また、ドリルダウンの結果も返っ"
"てきており、「グニャラくん」のコメント1件であることがわかります。"
msgstr ""

msgid "ハッシュタグでコメント検索"
msgstr ""

msgid ""
"あるハッシュタグのついているコメントを検索します。 これも、 :doc:`index` で"
"扱った、参照関係の逆引きを使います。"
msgstr ""

msgid ""
"#groongaタグの付いている2件のコメントがヒットしました。また、投稿者のドリルダ"
"ウンも返ってきており、2件とも「グニャラくん」のものであることがわかります。"
msgstr ""

msgid "ユーザーIDでコメント検索"
msgstr ""

msgid "あるユーザーが投稿したコメントを検索します。"
msgstr ""

msgid ""
"「グニャラくん」が書き込んだ4件のコメントがヒットしました。また、ハッシュタグ"
"でドリルダウンした結果も返ってきており、ハッシュタグは「#groonga」が2つに"
"「#travel」が1つあることがわかります。"
msgstr ""

msgid "ユーザーのお気に入りコメントを検索"
msgstr ""

msgid "あるユーザーがお気に入りに入れているコメントを検索します。"
msgstr ""

msgid "「グニャラくん」がお気に入りに入れている2件のコメントがヒットしました。"
msgstr ""

msgid "投稿時間でコメント検索"
msgstr ""

msgid ""
"コメントの投稿時間で検索をします。Time型については :doc:`data` で扱っていま"
"す。 この例では、指定した時間よりも前に投稿されているコメントを検索します。"
msgstr ""

msgid ""
"2010/03/17 14:00:00以前に書かれたコメント5件がヒットしました。また、ドリルダ"
"ウンの結果も返ってきており、「hsiomaneki」が2件、「グニャラくん」が3件ヒット"
"していることがわかります。"
msgstr ""

msgid "Remote access"
msgstr "リモートアクセス"

msgid ""
"You can use Groonga as a server which allows remote access. Groonga supports "
"the original protocol (GQTP), the memcached binary protocol and HTTP."
msgstr ""
"Groongaをサーバとして起動することにより、ネットワークを介してデータベースにア"
"クセスできるようになります。groongaがサポートしているプロトコルは、Groongaの"
"専用プロトコルであるGQTP、memcachedバイナリプロトコル、HTTPの三種類です。"

msgid "Groonga Query Transfer Protocol (GQTP)"
msgstr "Groonga専用プロトコル（GQTP）"

msgid "How to run a GQTP server"
msgstr "GQTPサーバの起動"

msgid ""
"Groonga has a special protocol, named Groonga Query Transfer Protocol "
"(GQTP), for remote access to a database. The following form shows how to run "
"Groonga as a GQTP server."
msgstr ""
"Groongaには、専用のプロトコルであるGQTPが存在します。GQTPを用いることにより、"
"データベースへとリモートアクセスすることができます。以下の書式はGQTPサーバの"
"起動方法を示しています。"

msgid ""
"The `-s` option specifies to run Groonga as a server. DB_PATH specifies the "
"path of the existing database to be hosted. The `-p` option and its "
"argument, PORT_NUMBER, specify the port number of the server. The default "
"port number is 10043, which is used when you don't specify PORT_NUMBER."
msgstr ""
"`-s` オプションはGroongaをサーバとして起動するためのオプションです。DB_PATHに"
"は既存のデータベースのパスを指定します。 `-p` オプションとその引数により、"
"サーバのポート番号を指定することができます。ポート番号を省略した場合は10043が"
"使用されます。"

msgid ""
"The following command runs a server that listens on the default port number. "
"The server accepts operations to the specified database."
msgstr ""
"以下のコマンドにより、デフォルトのポート番号で待ち受けるサーバを起動すること"
"ができます。サーバは指定されたデータベースへの操作を受け付けます。"

msgid "How to run a GQTP daemon"
msgstr "GQTPデーモンの起動"

msgid ""
"You can also run a GQTP server as a daemon by using the `-d` option, instead "
"of the `-s` option."
msgstr ""
"GQTPサーバはデーモンとして起動することができます。オプションとして、 `-s` の"
"代わりに `-d` を与えてください。"

msgid ""
"A Groonga daemon prints its process ID as follows. In this example, the "
"process ID is 12345. Then, the daemon opens a specified database and accepts "
"operations to that database."
msgstr ""
"Groongaをデーモンとして起動したときは、デーモンのプロセスIDが表示されます。以"
"下の例では、12345というプロセスIDが表示されています。サーバとして起動した場合"
"と同様に、指定されたデータベースへの操作を受け付けます。"

msgid "How to run a GQTP client"
msgstr "GQTPサーバへの接続"

msgid "You can run Groonga as a GQTP client as follows:"
msgstr "GQTPサーバに接続するクライアントは、以下のように起動します。"

msgid ""
"This command establishes a connection with a GQTP server and then enters "
"into interactive mode. HOST_NAME_OR_IP_ADDRESS specifies the hostname or the "
"IP address of the server. If not specified, Groonga uses the default "
"hostname \"localhost\". The `-p` option and its argument, PORT_NUMBER, "
"specify the port number of the server. If not specified, Groonga uses the "
"default port number 10043."
msgstr ""
"上記のコマンドによって起動されたクライアントは、サーバとの接続に成功すると対"
"話モードに入ります。HOST_NAME_OR_IP_ADDRESSにはサーバのホスト名もしくはIPアド"
"レスを指定します。HOST_NAME_OR_IP_ADDRESSが省略されたときは\"localhost\"を"
"サーバのホスト名として採用します。また、 `-p` オプションとその引数により、"
"サーバのポート番号を指定することができます。ポート番号を省略した場合は10043が"
"使用されます。"

msgid ""
"In interactive mode, Groonga reads commands from the standard input and "
"executes them one by one."
msgstr "対話モードでは、標準入力からコマンドを読み込んで順次実行します。"

msgid "How to terminate a GQTP server"
msgstr "GQTPサーバの終了"

msgid ""
"You can terminate a GQTP server with a :doc:`/reference/commands/shutdown` "
"command."
msgstr ""
"GQTPサーバを終了する安全は方法は、クライアントを起動して :doc:`/reference/"
"commands/shutdown` を発行することです。"

msgid "Memcached binary protocol"
msgstr "memcachedバイナリプロトコル"

msgid ""
"Groonga supports the memcached binary protocol. The following form shows how "
"to run Groonga as a memcached binary protocol server daemon."
msgstr ""
"Groongaはmemcachedバイナリプロトコルをサポートしています。以下の書式は"
"memcachedバイナリプロトコルのサーバをデーモンとして起動する方法を示していま"
"す。"

msgid ""
"The `--protocol` option and its argument specify the protocol of the server. "
"\"memcached\" specifies to use the memcached binary protocol."
msgstr ""
"`--protocol` オプションとその引数により、サーバのプロトコルを指定することがで"
"きます。\"memcached\"はmemcachedバイナリプロトコルを示しています。"

msgid "Hypertext transfer protocol (HTTP)"
msgstr "HTTP"

msgid "How to run an HTTP server"
msgstr "HTTPサーバの起動"

msgid ""
"Groonga supports the hypertext transfer protocol (HTTP). The following form "
"shows how to run Groonga as an HTTP server daemon."
msgstr ""
"GroongaはHTTPをサポートしています。以下の書式はHTTPサーバをデーモンとして起動"
"する方法を示しています。"

msgid ""
"The `--protocol` option and its argument specify the protocol of the server. "
"\"http\" specifies to use HTTP. If the `-p` option is not specified, Groonga "
"uses the default port number 10041."
msgstr ""
"`--protocol` オプションとその引数により、サーバのプロトコルを指定することがで"
"きます。\"http\"はHTTPサーバの起動を指示しています。"
"`-p` オプションを省略した場合は10041のポート番号が使用されます。"

msgid ""
"The following command runs an HTTP server that listens on the port number 80."
msgstr ""
"以下のコマンドは、ポート番号80で待ち受けるHTTPサーバをデーモンとして起動しま"
"す。"

msgid ""
"You must have root privileges if you listen on the port number 80 (well "
"known port). There is no such a limitation about the port number 1024 or "
"over."
msgstr ""
"80番ポートで待ち受けるにはroot権限が必須です。1024番以降のポート番号にはその"
"ような制限はありません。"

msgid "How to send a command to an HTTP server"
msgstr "HTTPサーバへのコマンド送信"

msgid ""
"You can send a command to an HTTP server by sending a GET request to /d/"
"COMMAND_NAME. Command parameters can be passed as parameters of the GET "
"request. The format is \"?NAME_1=VALUE_1&NAME_2=VALUE_2&...\"."
msgstr ""
"GroongaがHTTPサーバとして起動されているときは、/d/COMMAND_NAME というURLにア"
"クセスすることにより、コマンドを実行することができます。コマンドの引数は、"
"HTTPのGETパラメータとして渡します。引数の書式は \"?"
"NAME_1=VALUE_1&NAME_2=VALUE_2&...\" となります。"

msgid "The following example shows how to send commands to an HTTP server."
msgstr "以下の例は、HTTPサーバに対するコマンドの送り方を示しています。"

msgid "Administration tool (HTTP)"
msgstr "ブラウザベースの管理ツール"

msgid ""
"An HTTP server of Groonga provides a browser based administration tool that "
"makes database management easy. After starting an HTTP server, you can use "
"the administration tool by accessing http://HOST_NAME_OR_IP_ADDRESS[:"
"PORT_NUMBER]/. Note that Javascript must be enabled for the tool to work "
"properly."
msgstr ""
"GroongaをHTTPサーバとして起動しているときは、ブラウザベースの管理ツールを使う"
"ことにより、データベースを簡単に管理することができます。管理ツールを使いたい"
"ときは、ブラウザを使って http://HOST_NAME_OR_IP_ADDRESS[:PORT_NUMBER]/ へとア"
"クセスしてください。管理ツールの使用には、JavaScriptの実行が有効になっている"
"必要があります。"

msgid "Security issues"
msgstr "セキュリティ"

msgid ""
"Groonga servers don't support user authentication. Everyone can view and "
"modify databases hosted by Groonga servers. You are recommended to restrict "
"IP addresses that can access Groonga servers. You can use iptables or "
"similar for this purpose."
msgstr ""
"Groongaのサーバには認証機能がありません。誰でもデータベースの内容を閲覧・修正"
"することができます。iptablesなどを用いてアクセス元IPアドレスを制限することを"
"推奨します。"

msgid "パトリシア木による前方一致検索"
msgstr ""

msgid ""
"Groongaのテーブルは、テーブル作成時にパトリシア木オプションを指定すると、前方"
"一致検索を行うことができます。また、追加のオプションを指定することにより、主"
"キーの後方一致検索をも行うことができます。"
msgstr ""

msgid "主キーによる前方一致検索"
msgstr ""

msgid ""
"table_createコマンドのflagsオプションにTABLE_PAT_KEYを指定することで、主キー"
"による前方一致検索ができるようになります。"
msgstr ""

msgid "主キーによる後方一致検索"
msgstr ""

msgid ""
"table_createコマンドのflagsオプションにTABLE_PAT_KEYとKEY_WITH_SISを指定する"
"ことで、主キーによる前方一致検索・後方一致検索の両方が可能となります。"
msgstr ""

msgid ""
"KEY_WITH_SISフラグを付与すると、データを追加する際に後方一致用のレコードも追"
"加されてしまいます。そのため、単純に検索すると、元のレコードに加えて自動的に"
"追加されたレコードまでヒットしてしまいます。元のレコードのみ検索するために、"
"一工夫必要になります。"
msgstr ""

msgid ""
"例えば、元のレコードと自動的に追加されたレコードとの区別をつけるために、元の"
"レコードであることを示すoriginalカラムを追加して、検索時にはoriginalカラムが "
"``true`` も検索条件に加えます。 ``--query`` オプションでは ``Bool`` 型の値を"
"直感的に指定することができないので ``--filter`` オプションを使っていることに"
"注意してください。"
msgstr ""

msgid "クエリ拡張"
msgstr ""

msgid ""
"Groongaでは、 :doc:`/reference/commands/select` コマンドにquery_expanderパラ"
"メータを指定することによって、ユーザが指定した検索文字列を適宜拡張することが"
"可能です。"
msgstr ""

msgid ""
"たとえば、ユーザが'シークヮーサー'という文字列で検索した場合に、'シークヮー"
"サー OR シークァーサー'で検索した場合と同一の結果を返すことによって、本来ユー"
"ザが必要とする結果をよりもれなく検索できるようになります。"
msgstr ""

msgid "準備"
msgstr ""

msgid ""
"クエリ拡張機能を使用するためには、検索対象となる文書を格納するテーブル(ここで"
"は文書テーブルと呼びます)以外に、ユーザの指定した検索文字列を置換するための"
"テーブル(ここでは置換テーブルと呼びます)を準備します。置換テーブルでは、その"
"主キーが置換前の文字列となり、文字列型(ShortText)のカラムの値が置換後の文字列"
"となります。"
msgstr ""

msgid ""
"TODO: 文字列型のベクターカラムでも可能であり、その場合は各要素をORでつなげた"
"ものに置換されるということを記述する。"
msgstr ""

msgid "実際に文書テーブルと置換テーブルを作成してみましょう。"
msgstr ""

msgid ""
"この例では、ユーザが\"シークァーサー\"と入力しても、\"シークヮーサー\"と入力"
"しても、それぞれの異なる表記の文書をもれなく検索するための置換テーブルを作成"
"しています。"
msgstr ""

msgid ""
"それでは実際に、準備した置換テーブルを使ってみましょう。まずは、"
"query_expanderパラメータを指定せずにselectコマンドを使って検索してみます。"
msgstr ""

msgid ""
"指定された文字列に完全に一致するレコードのみがそれぞれヒットします。次に、"
"query_expanderパラメータに、準備したSynonymテーブルのbodyカラムを指定してみま"
"しょう。"
msgstr ""

msgid ""
"どちらのクエリ文字列も、\"(シークァーサー OR シークヮーサー)\"という文字列に"
"置換されてから検索されるため、表記の揺れを吸収して検索できるようになりまし"
"た。"
msgstr ""

msgid "さまざまな検索条件の指定"
msgstr ""

msgid ""
"Groongaは、JavaScriptに似た文法での条件絞込や、計算した値を用いたソートを行う"
"ことができます。また、位置情報(緯度・経度)を用いた絞込・ソートを行うことがで"
"きます。"
msgstr ""

msgid "JavaScriptに似た文法での絞込・全文検索"
msgstr ""

msgid ""
"selectコマンドのfilterパラメータは、queryパラメータと同様に、レコードの検索条"
"件を指定します。filterパラメータとqueryパラメータが異なる点は、filterパラメー"
"タには、JavaScriptの式に似た文法で条件を指定する点です。"
msgstr ""

msgid "ここで、filterパラメータには"
msgstr ""

msgid "_id <= 1"
msgstr ""

msgid ""
"という条件を指定しています。この場合は_idの値が1以下のレコードが検索結果とし"
"て得られます。"
msgstr ""

msgid "また、&& や || を使って、条件のAND・OR指定をすることもできます。"
msgstr ""

msgid ""
"queryパラメータとfilterパラメータを同時に指定すると、両者の条件をともに満たす"
"レコードが結果として返ります。"
msgstr ""

msgid "scorerを利用したソート"
msgstr ""

msgid ""
"selectコマンドのscorerパラメータは、 全文検索を行った結果の各レコードに対して"
"処理を行うためのパラメータです。"
msgstr ""

msgid ""
"filterパラメータと同様に、 JavaScriptの式に似たな文法で様々な条件を指定するこ"
"とができます。"
msgstr ""

msgid ""
"検索結果には、'_score'という名前の、全文検索のスコアが代入されている仮想的な"
"カラムが付与されることをチュートリアル中ソートの項目で説明しました。"
msgstr ""

msgid "上記の実行例では、scorerパラメータに"
msgstr ""

msgid "_score = rand()"
msgstr ""

msgid ""
"という条件を指定しています。ここでは、rand()という乱数を返す関数を用いて、全"
"文検索のスコアを乱数で上書きしています。"
msgstr ""

msgid "sortbyパラメータには、"
msgstr ""

msgid "_score"
msgstr ""

msgid ""
"を指定しています。これは、スコア順に昇順にソートすることを意味しています。"
msgstr ""

msgid ""
"よって、上記のクエリは実行されるたびに検索結果の並び順がランダムに変わりま"
"す。"
msgstr ""

msgid "位置情報を用いた絞込・ソート"
msgstr ""

msgid ""
"Groongaでは、位置情報（経緯度）を保存することができます。また、保存した経緯度"
"を用いて絞込やソートができます。"
msgstr ""

msgid ""
"位置情報を保存するためのカラムの型として、TokyoGeoPoint/WGS84GeoPointの２つの"
"型があります。前者は日本測地系、後者は世界測地系(WGS84相当)の経緯度を保存しま"
"す。"
msgstr ""

msgid "経緯度は以下のいずれかの形式の文字列として指定します。"
msgstr ""

msgid "\"[緯度のミリ秒]x[経度のミリ秒]\"（例: \"128452975x503157902\"）"
msgstr ""

msgid "\"[緯度のミリ秒],[経度のミリ秒]\"（例: \"128452975,503157902\"）"
msgstr ""

msgid ""
"\"[緯度の小数表記の度数]x[経度の小数表記の度数]\"（例: "
"\"35.6813819x139.7660839\"）"
msgstr ""

msgid ""
"\"[緯度の小数表記の度数],[経度の小数表記の度数]\"（例: "
"\"35.6813819,139.7660839\"）"
msgstr ""

msgid ""
"ここでは、ためしに東京駅と新宿駅とついて、世界測地系での位置情報を保存してみ"
"ましょう。東京駅は緯度が35度40分52.975秒、経度が139度45分57.902秒です。新宿駅"
"は緯度が35度41分27.316秒、経度が139度42分0.929秒です。よって、ミリ秒表記の場"
"合はそれぞれ\"128452975x503157902\"/\"128487316x502920929\"となります。度数表"
"記の場合はそれぞれ\"35.6813819x139.7660839\"/\"35.6909211x139.7002581\"となり"
"ます。ここではミリ秒表記で登録しましょう。"
msgstr ""

msgid ""
"scorerパラメータにおいて、 :doc:`/reference/functions/geo_distance` 関数を用"
"いることにより、２点間の距離を計算することができます。"
msgstr ""

msgid ""
"ここでは、秋葉原駅からの距離を表示させてみましょう。世界測地系では、秋葉原駅"
"の位置は緯度が35度41分55.259秒、経度が139度46分27.188秒です。よって、"
"geo_distance関数に与える文字列は\"128515259x503187188\"となります。"
msgstr ""

msgid ""
"この結果を見ると、東京駅と秋葉原駅は2054m、秋葉原駅と新宿駅は6720m離れている"
"ようです。"
msgstr ""

msgid "geo_distance関数は、_scoreを通じてソートでも用いることができます。"
msgstr ""

msgid "「ある地点から何m以内に存在する」といった絞込も可能です。"
msgstr ""

msgid ""
"filterパラメータにおいて、 :doc:`/reference/functions/geo_in_circle` 関数を用"
"いることにより、２点間の距離が指定のm以下におさまるかどうかを判定することがで"
"きます。"
msgstr ""

msgid "たとえば、秋葉原駅から5000m以内にあるレコードを検索してみましょう。"
msgstr ""

msgid ""
"また、経緯度が指定の矩形領域内であるかどうかを判定する :doc:`/reference/"
"functions/geo_in_rectangle` 関数も存在します。"
msgstr ""
