Close現在JavaScriptが無効になっています。すべての機能は利用できません。本書では、初めてGridDBをお使いの方に製品の概要と簡単な使い方を説明します。簡単な使い方として、1台のPCにGridDBをインストールして、起動・停止やデータ操作を行う一連の手順を説明します。各章の内容は次のとおりです。はじめにGridDB製品について説明します。GridDBのアーキテクチャ・データモデルの基本である「ノードとクラスタ」と「コンテナとロウ」について、概略を説明します。GridDBのインストール1台のPCへGridDBをインストールする操作手順を説明します。ここで説明する手順に従ってGridDBをインストールしてください。GridDBには操作方法がいくつかありますが、運用コマンドを使った操作方法を紹介します。データ操作GridDBの様々な操作を行うgs_shコマンドや、インポートを行うgs_importコマンドを使った簡単なデータ操作を説明します。ここでは、クラスタに接続してコンテナを作成したのち、データ登録して検索を行うという一連の基本的な操作を説明します。サンプルプログラムの実行GridDBには、コンテナ作成やデータ登録するサンプルプログラムが用意されています。サンプルプログラムのビルドおよび実行方法の例を紹介します。GridDBのアンインストールGridDBが不要となった場合のアンインストール手順を説明します。GridDBとはGridDBは、膨大なデータを高速かつ安全に蓄積し検索することができるデータベースです。EE」と呼びます)には、次の特長があります。Connectivity)を利用できます。Load)ツールからデータベースに直接アクセスすることもできます。GridDBの仕組みGridDBのアーキテクチャ・データモデルの基本である「ノードとクラスタ」および「コンテナとロウ」について説明します。ノードとクラスタ「ノード」とは、GridDBでデータ管理を行うひとつのサーバプロセスを指します。1台のマシンには、ひとつのノードだけが動作できます。GridDBは、複数のノードで構成される「クラスタ」で動作します。アプリケーションからデータベースにアクセスするには、ノードが起動されており、かつ、クラスタのサービスが開始されている必要があります。クラスタは、クラスタを構成するノード数分のノードがクラスタへ参加することで、サービスが開始されます。構成ノード数のノードすべてがクラスタに参加するまでクラスタは開始されず、アプリケーションからはデータベースにアクセスすることはできません。ノード1台で動作させる場合にもクラスタを構成する必要があります。この場合、構成ノード数を1台でクラスタを構成することになります。ノード1台で動作させる構成を「シングル構成」と呼びます。ネットワーク上に複数のクラスタが混在しても識別できるように、クラスタには「クラスタ名」をつけます。この「クラスタ名」を使って、ノードやアプリケーションはクラスタを特定します。-コンテナとロウを理解しましょう―GridDBは、NoSQLの代表的なデータモデルであるキー・バリュー型を拡張した独自のキー・コンテナ型データモデルです。以下の特長があります。「コンテナ」というRDBのテーブルに似た概念を導入しています。コンテナでデータを管理します。コンテナには、カラムのデータ型を定義するスキーマ設定が可能です。カラムにインデックスを設定することができます。コンテナ単位でデータのACID特性を保証します。データモデルコンテナデータを格納する入れ物です。コンテナには、コレクションと時系列コンテナという2つの種別が存在します。コレクション一般的なデータを管理するためのコンテナ時系列コンテナ時系列データを管理するためのコンテナアプリケーションでデータを登録する前には、必ずコンテナを作成しておく必要があります。ロウロウは、コンテナに登録される1行のデータを指します。コンテナには複数のロウが登録されます。本書で用いられる用語の説明です。GridDBでデータ管理を行うひとつのサーバプロセスを指します。一体となってデータ管理を行う、1つ、もしくは複数のノードの集合を指します。ロウの集合を管理する入れ物です。コレクションと時系列コンテナの2種類が存在します。一般の型のキーを持つロウを管理するコンテナの一種です。時刻型のキーを持つロウを管理するコンテナの1種です。時系列データを扱う専用の機能を持ちます。GridDBで管理する1件分のデータを指します。キーと複数の値からなるひとまとまりのデータです。GridDBのインストール1台のPCへGridDBをインストールして、GridDBを使ってみましょう。次の流れでインストールを行います。インストール前の確認OSバージョン確認GridDBをインストールするマシンのOSが、GridDBの動作保証範囲であることを確認します。Serverであり、かつ、リリースノートに記載のバージョンであることを確認してください。Server」を選択している必要があります。3.6以降をインストールしてください。--version[注意]Pythonが未インストールの場合、パッケージのインストールに失敗します。インストールメディア確認インストールメディアには、各OS向けのパッケージを同梱しています。パッケージをインストールするGridDBのパッケージをインストールします。パッケージには、サーバや運用ツール、ライブラリなどの種類があります。ノードモジュールとノードの起動、バックアップリストアコマンドなどが含まれます。ノード起動、バックアップリストア、統合運用管理GUIを除く運用ツール一式が含まれます。Javaのライブラリ、JDBCドライバが含まれます。Cのヘッダファイルとライブラリが含まれます。X.X.XはGridDBのバージョン[メモ]アプリケーション開発ライブラリは、JavaやC以外のプログラミング言語のパッケージも提供しています。必要に応じてインストールしてください。インストールするマシンの任意の場所に、上記のパッケージを配置してください。コマンドを用いてパッケージをインストールします。サーバパッケージ「griddb-ee-server」を最初にインストールしてください。Serverでは、dpkgでパッケージをインストールします。インストール後のユーザやディレクトリ構成GridDBパッケージのインストールを行うと、以下のようなユーザやディレクトリ構成が作成されます。ユーザOSのグループgridstoreとユーザgsadmが作成されます。ユーザgsadmは、GridDBを運用するためのユーザとして使用します。ノードのイベントログファイルの出力ディレクトリディレクトリ構成ノードの定義ファイルやデータベースファイルなどを配置するGridDBホームディレクトリと、インストールしたファイルを配置するインストールディレクトリが作成されます。APIインストールディレクトリ[メモ]ノードを起動したりツールを実行したりすると、データベースファイルやログファイルが以下のディレクトリに作成されます。ネットワークの設定GridDBでは、クラスタを構成する際にマルチキャスト通信を使用します。マルチキャスト通信を可能にするためのネットワークの設定を行います。ホスト名とIPアドレスの対応付けを確認します。-i」コマンドを実行してください。以下のようにマシンのIPアドレスが表示される場合は設定済みですので、本節のネットワーク設定の作業は不要です。-i192.168.11.10以下のようなメッセージやループバックアドレス127.0.0.1が表示される場合は、設定が行われていません。以下の1から3の手順を実施してください。1192.168.11.10ホスト名とIPアドレスの対応付けを設定する1で確認したホスト名とIPアドレスを、rootユーザで/etc/hostsファイルに追加します。-i」コマンドを実行してください。2で指定したIPアドレスが表示されることを確認してください。システムリソース制限値の設定gsadmが利用可能なプロセス数とオープン可能なファイル数の上限値を変更し、リソースを多く使えるようにします。/etc/security/limits.confに設定してください。65536gsadmで再ログインすると設定が反映されます。-aで設定内容をご確認ください。ノードのパラメータの設定インストール後にGridDBを動作させるためには、アドレスやクラスタ名などのパラメータの初期設定が必要です。本ガイドでは、必須項目の「クラスタ名」のみ設定を行い、それ以外はデフォルト値を用います。クラスタの「クラスタ名」をクラスタ定義ファイルに記述します。クラスタ定義ファイルは「/var/lib/gridstore/conf/gs_cluster.json」です。「"clusterName":""」の部分にクラスタ名を記載します。本書では、「myCluster」という名前を用います。"replicationNum":2,・・・省略[メモ]クラスタ名はサブネットワーク上で一意となる名前にすることを推奨します。クラスタ名は1文字以上のASCII英数字ならびにアンダースコア「_」の列で構成されます。先頭の文字には数字を指定できません。大文字・小文字は区別されません。64文字以内で指定する必要があります。設定内容ネットワーク設定とクラスタ名以外は、デフォルト値の設定のままで動作することができます。以下に主な設定項目を示します。これ以降のツールの実行などでは、以下の値を用います。運用ツールの中には初期設定が必要なものがあります。本節では、データ操作で用いるgs_shとgs_importの初期設定を行います。(ツールを使用しない場合は、本節の設定は不要です。gs_shコマンドの設定gs_shはGridDBのクラスタ操作やデータ操作のためのコマンドラインインターフェイスです。クラスタの構成ノードに対する一括した操作や、コンテナの作成、TQLやSQL検索などのデータ操作の機能を提供します。gs_shコマンドを利用する前に、gs_shの設定ファイル「/var/lib/gridstore/.gsshrc」にクラスタの接続情報を設定しておきます。クラスタの接続先アドレスや接続するユーザの名前を、setclusterサブコマンドとsetuserサブコマンドを用いて定義します。クラスタ変数名とクラスタ名以外は、デフォルトの値を指定します。以下のように「/var/lib/gridstore/.gsshrc」ファイルに記載してください。(デフォルト値)さらに、SQLの接続先情報も定義します。クラスタ変数名とクラスタ名以外は、デフォルトの値を指定します。以下のようにファイルに記載してください。gs_importコマンドの設定gs_importは、コンテナにデータをインポートするためのコマンドです。利用する前に、クラスタのアドレスなどの情報をプロパティファイルに記載します。プロパティファイルは「/var/lib/gridstore/expimp/conf/gs_expimp.properties」です。プロパティファイル内の「clusterName=」の部分にクラスタ名(ここでは「myCluster」)を記載します。起動/停止GridDBノードの起動/停止および、クラスタの開始/停止を行います。起動や停止の操作方法はいくつかありますが、運用コマンドを使った操作方法を紹介します。運用コマンドはgsadmユーザで実行してください。pwd/var/lib/gridstoreプロキシ変数(http_proxy)が設定されている場合、ノードのアドレス(群)を、no_proxyで設定し、proxyから除外してください。運用コマンドはREST/http通信を行うため、誤ってproxyサーバ側に接続されてしまい、運用コマンドが動作しません。起動操作GridDBノードのインストールおよびセットアップを行った後、GridDBクラスタの起動の流れは以下のようになります。ノードを起動するクラスタを開始する「ノードとクラスタ」で説明した通り、GridDBクラスタはユーザが指定した構成ノード数分のノードがクラスタへ参加することで構成され、サービスが開始されます。構成ノード数のノードすべてがクラスタに参加するまで、クラスタサービスは開始されず、アプリケーションからはクラスタにアクセスすることはできません。今回説明するのは、ノード1台で利用する「シングル構成」です。ノードを1台起動したのち、起動したノードをクラスタに参加させて、クラスタを開始します。ノードを起動するノードの起動には以下のコマンドを用います。-wユーザ認証オプション-uには管理ユーザadminのユーザ名とパスワードを指定し、ノードの起動を待ち合せる-wオプションを指定します。クラスタを開始する各ノードでクラスタ参加コマンドを実行し、クラスタを開始します。クラスタの開始には以下のコマンドを用います。クラスタ名ユーザ認証オプション-uには管理ユーザadminのユーザ名とパスワードを指定し、クラスタの開始を待ち合せる-wオプションを指定します。クラスタ名を-cオプションで指定します。myClusterクラスタ開始後、クラスタの状態を確認します。状態の確認には以下のコマンドを使います。ユーザ名/パスワードユーザ認証オプション-uには管理ユーザadminのユーザ名とパスワードを指定します。クラスタのステータスを確認するために、"Status"の表記の行のみをgrepで抽出します。"NORMAL"「gs_stat」で表示される3つのステータスが「実行例」のように表示されていれば、正常に起動しています。アプリケーションからクラスタにアクセスが可能になります。基本の流れGridDBクラスタの停止の流れは以下のようになります。クラスタを停止するノードを停止する起動の流れとは逆に、クラスタを安全に停止してから、各ノードを停止します。クラスタを停止した段階で、アプリケーションからはクラスタにアクセスできなくなります。クラスタを停止するクラスタ停止コマンドを実行します。クラスタ停止コマンドを実行した時点で、アプリケーションからはクラスタにアクセスできなくなります。-wユーザ認証オプション-uには管理ユーザadminのユーザ名とパスワードを指定し、クラスタの停止を待ち合せる-wオプションを指定します。ノードを停止するノード停止コマンドを実行し、ノードを停止(シャットダウン)します。クラスタを停止してからノードを停止します。-wユーザ認証オプション-uには管理ユーザadminのユーザ名とパスワードを指定し、ノードの停止を待ち合せる-wオプションを指定します。データ操作GridDBのデータ操作を行ってみましょう。ここでは、gs_shコマンド、およびgs_importコマンドを使った、次の基本的な操作について説明します。クラスタに接続するgs_shコマンドを使いクラスタに接続します。gs_shを起動すると「gs>」プロンプトが表示されて、サブコマンドの入力待ちになります。クラスタに接続する場合はサブコマンドは「connect」を使います。コンテナとは「データモデル-コンテナとロウを理解しましょう」で説明したように、GridDBでは、「コンテナ」と称される入れ物でデータを管理します。コンテナには、カラムやデータ型などのスキーマを定義します。アプリケーションでデータを登録する前には、必ずコンテナを作成しておく必要があります。コンテナの種類コンテナには次の2種類があります。用途に応じて使い分けます。コレクション:一般的なデータを管理するためのコンテナ時系列コンテナ:時系列データを管理するためのコンテナカラムのデータ型カラムのデータ型には次の種類があります。コンテナを作成するコンテナを作成してみましょう。ここでは、コンテナの種類は「コレクション」、カラムは「id」(型はinteger)と「value」(型はstring)であるコンテナを作成する操作を紹介します。ロウを登録する「ロウ」は、コンテナやテーブルに登録される1行のデータ指します。ここではサンプルデータをインポートし、ロウを登録しましょう。サンプルデータをインポートするために展開します。impSample.zipimpSample/collectionのデータをインポートします。TQL検索を行うコンテナに対してTQL検索を実行し、結果を表示します。TQL検索は、gs_shコマンドの「tql」と「get」のサブコマンドを使って行います。tql:TQL文でコンテナのロウを検索するget:TQLの結果を表示するここでは、「c001」という名前のコンテナに対して検索を行う操作を紹介します。操作は、クラスタに接続したのちに行います。サブコマンド「tql」を実行し、コンテナ(c001)に対してTQL検索を実行します。ms)次に、サブコマンド「get」を実行して結果を表示します。件の取得が完了しました。SQL検索を行うテーブルに対してSQL検索を実行し、結果を表示します。SQL検索は、gs_shコマンドの「sql」と「get」のサブコマンドを使って行います。sql:SQL文でNewSQLデータ(テーブルと時系列テーブル)を検索するget:SQLの結果を表示する(検索結果の全件を表示する場合は、省略できます)ここでは、「c001」という名前のコンテナに対して検索を行う操作を紹介します。操作は、クラスタに接続したのち、行います。サブコマンド「sql」を実行し、コンテナ(c001)に対してSQL検索を実行します。ms)次に、サブコマンド「get」を実行して結果を表示します。件の取得が完了しました。APIとJDBCを用いたサンプルプログラムが用意されています。サンプルプログラムでプログラムのビルドおよび実行方法の例を説明します。サンプルプログラムは、/usr/griddb/sampleにありますのでご利用ください。APIを用いたサンプルプログラムを実行するためには、以下のパッケージをインストールしている必要があります。アプリケーション開発ライブラリ(Java)パッケージ:griddb-ee-java-libサンプルプログラムは、次のディレクトリにあります。/usr/griddb/sample/ja/javaプログラムのコンパイル・実行の際には、以下のライブラリを環境変数CLASSPATHに指定します。/usr/share/java/gridstore.jar[実行例]プログラムをコンパイルして実行します。TQLSelectサンプルプログラム"TQLSelect.java"は、以下の処理を行うプログラムです。APIを用いたサンプルプログラムを実行するためには、以下のパッケージをインストールしている必要があります。アプリケーション開発ライブラリ(C)パッケージ:griddb-ee-c-libサンプルプログラムは、次のディレクトリにあります。/usr/griddb/sample/ja/cプログラムのコンパイル・実行の際には、以下のライブラリを環境変数LD_LIBRARY_PATHに指定します。/usr/lib64[実行例]プログラムをコンパイルして実行します。./TQLSelectサンプルプログラム"TQLSelect.c"は、以下の処理を行うプログラムです。APIを用いたサンプルプログラムを実行するためには、以下のパッケージをインストールしている必要があります。アプリケーション開発ライブラリ(Java)パッケージ:griddb-ee-java-libサンプルプログラムは、次のディレクトリにあります。/usr/griddb/sample/ja/jdbc/プログラムのコンパイル・実行の際には、以下のライブラリを環境変数CLASSPATHに指定します。/usr/share/java/gridstore-jdbc.jar[実行例]プログラムをコンパイルして実行します。JDBCSelectサンプルプログラム"JDBCSelect.java"は、以下の処理を行うプログラムです。GridDBのアンインストールGridDBが不要となった場合には全てのパッケージをアンインストールします。以下の手順でアンインストールを実行してください。Serverでは、dpkgでパッケージをアンインストールします。griddb-ee-server[注意点]定義ファイルやデータファイルなど、GridDBホームディレクトリ下のファイルはアンインストールされません。Serverの場合、ディレクトリが削除できない等の警告が出力される場合がありますが問題ありません。不要な場合は手動で削除してください。