GridDB リリースノート
Revision: 3964
1 はじめに
本説明書は、GridDB Standard Edition、Advanced Edition、(以降、これらの製品を指す場合GridDBと記載します)のリリース情報を記述したものです。製品を使用する際の動作環境や参照すべきマニュアルなどについて記載しています。ご使用の前に必ずご一読されますようお願いします。
本説明書には、以下の情報を記載しています。
- はじめに
- 製品概要と変更点
- 機能一覧
- 動作環境
- パッケージとインストールについて
- GridDBのマニュアル
- 問題が発生した場合の対処について
- 注意事項・制限事項
- 特記事項
- 商標
- その他
2 製品概要と変更点
2.1 製品の概要
GridDBは、膨大なデータを、高速かつ安全に蓄積し検索するキー・バリュー型データベースです。以下のような特長があります。
- インメモリ処理によるデータ管理の高速化
- スケールアウトによる大容量化
- ディスクへのデータ保存による永続化、データのレプリケーション、さらにトランザクション機能による高信頼化
- クラスタへのノードの追加・削除の自律管理による運用の容易化
- (Advanced Edition)JDBC/ODBCインターフェイスにてSQLを用いてデータベースにアクセス可能
GridDBには次の製品があります。
GridDB Standard Edition (SE) | NoSQL型データベース製品 |
GridDB Advanced Edition (AE) | SQLインターフェイスを備えたNewSQL型データベース製品 |
これらの製品は別製品ですが、GridDB AEは、機能的にGridDB SEを包含するため、 GridDB SEの特長・機能に加えてSQL機能を付加した製品となります。購入いただいた製品に応じてサポートする機能が異なりますので、ご注意ください。
GridDBが提供する機能は『GridDB 機能リファレンス』(GridDB_FeaturesReference.html)を参照ください。
また、ご利用にあたっては『GridDB クイックスタートガイド』(GridDB_QuickStartGuide.html)を参照ください。
バグフィックス等の修正記録は、インストールメディア内のFixlist.pdfをご覧下さい。
2.2 V4.3の変更点
V4.3では、GridDB製品の中でGridDB Standard Edition、Advanced Editionをリリースします。機能強化の概要は以下に示すとおりです。
<スケールアップ強化>
ブロックサイズ拡大
データベース初期作成時に選択できるブロックサイズを最大32MBまで拡張しました。ブロックサイズを大きく設定することで、ノード1台当たりで管理可能なデータ量が増加します。また、大量データのスキャンの性能改善が期待できます。
チェックポイントファイルの分割配置
チェックポイントファイルを分割し、複数ディレクトリへ分散配置できます。分散配置することでノード1台当たりで管理可能なデータ量が増加します。また、ディスク負荷の分散により、性能改善が期待できます。
外部と内部の通信を分離するネットワーク構成
クライアント-ノード間の外部通信とノード間の内部通信にそれぞれ異なるネットワークインタフェースを割り当てることで、外部と内部の通信を分離できます。ネットワーク負荷の分散が可能になります。
<性能向上>
複合索引
複数カラムを指定して索引を作成できます。複数カラムの値を組み合わせると選択性が高くなる場合に用いると性能改善が期待できます。
<開発機能>
複合ロウキー
複数カラムを指定してロウキーを設定できます。複数カラムの値を組み合わせると値が一意になる場合に設定します。サロゲートキー(代替キー)が不要となるため、データ設計が容易になります。
タイムゾーン指定
クライアントプロパティにタイムゾーンを追加します。また、TQLやSQLの日付関数の一部にタイムゾーンの引数を追加します。
SQL関数の拡充 (AEのみ)
次の関数に対応します。
- 集計関数: STDDEV(標準偏差)、VARIANCE(分散)
- 算術関数: LOG(対数)、SQRT(平方根)、TRUNC(指定桁数までに切り捨て)
- 文字列関数: TRANSLATE(文字列置換)
- 日時関数: STRFTIME(TIMESTAMPを文字列に変換)、MAKE_TIMESTAMP(TIMESTAMP生成)、TIMESTAMP_TRUNC(指定粒度までに切り捨て)
<運用機能>
- アクセス権強化一般ユーザがデータベースへアクセスする際の権限の種類にREAD(参照のみ)を追加しました。これまでのアクセス権はALL(フルアクセス)のみでした。また、1つのデータベースに複数の一般ユーザへのアクセス権を割り当てられます。
また、GridDB V4.2では以下の点が変更となりました。
時刻文字列のフォーマット変更
サーバ、クライアントから出力される時刻文字列のフォーマットを変更しました。なお、タイムゾーンがUTCの場合は変更はありません。
例)タイムゾーンがJSTの場合:
- V4.2以前
2019-10-01T12:04:37.726+0900
- V4.3
2019-10-01T12:04:37.726+09:00
また、運用ツールの出力やログについても、同様のフォーマットに統一されます。
- V4.2以前
パーティショニングキーの制約 (AEのみ)
V4.3のデフォルトの設定では、パーティショニングキーとして指定するカラムはプライマリキーである必要があります。
V4.3以前より前のバージョンと同様にプライマリキー以外の指定を許可する場合は、クラスタ定義ファイルに次の設定を追加する必要があります。
: "sql": { : "partitioningRowkeyConstraint": false } :
パーティションサイズ上限
ブロックサイズに対応するパーティションサイズの上限を次のように変更しました。
- ブロックサイズ64KBのとき: 約64TB -> 約4TB
- ブロックサイズ1MBのとき: 約1PB -> 約64TB
gs_shの仕様変更
grantacl/revokeaclサブコマンドはアクセス権限の指定が必須になります。
制限事項の解除
下記の制限事項は解除となります。
No 項目 内容 S30010 SQL中間結果のswapファイルサイズが縮小しない SQLの使用メモリ量が上限値(gs_node.jsonのsql.storeMemoryLimit)を超えた場合、メモリ内容はswapファイルに出力されます。このswapファイルは、sql.storeSwapFilePathで指定されたディレクトリに作成されます(ファイル名「swap_N.dat」)。
サーバ終了時には削除されますが、現バージョンではサーバ起動中はファイルサイズは縮小しません。
特に一時的に大量の中間結果をswapファイルに保持するようなクエリを実行すると、そのクエリ実行終了後もswapファイルが配置されているディスクの容量を消費する場合があります。
以下のような対策を実施してください。
- 運用前にクエリを実行して、使用するswapファイルサイズを事前に確認し、必要なディスクサイズを見積もってください。
- sql.storeSwapFilePathで指定するswapファイルの配置先を、データベースファイルの配置先と異なるデバイスまたはパーティションに設定してください。
2.3 V4.2.5の変更点
V4.2.5では、GridDB製品の中でGridDB Standard Edition、Advanced Editionをリリースします。
Dockerfileサンプル
Docker CEやMicrosoft Azure Container Instance (ACI)で動作するGridDBコンテナを作成、起動するためのサンプルを提供します。
- GridDBサーバノードとクライアントノードのDockerコンテナイメージを生成するための、Dockerfileと設定ファイルのサンプルです。
- コンテナイメージのビルドやコンテナの実行方法については、GridDB Dockerfileサンプル 説明書をご確認ください。
2.4 V4.2の変更点
V4.2では、GridDB製品の中でGridDB Standard Edition、Advanced Editionをリリースします。機能強化の概要は以下に示すとおりです。
<性能向上>
複数索引の利用 (AEのみ)
テーブルに付与された複数の索引を効率的に利用するプランを生成し、実行します。
また、絞り込み条件の記述順序の入れ替えにより、索引の利用パターンを制御できます。
検索用バッファ制御
クエリのジョブ/タスク単位でスワップリード量を監視し、使用するバッファ量を制御します。
これにより、分析クエリによるスワップアウトが原因で登録処理の性能低下が発生することを減らします。
<障害・性能解析機能>
アプリケーション名指定
接続プロパティにアプリケーション名(applicationName)を追加します。
指定された名前は、一部のメタテーブルのカラム値やイベントログおよびクライアントトレースログに出力されます。
問題のあるアプリケーションを特定するのに役立ちます。
クライアントトレースログ出力 (JDBC) (AEのみ)
JDBCアプリケーション実行時に、呼び出し関数名と引数を含むトレースログを出力できます。
アプリケーションの動作を詳細に記録することで障害解析やデバッグを効率化します。
スロークエリログ (AEのみ)
クエリ(SQL)の処理時間が閾値を超えた場合、処理終了時にそのクエリの情報をイベントログに出力します。
実行に想定以上の時間がかかっているクエリの特定に役立ちます。
閾値はノード定義ファイルに設定します。閾値はオンライン変更可能です。
現在実行中の処理一覧出力
実行中のNoSQL/NewSQL処理の情報を取得するためのメタテーブルを追加します。
ノードやOSのリソースがどの処理によって使用されているかを特定するのに役立ちます。
また、gs_shのサブコマンドを追加します。
- showsql : 実行中SQL処理の表示 (AEのみ)
- showevent : 実行中イベントの表示
- showconnection : コネクションの表示
現在実行中クエリのキャンセル (AEのみ)
処理が長時間終わらないクエリを手動でキャンセルするサブコマンドをgs_shに追加します。
- killsql : 実行中SQL処理のキャンセル
キャンセルに使用するリソースIDは、showsqlサブコマンドで確認できます。
実行計画の表示 (AEのみ)
クエリの性能分析に役立つ実行計画の表示に関するサブコマンドをgs_shに追加します。
- getplantxt : SQL分析結果の取得(テキスト形式)
- getplanjson : SQL分析結果の取得(JSON形式)
- gettaskplan : SQL分析結果詳細情報の取得
GridDB 監視テンプレート for Zabbixの強化
GridDBクラスタの運用監視方法のサンプルとして提供しているZabbix用監視テンプレートの強化として、SQL統計情報やログ解析の監視アイテムなどを追加します。
ログ表示コマンド(gs_logs)の強化
イベントログの解析を容易にする次のオプションを追加します。
- CSV形式で結果を出力するオプション(--csv)
- 性能トレース解析オプション(--tracestats)
- スロークエリログ解析オプション(--slowlogs) (AEのみ)
クラスタ情報取得コマンド(gs_stat)の強化
性能情報の解析を容易にする次のオプションを追加します。
- CSV形式で結果を出力するオプション(--csv)
<開発機能>
ビュー (AEのみ)
ビューを定義する機能および作成・削除の構文を追加します。ビューの一覧はメタテーブルにより参照可能です。
ビューはコンテナと似たオブジェクトですが実データを持ちません。ビューを含むクエリの実行時に、ビュー作成時に定義されたSELECT文を評価して結果を返します。
ビューは参照(SELECT)のみ可能です。
Web API v2
コンテナ作成・削除、コンテナ一覧取得、TQL文実行などのAPIを追加しました。
また、スタンドアローンのサービス(griddb-webapi)として、起動・停止が行えます。
各APIの詳細はGridDB Web APIリファレンスを参照ください。
<プログラミング言語>
Node.js
アプリケーション開発のプログラミング言語として、Node.jsをサポートします。
Go
アプリケーション開発のプログラミング言語として、Goをサポートします。
C (Windows版)
Windows環境で動作するCクライアントライブラリを提供します。
C API 例外処理の強化
一部APIにエラーに関するパラメータを追加しました。
パラメータを使用することで、文字列解析を行わずに一部の情報を取り出せます。
<その他>
パーティション配置の指定
パーティション配置を指定する運用コマンド(gs_goalconf)を提供します。主に、ローリングアップグレードに使用します。
対応OSの追加
Red Hat Enterprise Linux 7.6, 6.10 / CentOS 7.6, 6.10に対応しました。
また、GridDB V4.2では以下の点が変更となりました。
インストールパッケージの追加
次のパッケージが追加となります。
- Web APIパッケージ (griddb-xx-webapi)
- Node.jsライブラリパッケージ (griddb-xx-nodejs_lib)
- Goライブラリパッケージ (griddb-xx-go_lib)
インストールパッケージの削除
次のパッケージが削除となります。アップデートインストールの際はあらかじめアンインストールしてください。
- ドキュメントパッケージ (griddb-xx-docs)
ノード定義ファイル(gs_node.json)の変更 (AEのみ)
ノード定義ファイルのパラメータが以下のように変更となります。
パラメータの値の変更
SQL処理でオペレータが使用するメモリの最大値のデフォルト値が変更となります。
- /sql/workMemoryLimit 128MB -> 32MB
SQLヒント句の削除 (AEのみ)
次のヒント句を削除しました。
- MaxDegreeOfParallelism(並列数上限)
- DistributedPolicy(分散プラン方針)
パーティションのステータスの追加 (V4.2.1)
次のステータスを追加しました。V4.2.0以前はNORMALと表示していました。
- INITIAL: クラスタ構成に参加していない初期状態
2.5 V4.1の変更点
V4.1では、GridDB製品の中でGridDB Standard Edition、Advanced Editionをリリースします。機能強化の概要は以下に示すとおりです。
<データ管理機能>
カラム数の上限値の拡大
コンテナ(テーブル)で扱えるカラム数の上限値を拡大しました。
従来はカラム数の上限値は1024まででしたが、V4.1からは上限値は1024~32,000個になります。(ブロックサイズの設定やコンテナのカラム型による)
動的なスキーマ変更(カラム追加)の改善
コンテナ(テーブル)の末尾へのカラム追加において、カラム追加処理中のコンテナへの同時アクセスが可能になります。
V4.1より前のバージョンではコンテナのスキーマ変更処理中に、他から同じコンテナにはアクセスできませんでした。また、末尾へのカラム追加の処理を高速化しました。
期限解放機能の拡張
パーティショニングされたコレクションタイプのコンテナ(テーブル)にも期限解放を設定できるようになります。 (ただし、インターバルまたはインターバル-ハッシュ、かつ、パーティショニングキーがTIMESTAMP型の場合のみ)
V4.1より前のバージョンでは、時系列タイプのコンテナ(テーブル)のみ、期限解放を設定可能でした。
期限解放の種類として「パーティション期限解放」を追加します。パーティション期限解放は、データを解放する単位がデータパーティション単位です。従来の期限解放「ロウ期限解放」は、ロウ単位でした。
パーティション期限解放は、インターバルまたはインターバル-ハッシュパーティショニングのコンテナ(テーブル)に設定できます。データパーティションのデータ区間の上限値が保持期間を越えると、データパーティション内の全ロウを解放します。
<運用機能>
長期アーカイブ機能
期限解放設定によって解放されたデータを後で再利用できるように、DBから自動削除する前に、外部ファイル(アーカイブファイル)に保存できます。
DB上のデータサイズは一定に保ち、かつ、古いデータを保存しておくことが可能になります。 保存したアーカイブファイルは、期間とコンテナ名で絞り込み、必要なデータを直接ファイル参照したり、GridDBへ再インポートできます。
バックアップ機能の強化
ストレージの高速コピーやスナップショットソリューションと連携して、GridDBのオンラインバックアップ、最新状態へのリカバリを行うための以下の機能を提供します。
- チェックポイント制御機能(チェックポイントの一時停止と再開)
- トランザクションログバックアップ機能(既存機能の機能強化)
ローリングアップグレード機能の強化
ローリングアップグレードの運用設計や実行を容易にするため、ローリングアップグレードの実行用スクリプトを提供します。
<プログラミング言語>
Pythonクライアントの性能改善
Pythonクライアントの登録/検索性能が改善します。
<その他>
対応OSの追加
Red Hat Enterprise Linux 7.5 / CentOS 7.5に対応しました。
また、GridDB V4.1では以下の点が変更となりました。
NoSQL I/Fの変更
クラスタでノード障害発生時、障害が発生していないノードにクライアントが自動的に接続し直す際のタイムアウト時間(failoverTimeout)のデフォルト値が120秒に変更となります。※変更前 60秒
設定ファイルや定義ファイルの雛形ファイル名の変更
インストールディレクトリに含まれる設定ファイルや定義ファイルの雛形のファイル名の末尾に.tmplを付加しました。
- 例) 定義ファイルの雛形
- ノード定義ファイル: /usr/griddb/conf/gs_node.json.tmpl
- クラスタ定義ファイル: /usr/griddb/conf/gs_cluster.json.tmpl
- ユーザ定義ファイル: /usr/griddb/conf/password.tmpl
- 例) 定義ファイルの雛形
ノード定義ファイル(gs_node.json)の変更
ノード定義ファイルのパラメータが以下のように変更となります。
パラメータの値の変更
SQL処理用の同時実行スレッド数のデフォルト値が変更となります。
- /sql/concurrency 4 ※変更前 5
パラメータの新設
期限解放済みデータを自動的に削除する機能の有効/無効を設定できます。
- /dataStore/autoExpire 期限解放済みデータの自動削除を設定します。
ノード定義ファイルの雛形には、デフォルト値としてfalse(自動削除無効)を設定しています。パラメータを指定しない場合は、true(自動削除有効)で動作します。
V4.1以前のノード定義ファイルをご利用のユーザは、ノード定義ファイルの変更は必要ありません。 V4.1以前のノード定義ファイルをそのまま使用すれば、V4.1以前と同じ動作(自動削除有効)になります。
SQL仕様の変更
create tableを実行する際、設定可能な期限解放機能のオプションに以下が追加となります。
- expiration_type 期限解放の種別(PARTITION/ROW)を設定します。デフォルト値はPARTITIONです。
expiration_typeを省略した時のデフォルト値が、ロウ期限解放からパーティション期限解放に変更となります。
V4.1以前のバージョンで、期限解放付きの時系列コンテナを作成するSQL文をご利用されていた場合は、期限解放の種別(ROW)の指定をSQL文に追加してください。expiration_type='ROW'
gs_export/gs_importの変更
プロパティファイルのパスが以下に変更となります。
/var/lib/gridstore/expimp/conf/gs_expimp.properties
※(変更前)/usr/griddb/prop/gs_expimp.properties
gs_admin/gs_shの変更
TQL/SQL機能の時刻型カラム値の表示内容が次のように統一されます。
- 時刻フォーマット: ISO8601形式
- タイムゾーン: UTC
例) 時刻型カラム値の表示内容
2018-11-07T12:30:00.417Z
2.6 V4.0.3の変更点
V4.0.3では、GridDB製品の中でGridDB Standard Edition、Advanced Editionをリリースします。
テーブルパーティショニングの機能拡張 (AEのみの機能)
テーブルパーティショニングの種類が増えました(インターバル、インターバル-ハッシュ)。種類が増えたことによって、格納するデータや用途に合わせて適切なパーティショニングを選択できるようになり、大規模なデータをより効率的に管理できます。
インターバル
- 指定された一定の範囲でデータを分割します。
インターバル-ハッシュ
- インターバルとハッシュの2種類を組み合わせたものです。インターバルで分割して、さらに、ハッシュでデータを分割します。
2.7 V4.0.2の変更点
V4.0.2では、GridDB製品の中でGridDB Standard Edition、Advanced Editionをリリースします。
Pythonクライアントの強化
ユーザビリティ向上やデータ解析ライブラリ連携のための強化を行いました。
インターフェース改善
ロウのデータ型を意識せずに、登録や取得などの操作ができます。 Pythonのリスト型でロウデータを指定すると、カラムのデータ型に合わせて暗黙的にデータ変換します。
例) ロウデータをコンテナに登録する
Container.put([1, "value", False])
Pandas連携
データ解析機能を持つPythonライブラリ「Pandas」と連携できます。 Pythonクライアントで取得したデータをPandasで解析したり、Pandasの解析データをGridDBクラスタに登録したりすることができます。
機能強化
- 配列型 :ロウのデータ型として、配列型が利用できます。
- NULL値 :NULL値を含むロウが操作できます。
- 名前付き索引 :名前付き索引の作成/削除ができます。
- 部分実行モード:クエリ実行結果を取得するオプション項目として部分実行モードが指定できます。
旧バージョンのPythonクライアントのインタフェースは廃止になります。 V4.0.2以降のPythonクライアントをご利用ください。また、Pythonクライアントの動作環境として、Python 2はサポート対象外となります。
コンテナ(テーブル)の配置情報表示機能
GridDBクラスタ上のコンテナ(テーブル)は、各ノードに自動的に分散して配置されます。運用管理ツールなどを用いることで、どのノードに配置されているかを確認することができます。
ノードごとのDBサイズに偏りがあってノードに配置されているコンテナを調べたい場合や、特定のコンテナを含むノードのバックアップを取得したい場合などにご利用ください。
Java API 例外処理の強化
GSExceptionクラスにエラーに関するパラメータのマップを追加しました。マップを使用することで、文字列解析を行わずに一部の情報を取り出せます。
障害対策機能の強化
ユーザやOOM Killerによりノードプロセスが強制終了された場合にも、ノードの自動再起動を行うようになりました。
対応OSの追加
Red Hat Enterprise Linux 7.4 / CentOS 7.4に対応しました。
2.8 V4.0の変更点
V4.0では、GridDB製品の中でGridDB Standard Edition、Advanced Editionをリリースします。 GridDB V4.0では以下の点が変更となりました。
名前に使用できる文字の拡張
クラスタやデータベース、コンテナなどの名前に使用できる文字の制限を拡張しました。従来の文字に加え、記号(ハイフン '-'、ドット '.'、スラッシュ'/'、イコール '=')が使用可能になります。
使える文字が増えたことにより、他のNoSQLデータベースと連携する際にオブジェクトの名前を変更することなくそのまま利用できるケースが増え、連携がより容易になります。
NoSQLとNewSQLの相互運用機能の強化 (AEのみの機能)
V3.5で強化した内容に加えて、NewSQLインタフェースで作成した、パーティショニングされたテーブルに対して、NoSQLインタフェースのTQLを使って検索ができるようになりました。他のコンテナと同様に、検索の用途に応じてTQL/SQLの使い分けが可能になります。
ローリングアップグレード機能
V4.0以降のバージョンにおいては、マイナーバージョンアップやパッチ適用の際に、クラスタ構成を稼動したまま製品のアップグレードを実施することができます。
データベース・API互換性の保証
V4.0以降のバージョンにおいては、同じメジャーバージョンであれば、データベースファイル・APIの後方互換性を保証します。
プログラミング言語Pythonのサポート
アプリケーション開発のプログラミング言語として、Pythonをサポートします。 Python 2/Python 3向けのAPIを新たに提供します。
Web APIのSQL機能
Web APIで、SQLのSELECT文実行機能を新たに提供します。
2.9 V3.5の変更点
GridDB V3.5では以下の点が変更となりました。
分散SQL処理性能の向上
各種SQL処理(JOIN演算、入れ子処理、条件絞込み処理、索引スキャン)の改善とメモリ使用量の削減を行い、検索性能が向上しました。
SQL92標準対応強化
データやSQLの互換性を高め、一般的な分析を行いやすくするためにNULL値に対応しました。(NULL値の格納、取り出し)
NoSQLとNewSQLの相互運用機能の強化
NoSQLで高速大量に蓄積したデータをSQLを使って容易に加工、分析が行えるようになりました。
DDL実行時の応答性の改善
索引削除、テーブル削除など重い機能をバックグランド処理化し応答性を大幅改善しました。
対応OSの追加
Red Hat Enterprise Linux 6.9 / CentOS 6.9に対応しました。
2.10 V3.2の変更点
GridDB V3.2では以下の点が変更となりました。
登録・更新性能の向上
データストアのバッファコントロール改善により、登録・更新性能が向上しました。
分散SQL処理性能の向上
各種演算処理、実行プランの最適化により、分散SQL処理性能が向上しました。
対応OSの追加
Red Hat Enterprise Linux 7.3 / CentOS 7.3に対応しました。
2.11 V3.1の変更点
GridDB V3.1では以下の点が変更となりました。
可変長データ型の格納効率向上
可変長型カラムを複数持つロウや、Blob・文字列配列を持つロウの格納効率を向上しました。
データの格納サイズ上限の変更
Blob型の格納サイズの上限値が変更になりました。文字列配列型の格納サイズの上限値が追加になりました。
- Blob型 1GB-1Byte
- 文字列配列型 1GB-1Byte
2.12 V3.0の変更点
GridDB V3.0では、アプリケーション開発向け機能強化、運用機能強化を行いました。機能の概要は以下に示すとおりです。
SQL高速化
MPP(超並列処理)ベースの高速SQL処理の実現により、膨大かつ絶え間なく発生するビッグデータに対して、SQLによるリアルタイム分析が可能になります。
データブロック圧縮
GridDBはメモリ上のデータをデータベースファイル(チェックポイントファイル)に書き込むことで、メモリサイズに依存しない大容量化を実現可能ですが、一方でストレージのコストは増加します。
データブロック圧縮機能は、チェックポイントファイルを圧縮することで、データ量に伴って増加するストレージコストの削減を支援する機能です。特に、HDDと比較して容量単価が高いフラッシュメモリをより効率的に活用できます。
障害対策機能
一時的なリソース不足などでGridDBが異常終了した場合、自動的にノードの起動、およびクラスタ参加を実行します。
運用管理者が意識せずに、クラスタの状態を正常稼働に戻すことができます。
また、GridDB V3.0では以下の点が変更となりました。
ノード定義ファイル(gs_node.json)の変更
インストーラに含まれるノード定義ファイルの雛形である、/usr/gridstore/conf/gs_node.jsonのパラメータが以下のように変更となります。
パラメータの値の変更
再起動時のウォームスタートのデフォルト値が変更となります。
/dataStore/storeWarmStart false(無効) ※変更前 true
パラメータの新設
/dataStore/storeCompressionMode データブロック圧縮モードを指定します。デフォルト値はNO_COMPRESSION(無効)です。
起動設定ファイル(/etc/sysconfig/gridstore/gridstore.conf)の変更
インストーラに含まれる起動設定ファイルの雛形である、 /usr/gridstore/etc/sysconfig/gridstore/gridstore.confが以下のように変更となります。
廃止されたパラメータ
- GS_HOME
- GS_STARTNODE
- CLUSTER_MODE
- STOP_TIMEOUT
- GS_JOINCLUSTER
- GS_LEAVECLUSTER
- START_TIMEOUT
- JOINCLUSTER_TIMEOUT
- LEAVECLUSTER_TIMEOUT
初期値の変更
- CLUSTER_NAME INPUT_YOUR_CLUSTER_NAME_HERE (変更前 defaultCluster)
パラメータの新設
- SVC_ENABLE_AUTO_RESTART 障害対策機能の有効/無効を設定します。デフォルト値はTrue(有効)です。
SQL仕様
データの格納に使用できるデータ型や、SQL関数などに一部変更があります。
GridDB V3.0 AEでサポートするSQL仕様については、『GridDB AE SQLリファレンス』(GridDB_AE_SQL_Reference.html)を参照ください。また、V2.9からの移行に関しましては、サポート窓口にご相談ください。
運用コマンドのメッセージ出力
すべての運用コマンドのメッセージ出力が英語表示になります。
export/import、およびgs_shのメッセージ出力
ロケールをjaもしくはja_JP以外に設定すると、export/importおよびgs_shのメッセージ出力が英語表示になります。
3 機能一覧
GridDB SEとAEの機能の一覧です。
項目 | 機能 | Standard Edition | Advanced Edition |
---|---|---|---|
クラスタ | クラスタ構成 | ✓ | ✓ |
分散データ管理 | ✓ | ✓ | |
レプリケーション | ✓ | ✓ | |
データ管理 | コレクション | ✓ | ✓ |
時系列コンテナ | ✓ | ✓ | |
索引 | ✓ | ✓ | |
アフィニティ | ✓ | ✓ | |
テーブルパーティショニング | ✓ | ||
クエリ言語 | TQL | ✓ | ✓ |
SQL | ✓ | ||
API | NoSQLインタフェース(Java/C) | ✓ | ✓ |
NewSQLインタフェース(JDBC/ODBC) | ✓ | ||
運用 | バックアップ | ✓ | ✓ |
エクスポート/インポート | ✓ | ✓ | |
統合運用GUI | ✓ | ✓ | |
運用コマンド | ✓ | ✓ | |
時系列データ | 期限解放 | ✓ | ✓ |
長期アーカイブ | ✓ | ✓ |
4 動作環境
GridDB 動作環境は以下です。サーバとクライアントによって異なります。
4.1 サーバ:データベースサーバ動作プラットホーム
CPU | x64プロセッサ 2.0GHz 以上(最小) |
メモリ | 1.0GB 以上(最小) |
ディスク容量 | 200MB インストールに必要な容量であり、ご利用方法に応じてデータベースファイルやログファイルの容量が別途必要です(最小1.0GB) |
OS | Red Hat Enterprise Linux 6.7/6.8/6.9/6.10 (64bit版) Red Hat Enterprise Linux 7.3/7.4/7.5/7.6 (64bit版) CentOS 6.7/6.8/6.9/6.10 (64bit版) CentOS 7.3/7.4/7.5/7.6 (64bit版) |
なお、サーバは以下に示すスペック以上を推奨します。
CPU | x64プロセッサ |
動作周波数 | 2.66GHz |
搭載CPU数 | 2 |
搭載コア数 | 4 |
メモリ | 32GB |
4.2 クライアント:開発アプリケーション動作プラットホーム
Java API、C API、JDBC、Python、Node.js、Goを利用するアプリケーションの動作環境
プラットホーム
CPU x64プロセッサ 2.0GHz 以上(最小) メモリ 1.0GB 以上(最小) OS Red Hat Enterprise Linux 6.7/6.8/6.9/6.10 (64bit版)
Red Hat Enterprise Linux 7.3/7.4/7.5/7.6 (64bit版)
CentOS 6.7/6.8/6.9/6.10 (64bit版)
CentOS 7.3/7.4/7.5/7.6 (64bit版)
Windows Server 2016 / Windows 10 (64bit版) *JDBCドライバのみソフトウェア
Java Oracle JDK 8
Red Hat OpenJDK 8Python Python 3.6 Node.js Node.js 6.14.2 Go Go 1.9
Windows版C API、ODBCを利用するアプリケーションの動作環境
プラットホーム
CPU x64プロセッサ 2.0GHz 以上(最小) メモリ 1.0GB 以上(最小) OS Windows Server 2012 R2/2016
Windows 10 (64bit版)
運用管理コマンドの動作環境
ソフトウェア
Python Python 2
Importツール (Oracle連携)を利用する場合の連携対象データベースの動作環境
ソフトウェア
Oracle DBバージョン Oracle Database 12c Release 1 (12.1.0.2.0) Oracle DB稼働OS Red Hat Enterprise Linux 6.5(64ビット版)
4.3 統合運用管理GUI(gs_admin) 動作プラットホーム
プラットホーム
CPU x64プロセッサ 2.0GHz 以上(最小) メモリ 1.0GB 以上(最小) OS Red Hat Enterprise Linux 6.7/6.8/6.9/6.10 (64bit版)
Red Hat Enterprise Linux 7.3/7.4/7.5/7.6 (64bit版)
CentOS 6.7/6.8/6.9/6.10 (64bit版)
CentOS 7.3/7.4/7.5/7.6 (64bit版)ソフトウェア
アプリケーションサーバ Apache Tomcat 7.0/8.0 Java Oracle JDK 8
Red Hat OpenJDK 8ブラウザ Internet Explorer 11.0
4.4 Web API 動作プラットホーム
プラットホーム
CPU x64プロセッサ 2.0GHz 以上(最小) メモリ 1.0GB 以上(最小) OS Red Hat Enterprise Linux 6.7/6.8/6.9/6.10 (64bit版)
Red Hat Enterprise Linux 7.3/7.4/7.5/7.6 (64bit版)
CentOS 6.7/6.8/6.9/6.10 (64bit版)
CentOS 7.3/7.4/7.5/7.6 (64bit版)ソフトウェア
Java Oracle JDK 8
Red Hat OpenJDK 8
4.5 Dockerfileサンプル 動作プラットホーム
プラットホーム
CPU x64プロセッサ 2.0GHz 以上(最小) メモリ 1.0GB 以上(最小) OS Red Hat Enterprise Linux 7.6 (64bit版)
CentOS 7.6 (64bit版)Azureサービス ACI、ACR ※2019年9月に動作確認済 ソフトウェア
Docker Docker CE 19.03
5 パッケージとインストールについて
GridDBには9つのRPMパッケージがあります。
パッケージ | ファイル名 | 内容 |
---|---|---|
サーバパッケージ | griddb-XX-server-X.Y.Z-linux.x86_64.rpm | GridDBのサーバモジュールとサーバ起動、バックアップ・リストア用の運用コマンドなどを含みます。 |
クライアントパッケージ | griddb-XX-client-X.Y.Z-linux.x86_64.rpm | サーバ起動、バックアップ・リストアをのぞく運用コマンド、エクスポート・インポートツール、統合運用管理GUI(gs_admin)、クラスタ運用管理コマンド・インタプリタ(gs_sh)を含みます。 |
Web APIパッケージ | griddb-XX-webapi-X.Y.Z-linux.x86_64.rpm | Web APIを含みます。 |
Cライブラリパッケージ | griddb-XX-c_lib-X.Y.Z-linux.x86_64.rpm | Cのヘッダファイル(/usr/include/gridstore.h)とライブラリ(/usr/lib64/libgridstore.so)を含みます。 |
Javaライブラリパッケージ | griddb-XX-java_lib-X.Y.Z-linux.x86_64.rpm | Javaのライブラリ(/usr/share/java/gridstore.jar)を含みます。 |
Pythonライブラリパッケージ | griddb-XX-python_lib-X.Y.Z-linux.x86_64.rpm | Pythonのパッケージ(griddb_python)を含みます。 |
Node.jsライブラリパッケージ | griddb-XX-nodejs_lib-X.Y.Z-linux.x86_64.rpm | Node.jsのモジュール(griddb_node)を含みます。 |
Goライブラリパッケージ | griddb-XX-go_lib-X.Y.Z-linux.x86_64.rpm | Goのパッケージ(griddb/go_client)を含みます。 |
NewSQLパッケージ | griddb-XX-newsql-X.Y.Z-linux.x86_64.rpm | 本パッケージはGridDB AEでのみ提供します。JDBCドライバを含みます。 |
※XX : Edition名(se/ae)
※X.Y.Z : リリースバージョン
- X メジャーバージョン
- Y マイナーバージョン
- Z リビジョン
インストール方法は、『GridDB クイックスタートガイド』(GridDB_QuickStartGuide.html)をご参照ください。
6 GridDBのマニュアル
GridDBには以下のマニュアルがあります。
マニュアル名 | 対象者 | 内容 |
---|---|---|
GridDB クイックスタートガイド | 初めてGridDBを使う方 | 製品概要やGridDBを簡単に利用する手順を説明したマニュアルです。 |
GridDB データベース管理者ガイド | インフラ設計者 運用管理者 |
データベースの物理設計や運用などについて説明したマニュアルです。 |
GridDB プログラミングガイド | アプリケーション開発者 | JavaやC言語のAPIの使用方法や、データ登録や検索などのプログラム例を説明したマニュアルです。 |
GridDB Advanced Edition SQLチューニングガイド | アプリケーション開発者 | SQLのチューニング手順やSQL最適化のルールについて説明したマニュアルです。 |
リファレンス
インフラ設計者/運用管理者/アプリケーション開発者の方が対象です。
マニュアル名 内容 GridDB 機能リファレンス GridDBの機能全般について説明したマニュアルです。 GridDB 運用ツールリファレンス 起動コマンドやエクスポート・インポートツールなどの運用ツールの使用方法を説明したマニュアルです。 GridDB エラーコード GridDBのエラーコード、および原因や対処方法の一覧です。 GridDB 監視テンプレート for Zabbix 説明書 GridDBの監視を行うためのZabbix向けの設定やテンプレートの利用方法を説明したマニュアルです。 GridDB Dockerfileサンプル 説明書 GridDB Dockerfileサンプルの利用方法を説明したマニュアルです。 GridDB TQLリファレンス
GridDB Java APIリファレンス
GridDB C APIリファレンス
GridDB Advanced Edition SQLリファレンス
GridDB Advanced Edition JDBCドライバ説明書
GridDB Advanced Edition ODBCドライバ説明書
GridDB Web APIリファレンス
GridDB Python API Reference
GridDB Node.js API Reference
GridDB Go API Referenceアプリケーション開発のためのAPIやクエリ言語のリファレンスです。
7 問題が発生した場合の対処について
GridDB利用中に問題が発生した場合には、『GridDB データベース管理者ガイド』(GridDB_AdministratorsGuide.html)および『GridDB エラーコード』(GridDB_ErrorCodes.html)を参照ください。
8 注意事項・制限事項
ご利用に際しての注意事項を説明します。注意事項・制限事項は、本製品をご利用いただく上で事前にご確認・ご理解いただきたい項目です。
8.1 注意事項
No | 項目 | 内容 |
---|---|---|
1 | 互換性(データベース) (GridDB SE/GridDB AE) | GridDB V4.0以降では、GridDB V3.5以前(V3.5も含む)で作成したデータベースファイルを利用することはできません。 エクスポート、インポートツールによるデータの移行が必要です。 移行に関しましてはサポート窓口にご相談ください。 |
2 | メジャーバージョンが異なるGridDBノードはクラスタに混在できません | GridDB V4.1.1以降では、クラスタは同一メジャーバージョンのノードのみで構成できます。 ネットワークに異なるメジャーバージョンのノードが混在しないよう注意してください。 V3.5以前では、バージョンが異なるGridDBノードはクラスタに混在できません。 |
3 | 互換性(エクスポートのZip出力形式) | V2.7以前のエクスポート機能で出力するZipファイルは、V2.7以降では利用できません。 |
4 | GridDB AEのカラム型 | GridDB AEでは、GridDB SE固有の以下のデータ型をテーブルのカラムの型として使用できません。 - 空間(GEOMETRY)型 - 配列型 |
5 | GridDB AEのSQL | GridDB AEでは、問い合わせでのデータ型やシーケンスを柔軟に処理するため、エラーとならない場合があります。 |
6 | 互換性(クラスタのノード、APIとクラスタ) | - クラスタのノードのバージョン互換性 V4.1.0以前のノードとV4.1.1以降のノードを混在してクラスタを構成することはできません。そのため、V4.1.0以前からの移行でローリングアップグレード機能を利用することはできません。 - APIとクラスタのバージョンの互換性 V4.0.0のNoSQL APIから、V4.0.2以降のノードで構成されるクラスタにアクセスすることはできません。アプリケーションで使用するAPIは、V4.0.2以降のAPIに置き替えてください。APIのバージョン互換性はありますので、アプリケーションの変更は必要ありません。 |
8.2 制限事項
No | 項目 | 内容 |
---|---|---|
S30007 | データベース名、一般ユーザ名の大文字小文字同一視ができない場合がある | データベースや一般ユーザの管理機能において、データベース、ユーザ作成時には名前の大文字小文字を同一視して扱いますが、接続・参照・削除時には大文字小文字同一視が行われず、作成時の文字列を指定する必要があります。 例) - データベース"dbTest"を作成後、"DBTEST"、"dbtest"などは作成できない。 ⇒作成時は大文字小文字を同一視するため、大文字小文字が異なる同名のデータベースは、同じものとして扱う。 - データベース"dbTest"を作成後、"DBTEST"や"dbtest"の指定で削除はできず、作成時の"dbTest"を指定する必要がある。 ⇒削除時は大文字小文字を同一視しないため、大文字小文字が異なる同名のデータベースは、異なるものとして扱う。 |
S30009 | 空の空間データ型を登録できない | 空の空間データを登録すると登録エラーになります 例)空の空間データ POINT(EMPTY),LINESTRING(EMPTY),POLYGON(EMPTY)など |
S30014 | ノードアフィニティを設定したテーブルに対して、テーブルパーティショニングを行うことはできない | ノードアフィニティとパーティショニングを同時に指定してテーブル作成を行うことはできません。エラーになります。 例) CREATE TABLE table1@affinity(id integer) PARTITION BY HASH(id) PARTITIONS 5 |
I40004 | NoSQL APIのputContainerでカラム追加を行った場合、既存行の該当カラムにNULL値が設定される | V4.0.3までは空値を設定していました。将来のバージョンで、空値/NULL値を選べるように対応する予定です。 |
T30004 | 障害発生時、gs_adminでコンテナ情報を取得できない場合がある | データベース障害等で一部のパーティションが参照できなくなった場合、gs_adminではコンテナ情報を取得できません。一部パーティションが参照できない場合でも、gs_shでは、正常なパーティション上のコンテナ情報は取得できます。 |
T30006 | Web APIでは、名前に記号('-' '.' '/' '=')を含むクラスタ・データベース・コンテナに対する操作は実行できない | Web APIでは、名前に記号('-' '.' '/' '=')を含むクラスタ・データベース・コンテナに対する操作は実行できません。エラーになります。 |
9 特記事項
パーペチュアルライセンスのご利用にあたっては、基本サポートサービス契約が必要です。基本サポートサービス契約は、本製品のライセンス購入と同時にご契約いただくようお願いいたします。製品ご購入後にサポートサービスを契約することはできません。
10 商標
- GridDBは日本国内における東芝デジタルソリューションズ株式会社の登録商標です。
- OracleとJavaは、Oracle Corporation およびその子会社、関連会社の米国およびその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
- LinuxはLinus Torvaldsの商標です。
- Red Hatは米国およびその他の国におけるRed Hat,Inc.の登録商標もしくは商標です。
- ZabbixはZabbix SIAの登録商標です。
- DockerはDocker Inc.の米国およびその他の国における登録商標です。
- MicrosoftおよびAzureは米国Microsoft Corporationの米国およびその他の国における登録商標です。
- その他製品名は、それぞれの所有者の商標または登録商標です。
11 その他
本製品に使用されているソフトウェアおよびライセンスは、サーバパッケージやインストールメディアに含まれるReadme.txtを参照ください。
本製品をご利用いただく上でのお問い合わせは、基本サポートサービスの窓口へご連絡ください。
Copyright Toshiba Digital Solutions Corporation 2017-2019