- InfiniDB技術情報サイト ~データ活用

Calpont InfiniDB®
管理者ガ イ ド
Release 3.5.1
Document Version 3.5.1-1
December 2012
2801 Network Blvd., Suite 220 : Frisco, Texas 75034 : 972.999.1355
[email protected] : www.calpont.com
Copyright © 2012 Calpont Corporation. All rights reserved.
InfiniDB お よ び Calpont 製品名は、 Calpont の商標です。 他社お よ びその製品への参照
は、 各社が所有す る 商標を使用 し てお り 、 参照のみを目的 と し てい ます。
こ の文書の情報は予告な し に変更 さ れ る 場合があ り ます。 こ の文書にいかな る 誤 り があ
る 場合 も 、 Calpont に責任はない も の と し ます。
ソ フ ト ウ ェ ア ラ イ セン ス
「GNU Free Documentation License」 の条項の も と 、 こ の文書を コ ピー、 配布、 修正す る
権限が付与 さ れ ます。 Free Software Foundation に よ っ て発行 さ れたバージ ョ ン 1.3 以降
には、 変更のない項、 表紙、 裏表紙が含まれてい ません。 ラ イ セ ン ス の コ ピーについて
は 「GNU Free Documentation License」 の項に記載 さ れてい ます。
ii
目次
対象読者 .......................................................................................................................i
表記規則 .......................................................................................................................i
マニ ュ アル リ ス ト .................................................................................................iii
マニ ュ アルの入手 .................................................................................................iii
マニ ュ アルへの フ ィ ー ド バ ッ ク ....................................................................iii
追加 リ ソ ース ...........................................................................................................iii
第1章
Calpont InfiniDB コ ン ソ ールの概要
1
Calpont InfiniDB コ ン ソ ールに対する ロ グオ ン およびロ グオ フ .... 1
Calpont InfiniDB コ ン ソ ールの ヒ ン ト .......................................................... 2
help コ マ ン ド .................................................................................................... 2
大文字 と 小文字の区別 ................................................................................ 3
コ マ ン ド 履歴か らの再呼出 し ........................................................... 3
コ マ ン ド の繰返 し オプ シ ョ ン ........................................................... 3
Linux および Calpont InfiniDB コ ン ソ ールの
コ マ ン ド プ ロ ン プ ト ....................................................................... 3
Calpont コ マ ン ド の全 リ ス ト ........................................................................... 4
第2章
シ ス テムの保守
9
Calpont InfiniDB のア ッ プグ レ ー ド ............................................................... 9
Calpont ソ フ ト ウ ェ ア ................................................................................... 9
Calpont InfiniDB のア ッ プグ レ ー ド ........................................................ 9
ス ト レージに関する情報 .................................................................................10
シ ス テムの操作 ....................................................................................................10
シ ス テムの停止 .............................................................................................10
シ ス テムまたはモ ジ ュ ールの起動 ......................................................11
シ ス テムの再起動 ........................................................................................11
シ ス テムのシ ャ ッ ト ダウ ン .....................................................................11
シ ス テムモ ジ ュ ールの無効化お よび有効化 ..................................11
第3章
シ ス テムス テー タ ス
13
シ ス テムス テー タ スの表示 ............................................................................13
iii
プ ロ セス ス テー タ スの表示 ...........................................................................14
ネ ッ ト ワー ク構成の表示 ................................................................................15
モ ジ ュ ール情報の表示 .....................................................................................16
モ ジ ュ ールの使用率および し き い値の監視 .........................................17
モ ジ ュ ールのデ ィ ス ク 使用率 ........................................................18
メ モ リ ー使用率 ......................................................................................19
スワ ッ プ領域の使用率 .......................................................................19
デ ィ ス ク の し き い値 ............................................................................20
CPU の し き い値 .....................................................................................21
ア ラ ームの監視 ....................................................................................................21
ア ク テ ィ ブ な ア ラ ームの表示 ...............................................................22
アー カ イ ブ済みア ラ ームの表示 ..........................................................22
上位 CPU ユーザーの表示 .......................................................................25
リ ソ ース使用率の監視 ......................................................................26
第4章
シ ス テムス テー タ スの監視の構成
27
管理 コ ン ソ ールの概要 .....................................................................................27
Calpont 構成 フ ァ イル .................................................................................27
Linux シ ェ ル .....................................................................................................27
シ ス テムの構成 ....................................................................................................28
モ ジ ュ ールのハー ト ビー ト の設定 ......................................................29
デ ィ ス ク の し き い値の構成 ....................................................................30
ト ラ ンザ ク シ ョ ン ロ グ を アー カ イ ブする間隔の構成 ..............31
モ ジ ュ ールの構成 ...............................................................................................31
モ ジ ュ ールの CPU し き い値の構成 ...................................................32
モ ジ ュ ールのデ ィ ス ク 使用率の構成 .................................................32
スワ ッ プ領域の使用率の構成 ...............................................................33
ア ラ ームの構成 ....................................................................................................33
ア ラ ームを構成する手順 .........................................................................34
ロギン グの構成 ....................................................................................................34
ロギン グの有効化および無効化 ..........................................................35
第5章
デー タ のイ ンポー ト
37
イ ンポー ト の概要 ...............................................................................................37
ロー ド サイ ズの見積 り ..............................................................................37
イ ンポー ト タ ス ク ........................................................................................37
イ ンポー ト 処理 .............................................................................................37
デ ィ レ ク ト リ 構造 ........................................................................................38
BulkRoot の定義 ......................................................................................38
root 以外のユーザー と し てのイ ンポー ト .......................................38
ソ ース フ ァ イルの コ ピー ................................................................................38
ソ ース フ ァ イルの形式 ..............................................................................38
UTF-8 デー タ のイ ンポー ト .............................................................39
iv
ソ ース フ ァ イル名 ........................................................................................39
イ ンポー ト デ ィ レ ク ト リ .........................................................................39
イ ンポー ト 方法 ....................................................................................................40
複数の表のイ ン ポー ト ..............................................................................40
分散イ ン ポー ト ....................................................................................................40
セ ン ト ラ ルロ ケーシ ョ ンか ら のバル ク ロー ド (モー ド 1) ...40
シ ン グルバル ク ロー ド コ マ ン ド 、 パーテ ィ シ ョ ン ソ ース
(モー ド 2) ..........................................................................................42
独立 し たバル ク ロー ド コ マ ン ド 、 パーテ ィ シ ョ ン ソ ース
(モー ド 3) ..........................................................................................43
単一サーバーのイ ンポー ト .....................................................................44
利用可能な モー ド ........................................................................................45
ジ ョ ブ フ ァ イルの生成 ......................................................................................45
デー タ のイ ンポー ト ..........................................................................................48
cpimport の使用方法 ....................................................................................48
シ ン プルな cpimport イ ン タ フ ェ ースの使用 ..........................48
従来の cpimport イ ン タ フ ェ ースの使用 ....................................49
cpimport のオプ シ ョ ンパラ メ ー タ ...............................................49
STDIN 処理 .......................................................................................................53
シ ン プルな cpimport の使用 .............................................................53
従来の cpimport の使用 .......................................................................53
表か ら選択 し た内容のバル ク 挿入 ...............................................53
囲み文字 (-E) お よびエ スケープ文字 (-C) の使用方法 ...54
高度な表へのデー タ マ ッ ピ ン グ ..................................................................55
デー タ マ ッ ピ ン グの例 ..............................................................................56
イ ンポー ト の ト ラ ブルシ ュ ーテ ィ ン グ ...................................................57
エ ラ ーロ グ と 拒否 さ れたデー タ の格納場所 ..................................58
デー タ の不一致 .............................................................................................58
エ ラ ー行の数が し き い値を超え る ......................................................58
第6章
ト ラ ンザク シ ョ ン
59
ト ラ ンザ ク シ ョ ンの概要 .................................................................................59
ト ラ ンザ ク シ ョ ンの保守 .................................................................................60
ACID 準拠 .................................................................................................................60
第7章
バ ッ ク ア ッ プおよび リ カバ リ の実行
63
デー タ のバ ッ ク ア ッ プ ......................................................................................63
デー タ ベースの書込みの一時停止 ......................................................64
フ ロ ン ト エ ン ド デー タ ベースのバ ッ ク ア ッ プ .............................64
Calpont InfiniDB デー タ ベースのバ ッ ク ア ッ プ .............................65
デー タ ベースの書込みの再開 ................................................................65
バ ッ ク ア ッ プか らの リ カバ リ .......................................................................66
フ ロ ン ト エ ン ド デー タ ベースの リ ス ト ア .......................................66
v
Calpont InfiniDB デー タ ベースの リ ス ト ア .......................................66
ト ラ ンザ ク シ ョ ン ...............................................................................................67
Calpont ト ラ ンザ ク シ ョ ン ロ グの保存 ..............................................67
ト ラ ンザ ク シ ョ ン ロ グの確認 ...............................................................68
Calpont InfiniDB デー タ ベースの削除 ........................................................68
第8章
パフ ォ ーマ ン スチ ュ ーニ ング
71
問合せのチ ュ ーニ ン グのガ イ ド ラ イ ン - デー タ ア ク セス操作 ..71
Calpont InfiniDB で使用 さ れる操作 : ..................................................71
パ フ ォ ーマ ン ス メ ト リ ッ クの収集 -calgetstats() ...............................72
パ フ ォ ーマ ン ス メ ト リ ッ クの収集 .............................................................73
/var/log/Calpont/debug.log の使用 .......................................................73
calsettrace(1); の使用 ..................................................................................73
/var/log/mysqld.log の使用 .......................................................................74
エ ク ス テ ン ト マ ッ プのレ ン ジパーテ ィ シ ョ ニ ン グの理解 ...........74
拡張 (スケー リ ン グ) ........................................................................................74
パ フ ォ ーマ ン スの場合 ..............................................................................74
同時実行性の場合 ........................................................................................74
デー タ 容量の場合 ........................................................................................75
第9章
モ ジ ュ ールの構成
77
モ ジ ュ ールを構成する前に ...........................................................................77
モ ジ ュ ール ID .................................................................................................77
自動構成 ............................................................................................................78
手動構成 ............................................................................................................78
DBRoot の移動 ......................................................................................................78
モ ジ ュ ールの追加 ...............................................................................................79
モ ジ ュ ールの削除 ...............................................................................................81
第 10 章
ユーザーへのア ク セス権の付与
83
第 11 章
ク ロ スエ ン ジ ン表ア ク セス
85
第 12 章
ユーザーへの リ ソ ースの割当て
87
ユーザーの優先順位の管理 ...........................................................................87
ユーザーの優先順位機能の有効化 .............................................................88
ユーザーの優先処理 ..........................................................................................88
vi
第 13 章
問合せのパフ ォ ーマ ン ス監視
91
問合せ統計収集機能の有効化 .......................................................................91
問合せ統計表 .........................................................................................................92
列定義 ........................................................................................................................92
問合せ統計の表示 ...............................................................................................94
第 14 章
動作モー ド
97
第 15 章
10 進法
99
10 進法の有効化または無効化 .....................................................................99
10 進法のレ ベルの設定 ................................................................................. 100
第 16 章
圧縮モー ド
101
第 17 章
パーテ ィ シ ョ ン管理
103
第 18 章
シ ス テムユーテ ィ リ テ ィ
105
configxml.sh .................................................................................................... 105
colxml ................................................................................................................ 106
cpimport ........................................................................................................... 106
viewtablelock ................................................................................................. 106
cleartablelock ................................................................................................ 106
healthCheck ................................................................................................... 106
rebalanceDB ................................................................................................... 106
第 19 章
UTF-8 キ ャ ラ ク タ セ ッ ト の使用
109
UTF-8 キ ャ ラ ク タ セ ッ ト ............................................................................. 109
my.cnf ............................................................................................................... 109
Calpont.xml ..................................................................................................... 110
デー タ のイ ンポー ト ................................................................................ 110
既知の問題および制限 ................................................................................... 110
vii
第 20 章
ト ラ ブルシ ュ ーテ ィ ング
111
ERROR 1070 (42000) : Too many key parts specified;
max 0 parts allowed ...................................................................... 111
UM の メ モ リ ー超過エ ラ ー / 分散結合のパ フ ォ ーマ ン ス ... 111
集計デー タ のオーバー フ ローに関する エ ラ ー .......................... 111
循環結合の検出エ ラ ー ........................................................................... 112
同時実行問合せに よ る イ ンポー ト 実行速度の低下 ................ 113
CREATE TABLE 実行直後のデー タ 取得の遅延 ......................... 113
付録 A
GNU Free Documentation License
115
付録 B
サー ド パーテ ィ ラ イ セ ン ス
123
GNU GENERAL PUBLIC LICENSE ............................................................. 123
Preamble ......................................................................................................... 123
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION
AND MODIFICATION ................................................................... 124
NO WARRANTY ........................................................................................... 127
END OF TERMS AND CONDITIONS .................................................. 128
How to Apply These Terms to Your New Programs ............. 128
RSA Data Security ............................................................................................. 129
Paul E. Jones ........................................................................................................ 130
Apache .................................................................................................................... 130
Gary S. Brown ...................................................................................................... 135
Brian M. Clapper ................................................................................................. 135
Net-SNMP ............................................................................................................. 136
viii
は じ めに
本書では、 Calpont InfiniDB の イ ン ス ト ール、 構成、 保守、 パフ ォ ーマ ン ス チ ュ ーニ ン
グお よ び ト ラ ブルシ ュ ーテ ィ ン グについて説明 し てい ます。
本書には、 Calpont InfiniDB Enterprise にのみ有効な情報が含ま れてい ます。
対象読者
本書は、 Calpont InfiniDB のセ ッ ト ア ッ プ と 保守を行 う デー タ ベース管理者お よ び IT
管理者を対象 と し てい ます。
表記規則
本書では、 次の表記規則お よ びユーザーへの警告を使用 し てい ます。
表 1: 表記規則
項目
太字
説明
表示 さ れた と お り に入力す る 文字。
例 : getLogInfo と 入力 し ます
こ の場合、 getLogInfo と 入力 し ます。
斜体
変数ま たはプ レース ホルダ。 文字列を適切に置 き 換え て入力
し ます。 複数の単語で構成 さ れ る 変数はア ン ダース コ ア (_)
で連結 し て表示 さ れてい ます。
例:
ID を入力 し ます。
ID 番号 34878 を入力 し ます。
IP_address を入力 し ます。
IP ア ド レ ス 110.68.52.01 を入力 し ます。
は じ めに i
表 2: ユーザーへの警告
項目
説明
注意 : 役立つ情報であ る こ と を示 し ます。
警告 : デー タ の損失ま たは破損の原因 と な る ハー ド ウ ェ アや
ソ フ ト ウ ェ アのエ ラ ーを発生 さ せ る 可能性があ る こ と を示 し
ます。
ii は じ めに
マニ ュ アル リ ス ト
Calpont デー タ ベース プ ラ ッ ト フ ォーム のマニ ュ アルは、 様々な読者を対象 と し た複
数のガ イ ド で構成 さ れてい ます。 次の表を参照 し て く だ さ い。
表 3: マニ ュ アル
マニ ュ アル
説明
『Calpont InfiniDB 最小推奨仕
様ガ イ ド 』
Calpont InfiniDB の実装に必要なハー ド ウ ェ アお よ び
ソ フ ト ウ ェ アの最小の推奨仕様を示 し ます。
『Calpont InfiniDB イ ン ス ト
レーシ ョ ン ガ イ ド 』
分散構成に Calpont InfiniDB を イ ン ス ト ールす る ため
に必要な手順の概要について説明 し ます。
『Calpont InfiniDB SQL 構文ガ
イ ド』
Calpont InfiniDB に固有の構文について説明 し ます。
『Calpont InfiniDB 概要』
分析用デー タ ベース Calpont InfiniDB の概要について
説明 し ます。
『Calpont InfiniDB パフ ォ ーマ
ン ス チ ュ ーニ ン グガ イ ド 』
分析用デー タ ベース InfiniDB をパ ラ レル化お よ び拡張
す る ためのチ ュ ーニ ン グに役立つ情報について説明 し
ます。
『Calpont InfiniDB マルチ UM
同期ガ イ ド 』
Calpont InfiniDB で 2 つ以上のユーザーモジ ュ ールの
同期を保持す る ために使用す る オプシ ョ ンの概要につ
いて説明 し ます。
マニ ュ アルの入手
英語版のマニ ュ アルは、 (http://www.infinidb.org/ お よ び http://www.calpont.com) で入
手す る こ と がで き ます。 追加の支援が必要な場合は [email protected] にご連
絡 く だ さ い。
マニ ュ アルへのフ ィ ー ド バ ッ ク
マニ ュ アルの改善に向けて、 フ ィ ー ド バ ッ ク 、 コ メ ン ト お よ び提案を いただけ ます よ
う お願いいた し ます。 マニ ュ アル名、 バージ ョ ンお よ びページ番号を添え て コ メ ン ト
を [email protected] にご送付 く だ さ い。
追加 リ ソ ース
Calpont InfiniDB の イ ン ス ト ールお よ びチ ュ ーニ ン グ、 ま たは Calpont InfiniDB を使用
し たデー タ の問合せに関 し て支援が必要な場合は [email protected] ま で ご連
絡 く だ さ い。
は じ めに iii
iv は じ めに
第1章
Calpont InfiniDB コ ン ソ ールの概要
Calpont InfiniDB コ ン ソ ールを使用 し て、 Calpont InfiniDB のシ ス テ ムお よ びサーバーの
構成、 監視お よ び管理を行 う こ と がで き ます。 こ の章では、 Calpont InfiniDB コ ン ソ ー
ルの使用方法について説明 し 、 Calpont コ マ ン ド の全 リ ス ト を示 し ます。 詳細は、 後
述す る Calpont InfiniDB の構成、 監視お よ びシ ス テ ム と サーバーの管理に関す る 章を
参照 し て く だ さ い。
Calpont InfiniDB コ ン ソ ールに対する ログオ ンおよびロ グオ フ
SSH ク ラ イ ア ン ト を使用 し て Calpont InfiniDB コ ン ソ ールに ロ グオ ン で き ます。 こ の章
では、 両方の処理について説明 し ます。
SSH ク ラ イ ア ン ト を使用 し て Linux シ ェ ルに接続す る 場合は、 Linux シ ェ ルで Calpont
InfiniDB コ ン ソ ールを実行 し ます。 Linux シ ェ ルの多 く の機能を Calpont InfiniDB コ ン
ソ ールで利用で き ます。 次に例を示 し ます。
コ マ ン ド 名の一部を入力 し て コ マ ン ド を実行す る
上矢印お よ び下矢印を使用 し て前の コ マ ン ド を再呼出 し す る
ホ ッ ト キーを使用 し て コ マ ン ド の編集お よ びナビ ゲー ト を行 う
次の手順では、 Calpont InfiniDB コ ン ソ ールの ロ グオ ンお よ び ロ グオ フ を行 う 方法につ
いて説明 し ます。 Linux プ ロ ン プ ト か ら Calpont コ マ ン ド を実行す る こ と も で き ます。
3 ページの 「Linux お よ び Calpont InfiniDB コ ン ソ ールの コ マ ン ド プ ロ ン プ ト 」 を参照
し て く だ さ い。
SSH ク ラ イ ア ン ト を使用 し て管理 コ ン ソ ールに ロ グオ ンす る には
1. SSH ク ラ イ ア ン ト を使用 し て Linux に接続 し ます。
ユーザー名お よ びパ ス ワー ド の入力を求め ら れます。
2. Linux のユーザー名お よ びパ ス ワー ド を入力 し て [Enter] を押 し ます。
以下は、 サーバーへの ロ グ イ ン例です。
ユーザー名 : root
パ ス ワー ド : Calpont1
3. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
cmconsole のプ ロ ン プ ト が表示 さ れ ます。
Calpont InfiniDB コ ン ソ ールの概要 1
Calpont InfiniDB コ ン ソ ールか ら ロ グオ フす る には
1. cmconsole のプ ロ ン プ ト で、 exit ま たは quit と 入力 し ます。
Linux プ ロ ン プ ト が表示 さ れ ます。
Calpont InfiniDB コ ン ソ ールの ヒ ン ト
次の ヒ ン ト は、 Calpont InfiniDB コ ン ソ ールの使用に役立ち ます。
help コ マ ン ド
help コ マ ン ド では、 サポー ト さ れてい る コ マ ン ド が表示 さ れます。 簡潔なヘルプ説明ま た
は詳細な説明を表示で き ます。 help コ マ ン ド で コ マ ン ド 名の一部を入力 し て、 詳細な説明
を表示す る こ と も で き ます。
コ マ ン ド のヘルプ を表示す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. help と 入力 し ます。
サポー ト さ れてい る コ マ ン ド の リ ス ト がアルフ ァ ベ ッ ト 順に、 簡潔な説明 と と も
に表示 さ れます。
help コ マ ン ド の後に コ マ ン ド 名ま たは コ マ ン ド 名の一部を入力す る と 、 その コ マ ン ド の
詳細な説明を表示で き ます。
た と えば、 help restartModule と 入力す る と 、 次の図に示す よ う に、 サーバーを再
起動す る コ マ ン ド の詳細な説明が表示 さ れます。
2 Calpont InfiniDB コ ン ソ ールの概要
大文字 と 小文字の区別
コ マ ン ド では大文字 と 小文字が区別 さ れ ませんが、 パ ラ メ ー タ お よ びデバ イ ス名
(サーバーやプ ロ セ ス な ど) では大文字 と 小文字が区別 さ れ ます。 た と えば、
GetAlarmLog コ マ ン ド は getalarmlog と 入力で き ます。
setsystemconfig コ マ ン ド の後にProcessHeartbeatPeriodパ ラ メ ー タ を指定 し
た場合の例を次に示 し ます。
ど ち ら も 正常に実行 さ れます。
setsystemconfig
SetSystemConfig
ProcessHeartbeatPeriod 5
ProcessHeartbeatPeriod 5
コ マ ン ド 履歴から の再呼出 し
入力 し た コ マ ン ド の履歴を参照す る には、 キーボー ド の上矢印キーお よ び下矢印キー
を使用 し て コ マ ン ド を ス ク ロ ール し ます。
コ マ ン ド の繰返 し オプ シ ョ ン
- r オプシ ョ ン を使用 し て コ マ ン ド を繰 り 返 し 実行で き ます。 こ れは、 リ アル タ イ ム
モー ド で状態を確認す る 場合に役立ち ます。
繰返 し オプシ ョ ン では、 コ マ ン ド が 5 秒ご と に繰 り 返 さ れます。 コ マ ン ド の後に秒数
を追加す る こ と に よ っ て、 繰返 し の間隔を 1-60 秒の間で変更で き ます。
た と えば、 GetProcess Status コ マ ン ド を 2 秒ご と に繰 り 返すには、
GetProcessStatus -r2 と 入力 し ます。
注意 : コ マ ン ド の繰返 し を終了す る には、 [Ctrl]+[C] を押 し て
Linux プ ロ ン プ ト に戻 る か、 [Ctrl]+[D] を押 し て Calpont InfiniDB コ
ン ソ ールに戻 り ます。
Linux および Calpont InfiniDB コ ン ソ ールのコ マ ン ド プ ロ ン プ ト
Linux と 管理 コ ン ソ ールの間を何度 も 行 き 来す る こ と な く コ マ ン ド を簡単に実行す る
ために、 Linux コ マ ン ド を管理 コ ン ソ ールか ら 実行 し た り 、 Calpont コ マ ン ド を Linux
プ ロ ン プ ト か ら 実行す る こ と も で き ます。
Calpont InfiniDB コ ン ソ ールの概要 3
Calpont InfiniDB コ ン ソ ールか ら Linux シ ス テ ム コ マ ン ド を実行す る には
system (お よ び Linux コ マ ン ド 名) を入力 し て [Enter] を押 し ます。 こ れに よ っ て Linux コ
マ ン ド が処理 さ れ、 コ ン ソ ールに出力が表示 さ れ ます。
た と えば、 Calpont プ ロ ン プ ト か ら copy コ マ ン ド に関す る Linux のマニ ュ アルを表示す る
には、 system man cp と 入力 し ます。
Linux プ ロ ン プ ト か ら Calpont InfiniDB コ ン ソ ールの コ マ ン ド を実行す る には
cmconsole Calpont_command と 入力 し ます。
た と えば、 Linux コ マ ン ド プ ロ ン プ ト か ら シ ス テ ム ス テー タ ス を表示す る には、 次の よ う
に入力 し ます。
cmconsole getSystemStatus
Calpont コ マ ン ド の全 リ ス ト
Calpont シ ス テ ム を構成、 管理お よ び操作す る ために管理 コ ン ソ ールか ら 実行で き る コ マ
ン ド を次に示 し ます。
表 1: Calpont コ マ ン ド
コマン ド
説明
?
ヘルプ
addDbroot
DBRoot デ ィ ス ク ス ト レージ を Calpont InfiniDB シ
ス テ ムに追加 し ます
addExternalDevice
外部デバ イ ス を構成フ ァ イ ルに追加 し ます
addModule1
Calpont シ ス テ ム内でモジ ュ ールを追加 し ます
alterSystem-disableModule1
モジ ュ ールを無効に し て Calpont シ ス テ ム を変更
し ます
alterSystem-enableModule1
モジ ュ ールを有効に し て Calpont シ ス テ ム を変更
し ます
assignDbrootPmConfig
現在割 り 当て ら れていない DBRoot をパフ ォ ーマ
ン ス モジ ュ ールに割 り 当て ます
assignElasticIPAddress
Amazon Elastic IP ア ド レ ス を モジ ュ ールに割 り 当て
ます
disableLog
プ ロ セ スお よ びデバ ッ グの ロ ギ ン グの レベルを無
効に し ます
4 Calpont InfiniDB コ ン ソ ールの概要
表 1: Calpont コ マ ン ド
コ マン ド
説明
enableLog
プ ロ セ スお よ びデバ ッ グの ロ ギ ン グの レベルを有
効に し ます
exit
コ ン ソ ールツールを終了 し ます
getActiveAlarms
ア ク テ ィ ブな ア ラ ーム リ ス ト を取得 し ます
getActiveSQLStatements
シ ス テ ム内でア ク テ ィ ブな SQL 文の リ ス ト を取得
し ます
getAlarmConfig
ア ラ ーム の構成情報を取得 し ます
getAlarmHistory
シ ス テ ム ア ラ ーム を取得 し ます
getAlarmSummary
ア ク テ ィ ブな ア ラ ーム の集計数を取得 し ます
getCalpontSoftwareInfo
Calpont RPM の詳細情報を取得 し ます
getExternalDeviceConfig
外部デバ イ ス の構成情報を取得 し ます
getLogConfig
シ ス テ ム ロ グ フ ァ イ ルの構成を取得 し ます
getModuleConfig
モジ ュ ール名の構成情報を取得 し ます
getModuleCpu
モジ ュ ールの CPU 使用率を取得 し ます
getModuleCpuUsers
CPU を利用 し てい る 上位のモジ ュ ールプ ロ セ ス を
取得 し ます
getModuleDisk
モジ ュ ールのデ ィ ス ク 使用率を取得 し ます
getModuleMemory
モジ ュ ールの メ モ リ ー使用率を取得 し ます
getModuleMemoryUsers
メ モ リ ーを利用 し てい る 上位のモジ ュ ールプ ロ セ
ス を取得 し ます
getModuleResourceUsage
モジ ュ ールの リ ソ ース使用率を取得 し ます
getModuleTypeConfig
モジ ュ ール タ イ プの構成情報を取得 し ます
getProcessConfig
プ ロ セ ス の構成情報を取得 し ます
getProcessStatus
Calpont プ ロ セ ス ス テー タ ス を取得 し ます
getStorageConfig
シ ス テ ム の ス ト レージ構成情報を取得 し ます
getStorageStatus
シ ス テ ム の ス ト レージ状態を取得 し ます
getSystemConfig
シ ス テ ム の構成情報を取得 し ます
Calpont InfiniDB コ ン ソ ールの概要 5
表 1: Calpont コ マ ン ド
コマン ド
説明
getSystemCpu
すべてのモジ ュ ールにおけ る シ ス テ ム の CPU 使用
率を取得 し ます
getSystemCpuUsers
CPU を利用 し てい る 上位のシ ス テ ム プ ロ セ ス を取
得 し ます
getSystemDisk
すべてのモジ ュ ールにおけ る シ ス テ ム のデ ィ ス ク
使用率を取得 し ます
getSystemInfo
シ ス テ ム全体の状態を取得 し ます
getSystemMemory
すべてのモジ ュ ールにおけ る シ ス テ ム の メ モ リ ー
使用率を取得 し ます
getSystemMemoryUsers
メ モ リ ーを利用 し てい る 上位のシ ス テ ム プ ロ セ ス
を取得 し ます
getSystemNetworkConfig
シ ス テ ム のネ ッ ト ワ ー ク 構成情報を取得 し ます
getSystemResourceUsage
すべてのモジ ュ ールにおけ る シ ス テ ム の リ ソ ース
使用率を取得 し ます
getSystemStatus
シ ス テ ムお よ びモジ ュ ールの状態を取得 し ます
help
コ ン ソ ール コ マ ン ド に関す る ヘルプ を表示 し ます
monitorAlarms
リ アル タ イ ム モー ド でア ラ ーム を監視 し ます
movePmDbrootConfig
DBRoot をパフ ォ ーマ ン ス モジ ュ ールか ら 別のモ
ジ ュ ールに移動 し ます
quit
コ ン ソ ールツールを終了 し ます
removeDbroot
DBRoot デ ィ ス ク ス ト レージ を Calpont InfiniDB シ
ス テ ムか ら 削除 し ます
removeExternalDevice
外部デバ イ ス を構成フ ァ イ ルか ら 削除 し ます
removeModule1
Calpont シ ス テ ム内のモジ ュ ールを削除 し ます
resetAlarm
ア ク テ ィ ブな ア ラ ーム を リ セ ッ ト し ます
restartSystem
Calpont シ ス テ ム内のプ ロ セ ス を再起動 し ます
resumeDatabaseWrites
Calpont デー タ ベースへの書込みの実行を再開 し ま
す
setAlarmConfig
ア ラ ーム の構成パ ラ メ ー タ を設定 し ます
setExternalDeviceConfig
外部デバ イ ス の構成パ ラ メ ー タ を設定 し ます
6 Calpont InfiniDB コ ン ソ ールの概要
表 1: Calpont コ マ ン ド
コ マン ド
説明
setModuleTypeConfig
モジ ュ ール タ イ プの構成パ ラ メ ー タ を設定 し ます
setProcessConfig
プ ロ セ ス の構成パ ラ メ ー タ を設定 し ます
setSystemConfig
シ ス テ ム の構成パ ラ メ ー タ を設定 し ます
shutdownSystem
Calpont シ ス テ ム を シ ャ ッ ト ダ ウ ン し ます
startSystem
停止 さ れた Calpont シ ス テ ム を起動 し ます
stopSystem
Calpont シ ス テ ムの処理を停止 し ます
suspendDatabaseWrites
Calpont デー タ ベースへの書込みの実行を一時停止
し ます
switchParentOAMModule
ア ク テ ィ ブな親 OAM モジ ュ ールを別のパフ ォ ー
マ ン ス モジ ュ ールに切 り 替え ます
system
シ ス テ ム シ ェ ル コ マ ン ド を実行 し ます
unassignElasticIPAddress
Amazon Elastic IP ア ド レ ス の割当て を解除 し ます
1. こ れ ら の コ マ ン ド は、 シ ェ アー ド ナ ッ シ ン グ構成ではサポー ト さ れてい ません。
「command not supported in a shared-nothing configuration」 と い う メ ッ セージが コ
ン ソ ールに発行 さ れます。
Calpont InfiniDB コ ン ソ ールの概要 7
8 Calpont InfiniDB コ ン ソ ールの概要
第2章
シ ス テムの保守
こ の章では、 Calpont InfiniDB ソ フ ト ウ ェ ア を ア ッ プグ レー ド す る 方法お よ びサーバー
操作に Calpont InfiniDB コ ン ソ ールを使用す る 方法について説明 し ます。
Calpont InfiniDB コ ン ソ ールを使用す る と 、 シ ス テ ムお よ びサーバーの停止、 起動、 再
起動お よ びシ ャ ッ ト ダ ウ ン操作を実行で き ます。
Calpont InfiniDB のア ッ プグ レー ド
Calpont は、 問題の修正ま たはパフ ォ ーマ ン ス の向上のために必要に応 じ て新 し い リ
リ ースお よ び ソ フ ト ウ ェ アパ ッ チを発行 し ます。
Calpont ソ フ ト ウ ェ ア
パ ッ チを適用で き る Calpont ソ フ ト ウ ェ アパ ッ ケージ を次に示 し ます。
Calpont プ ラ ッ ト フ ォーム ソ フ ト ウ ェ ア : こ の ソ フ ト ウ ェ アは、 複数モジ ュ ー
ルで構成 さ れ、 Calpont パフ ォ ーマ ン ス機能お よ び Calpont InfiniDB コ ン ソ ール
イ ン タ フ ェース を提供 し ます。
InfiniDB の技術サポー ト か ら 通知があ っ た場合は、 推奨パ ッ チを適用す る こ と をお薦
め し ます。
Calpont InfiniDB のア ッ プグ レー ド
Calpont シ ス テ ム を オ フ ラ イ ンにす る 必要があ り ます。 Calpont InfiniDB を ア ッ プグ
レー ド す る 前に、 フ ロ ン ト エ ン ド デー タ ベースお よ び Calpont デー タ ベース をバ ッ ク
ア ッ プす る 必要があ り ます。 Calpont InfiniDB では、 ア ッ プグ レー ド 処理時に既存の
Calpont.xml フ ァ イ ルが保持 さ れて使用 さ れます。
1. Calpont InfiniDB を停止 し ます。 10 ページの 「シ ス テ ム の停止」 を参照 し て く
だ さ い。
2.
フ ロ ン ト エ ン ド デー タ ベースお よ び Calpont デー タ ベース をバ ッ ク ア ッ プ し ま
す。 63 ページの 「バ ッ ク ア ッ プお よ び リ カバ リ の実行」 を参照 し て く だ さ い。
3. InfiniDB の出荷 メ デ ィ アか ら RPM を コ ピー し ます。
(出荷 メ デ ィ ア を事前に入手 し ます。 ご入用の際には、 担当営業ま で ご連絡 く
だ さ い。)
4.
フ ァ イ ルを展開 し ます。
5. ア ッ プグ レー ド を イ ン ス ト ール し ます。 イ ン ス ト ールやア ッ プグ レー ド の手順
については、 『Calpont InfiniDB イ ン ス ト レーシ ョ ン ガ イ ド 』 を参照 し て く だ さ
い。
シ ス テムの保守 9
ス ト レージに関する情報
通常、 Calpont シ ス テ ムは、 一般的に RAID10 と 呼ばれ る RAID 1+0 ( ミ ラ ーの ス ト ラ イ プ)
で構成 さ れてお り 、 論理ユニ ッ ト 番号 (LUN) でパーテ ィ シ ョ ン化 さ れます。 追加の ス ト
レージ容量が必要にな る 場合の詳細は、 71 ページの 「パフ ォ ーマ ン ス チ ュ ーニ ン グ」 を
参照 し て く だ さ い。
シス テムの操作
シ ス テ ム を停止、 起動、 再起動ま たはシ ャ ッ ト ダ ウ ン で き ます。 ま た、 モジ ュ ールを無効
に し た り 有効に し た り す る こ と がで き ます。
モジ ュ ールを無効に し てか ら シ ス テ ム を再起動す る と 、 無効にな っ たモジ ュ ールは再起動
さ れず、 有効にす る ま でオ フ ラ イ ン の ま ま です。
シ ス テ ム ま たはサーバーを停止す る と き は次のオプシ ョ ン を利用で き ます。
Graceful (デフ ォ ル ト のオプシ ョ ン) : プ ロ セ ス は、 そのプ ロ セ ス で必要な段階的
シ ャ ッ ト ダ ウ ン操作を実行 し ます。
Forceful : プ ロ セ ス は、 その状態に関係な く 停止 さ れ ます。
Acknowledgement Yes : 操作の実行が成功 し た場合ま たは失敗 し た場合に、 シ ス テ
ム か ら 通知 さ れ ます。
Acknowledgement No (デフ ォ ル ト のオプシ ョ ン) : シ ス テ ムは、 コ マ ン ド の受信時
に成功 メ ッ セージ を戻 し ますが、 操作は ま だ処理中であ る 可能性があ り ます。
シ ス テムの停止
シ ス テ ム を停止す る と 、 アプ リ ケーシ ョ ン プ ロ セ ス が停止 さ れ ます。 管理 コ ン ソ ールお よ
びシ ス テ ム ア ラ ーム をサポー ト す る プ ラ ッ ト フ ォ ーム プ ロ セ ス はア ク テ ィ ブな ま ま です。
シ ス テ ム ま たはサーバーを停止 し てす ぐ にプ ロ セ ス を再起動す る 場合 (通常、 シ ス テ ム ま
たはサーバーがハン グ ア ッ プ し た場合) は、 シ ス テ ム ま たはサーバーを再起動で き ます
(11 ページの 「シ ス テ ム の再起動」 を参照)。
シ ス テ ム を停止す る には
1. Calpont InfiniDB コ ン ソ ールで stopSystem と 入力 し ます。
2. [Y] を押 し ます。
シ ス テ ム プ ロ セ ス が停止 し ます。
10 シ ス テムの保守
シ ス テムまたはモ ジ ュ ールの起動
次の コ マ ン ド を使用 し てシ ス テ ム ま たはモジ ュ ールのアプ リ ケーシ ョ ン プ ロ セ ス を起
動で き ます。
シ ス テ ム を起動す る には
Calpont InfiniDB コ ン ソ ールで startSystem と 入力 し ます。
シ ス テ ム プ ロ セ ス が起動 し ます。
シ ス テムの再起動
アプ リ ケーシ ョ ン プ ロ セ ス を停止 し てす ぐ に起動す る 場合は、 再起動を実行で き ま
す。 次の コ マ ン ド を使用 し て シ ス テ ム ま たはモジ ュ ールのアプ リ ケーシ ョ ンプ ロ セ ス
を再起動 し ます。
シ ス テ ム を再起動す る には
Calpont InfiniDB コ ン ソ ールで restartSystem と 入力 し ます。
シ ス テ ム プ ロ セ ス が停止 し 、 再起動 し ます。
シ ス テムのシ ャ ッ ト ダウ ン
シ ャ ッ ト ダ ウ ン を実行す る と 、 すべての Calpont プ ロ セ ス が停止 さ れ ます。 こ の コ マ
ン ド は、 主に、 ソ フ ト ウ ェ アのア ッ プグ レー ド を実行す る と き に使用 し ます。
シ ス テ ム を シ ャ ッ ト ダ ウ ンす る には
1. Calpont InfiniDB コ ン ソ ールで shutdownSystem と 入力 し ます。
2. [Y] を押 し ます。
シ ス テ ム がシ ャ ッ ト ダ ウ ン さ れ ます。
シ ス テムモ ジ ュ ールの無効化および有効化
次の コ マ ン ド を使用す る と 、 シ ス テ ム がア ク テ ィ ブ ま たはオ フ ラ イ ンの状態でモ
ジ ュ ールを無効ま たは有効にで き ます。
注意 : モジ ュ ールを無効にす る と 、 デー タ が PM に対 し て ロ ーカルであ る 場合は、
デー タ の損失が発生す る こ と があ り ます。 デー タ が SAN にマ ウ ン ト さ れてい る 場合
は、 DBRoot を他の PM に移動す る 必要があ り ます。 DBRoot の詳細は、 イ ン ス ト レー
シ ョ ン ガ イ ド のデー タ ベース フ ァ イ ル (DBRoot) に関す る 説明を参照 し て く だ さ い。
ま た、 DBRoot の移動の詳細は、 こ のガ イ ド の 78 ページの 「DBRoot の移動」 を参照
し て く だ さ い。
シ ス テムの保守 11
モジ ュ ールを無効にす る には
1. Calpont InfiniDB コ ン ソ ールで alterSystem-disableModule module_id
と 入力 し ます。
例 : alterSystem-disablemodule PM2, PM3
2. [Y] を押 し ます。
モジ ュ ールが停止 さ れて無効にな り ます。
モジ ュ ールを有効にす る には
1. Calpont InfiniDB コ ン ソ ールで alterSystem-enableModule module_id と
入力 し ます。
例 : altersSystem-enableModule PM2, PM3
2. [Y] を押 し ます。
モジ ュ ールが有効にな り 、 起動 さ れます。
12 シ ス テムの保守
第3章
シ ス テムス テー タ ス
Calpont InfiniDB コ ン ソ ールでは、 サー ド パーテ ィ のネ ッ ト ワ ー ク 監視シ ス テ ム
(NMS) を使用せずにシ ス テ ム を監視で き ます。 よ り 詳細な シ ス テ ムの監視にはサー
ド パーテ ィ の NMS を使用す る こ と をお薦め し ます。 シ ス テ ムは、 出荷時のデフ ォ ル
ト で設定 さ れてい ます。 シ ス テ ムの監視を構成す る 場合は、 27 ページの 「シ ス テ ム ス
テー タ ス の監視の構成」 を参照 し て く だ さ い。
シ ス テムス テー タ スの表示
シ ス テ ム ス テー タ ス では、 シ ス テ ムお よ び配備 さ れてい る すべてのサーバーの状態が
表示 さ れ ます。 次の表は、 利用可能な シ ス テ ムお よ びサーバーの状態を示 し てい ま
す。
シ ス テ ム ス テー タ ス を表示す る には
getSystemStatus と 入力 し ます。
シ ス テ ムお よ びサーバーの状態が表示 さ れ ます。
表 1: シ ス テ ムお よ びモジ ュ ールの状態
状態
定義
Active
シ ス テ ム、 サーバーま たはネ ッ ト ワ ー ク イ ン タ フ ェース カー
ド (NIC) は、 デー タ ベース リ ク エ ス ト の処理に利用可能で
す。
Auto Disabled
サーバーの障害に よ り 、 無効です。
Auto Init
障害 リ カバ リ 時の自動初期化モー ド 。
Auto Offline
障害が発生 し たため、 シ ス テ ム ま たはサーバーがオ フ ラ イ ン
にな っ てい ます。
Busy_Init
ス タ ー ト ア ッ プ時、 ACTIVE 状態にな る 前にモジ ュ ール ま た
はシ ス テ ム に よ っ て、 初期化 タ ス ク が実行 さ れてい ます。
Degraded
サーバーはア ク テ ィ ブですが、 パフ ォーマ ン ス が低下 し てい
ます。 NIC が動作 し ていない場合、 サーバーのパフ ォ ーマ ン
ス が低下 し ます。
Down
通信障害が発生 し てい ます。
シ ス テムス テー タ ス 13
表 1: シ ス テ ムお よ びモジ ュ ールの状態
状態
定義
Failed
シ ス テ ム ま たはサーバーの停止、 起動ま たは再起動の リ ク エ
ス ト に失敗 し ま し た。
Initial
シ ス テ ム の再起動ま たは イ ン ス ト ールを行っ てか ら 操作を行
う ま での初期状態。
Man Disabled
altersystem-disableModule コ マ ン ド の実行に よ り 、 無
効です。
Man Init
start ま たは restart コ マ ン ド 実行時の手動初期化モー ド 。
Man Offline
シ ス テ ム ま たはサーバーは stop ま たは shutdown コ マ ン ド
に よ り 、 オ フ ラ イ ンにな っ てい ます。
Up
通信は正常に行われてい ます。
すべてのサーバーが 「active」 であ る 場合、 シ ス テ ム ス テー タ ス は 「active」 にな り ます。
1 つのサーバーが 「man offline」 の場合、 その他のサーバーが 「active」 であ っ て も 、 シ ス
テ ムは 「man offline」 にな り ます。 シ ス テ ムが 「active」 と 表示 さ れ る には、 配備 さ れてい
る すべてのサーバーが 「active」 であ る 必要があ り ます。
プ ロ セス ス テー タ スの表示
プ ロ セ ス構成デー タ は、 /usr/local/Calpont/etc デ ィ レ ク ト リ にあ る ProcessConfig.xml フ ァ
イ ルに格納 さ れてい ます。
プ ロ セ ス ス テー タ ス を表示す る には
getProcessStatus と 入力 し ます。
プ ロ セ ス ス テー タ ス が表示 さ れ ます。
次の表は、 サポー ト さ れてい る プ ロ セ ス ス テー タ ス を示 し てい ます。
表 2: プ ロ セ ス ス テー タ ス
状態
定義
Active
プ ロ セ ス は完全に機能 し てい ます。
Auto Init
障害 リ カバ リ 時の自動初期化モー ド 。
Auto Offline
障害が発生 し たためプ ロ セ ス がオ フ ラ イ ン にな っ てい ます。
14 シ ス テムス テー タ ス
表 2: プ ロ セ ス ス テー タ ス
状態
定義
Busy Init
ス タ ー ト ア ッ プ時、 ACTIVE 状態にな る 前にプ ロ セ ス に よ っ
て初期化 タ ス ク が実行 さ れてい ます。
Failed
プ ロ セ ス の停止、 起動ま たは再起動 リ ク エ ス ト に失敗 し ま し
た。
Hot Standby
プ ロ セ ス は、 フ ェ イ ルオーバーが発生 し た場合に備え て ス タ
ンバ イ 状態ま たは準備完了状態で動作 し てい ます。
Initial
シ ス テ ム の再起動ま たは イ ン ス ト ールを行っ てか ら 処理が行
われ る ま での状態。
Man Init
start ま たは restart コ マ ン ド 実行時の手動初期化モー ド 。
Man Offline
プ ロ セ ス は stop ま たは shutdown コ マ ン ド に よ り 、 オ フ ラ
イ ン にな っ てい ます。
Standby Init
Hot Standby プ ロ セ ス の start ま たは restart コ マ ン ド 実行
時の手動初期化モー ド 。
ネ ッ ト ワー ク 構成の表示
ネ ッ ト ワ ー ク 構成では、 サーバー情報お よ び NIC の状態が表示 さ れ ます。
ネ ッ ト ワ ー ク シ ス テ ム の構成を表示す る には
getSystemNetworkConfig と 入力 し ます。
シ ス テ ムお よ びサーバーの状態が表示 さ れ ます。
用語
定義
Device Name
サーバーの構成 タ イ プ。 た と えば、 UM ま たは PM と 表示 さ れ
ます。
Device
Description
サーバーの構成 タ イ プお よ び一意の番号付け ス キーム。 た と
えば、 User Module #1 と 表示 さ れます。
NIC ID
こ の フ ィ ール ド は、 各サーバーで利用可能な NIC を示 し ま
す。
Host Name
各サーバーのホ ス ト 名。
シ ス テムス テー タ ス 15
用語
定義
IP Address
各サーバーの IP ア ド レ ス。
NIC State
NIC は 「UP」 ま たは 「DOWN」 のいずれかです。
モ ジ ュ ール情報の表示
モジ ュ ール構成は、 すべてのモジ ュ ールに対す る サーバー名お よ び IP ア ド レ ス を表示 し
ます。
モジ ュ ール構成を表示す る には
getModuleConfig と 入力 し ます。
Module Name Configuration
Module 'um1' Configuration information
ModuleType = um
ModuleDesc = User Module #1
ModuleIPAdd NIC ID 1 = 10.100.7.83
ModuleHostName NIC ID 1 = qaftest7
ModuleIPAdd NIC ID 2 = 10.100.107.83
ModuleHostName NIC ID 2 = qaftest7b
Module 'pm1' Configuration information
ModuleType = pm
ModuleDesc = Performance Module #1
ModuleIPAdd NIC ID 1 = 10.100.7.10
ModuleHostName NIC ID 1 = srvqaperf2
ModuleIPAdd NIC ID 2 = 10.100.107.10
ModuleHostName NIC ID 2 = srvqaperf2b
DBRootIDs assigned = 1
16 シ ス テムス テー タ ス
モ ジ ュ ールの使用率および し き い値の監視
こ の項では、 Calpont InfiniDB に よ っ て監視 さ れ る モジ ュ ールの し き い値お よ びその表
示方法について説明 し ます。
モジ ュ ールの使用率お よ び し き い値を表示す る には
getmoduletype と 入力 し ます。
ModuleType 'um' Configuration information
ModuleDesc = User Module
RunType = LOADSHARE
ModuleCount = 1
ModuleHostName and ModuleIPAddr for NIC ID 1 on
qaftest7 , 10.100.7.83
ModuleHostName and ModuleIPAddr for NIC ID 2 on
qaftest7b , 10.100.107.83
module 'um1' =
module 'um1' =
ModuleCPUCriticalThreshold % = 0
ModuleCPUMajorThreshold % = 0
ModuleCPUMinorThreshold % = 0
ModuleCPUMinorClearThreshold % = 0
ModuleDiskCriticalThreshold % = 90
ModuleDiskMajorThreshold % = 80
ModuleDiskMinorThreshold % = 70
ModuleMemCriticalThreshold % = 90
ModuleMemMajorThreshold % = 0
ModuleMemMinorThreshold % = 0
ModuleSwapCriticalThreshold % = 90
ModuleSwapMajorThreshold % = 80
ModuleSwapMinorThreshold % = 70
ModuleDiskMonitorFileSystem#1 = /
ModuleType 'pm' Configuration information
ModuleDesc = Performance Module
RunType = SIMPLEX
ModuleCount = 6
ModuleHostName and ModuleIPAddr
srvqaperf2 , 10.100.7.10
ModuleHostName and ModuleIPAddr
srvqaperf2b , 10.100.107.10
ModuleHostName and ModuleIPAddr
srvswdev10 , 10.100.7.5
ModuleHostName and ModuleIPAddr
srvswdev10b , 10.100.107.5
ModuleHostName and ModuleIPAddr
srvqaperf3 , 10.100.7.15
ModuleHostName and ModuleIPAddr
srvqaperf3b , 10.100.107.15
for NIC ID 1 on
module 'pm1' =
for NIC ID 2 on
module 'pm1' =
for NIC ID 1 on
module 'pm2' =
for NIC ID 2 on
module 'pm2' =
for NIC ID 1 on
module 'pm3' =
for NIC ID 2 on
module 'pm3' =
シ ス テムス テー タ ス 17
ModuleHostName and ModuleIPAddr for NIC
srvqaperf4 , 10.100.7.81
ModuleHostName and ModuleIPAddr for NIC
srvqaperf4b , 10.100.107.81
ModuleHostName and ModuleIPAddr for NIC
srvqaperf5 , 10.100.7.82
ModuleHostName and ModuleIPAddr for NIC
srvqaperf5b , 10.100.107.82
ModuleHostName and ModuleIPAddr for NIC
srvqaperf7 , 10.100.7.35
ModuleHostName and ModuleIPAddr for NIC
srvqaperf7b , 10.100.107.35
DBRootIDs assigned to module 'pm1' = 1
DBRootIDs assigned to module 'pm2' = 2
DBRootIDs assigned to module 'pm3' = 3
DBRootIDs assigned to module 'pm4' = 4
DBRootIDs assigned to module 'pm5' = 5
DBRootIDs assigned to module 'pm6' = 6
ModuleCPUCriticalThreshold % = 0
ModuleCPUMajorThreshold % = 0
ModuleCPUMinorThreshold % = 0
ModuleCPUMinorClearThreshold % = 0
ModuleDiskCriticalThreshold % = 90
ModuleDiskMajorThreshold % = 80
ModuleDiskMinorThreshold % = 70
ModuleMemCriticalThreshold % = 90
ModuleMemMajorThreshold % = 0
ModuleMemMinorThreshold % = 0
ModuleSwapCriticalThreshold % = 90
ModuleSwapMajorThreshold % = 80
ModuleSwapMinorThreshold % = 70
ModuleDiskMonitorFileSystem#1 = /
ID 1 on
module 'pm4' =
ID 2 on
module 'pm4' =
ID 1 on
module 'pm5' =
ID 2 on
module 'pm5' =
ID 1 on
module 'pm6' =
ID 2 on
module 'pm6' =
モ ジ ュ ールのデ ィ ス ク使用率
各 ロ ーカルサーバー上の フ ァ イ ルシ ス テ ム の使用率を監視で き ます。 各サーバーのデ ィ ス
ク 使用率に対 し て設定可能な し き い値には Critical、 Major お よ び Minor の 3 つがあ
り ます。 し き い値を超え る と 、 ア ラ ームが発行 さ れ ます。
構成 さ れてい る デ ィ ス ク フ ァ イ ルシ ス テ ム の使用率が、 各 し き い値を超え る と 発行 さ れ る
ア ラ ーム を次に示 し ます。
DISK_USAGE_LOW は、使用率が し き い値 ModuleDiskMinorThreshold を超え る
と 設定 さ れます。
DISK_USAGE_MED は、 使用率が し き い値 ModuleDiskMajorThreshold を超え る
と 設定 さ れます。
DISK_USAGE_HIGH は、使用率が し き い値 ModuleDiskCriticalThreshold を超
え る と 設定 さ れ ます。
18 シ ス テムス テー タ ス
こ れ ら のア ラ ームは、 使用率が低下す る と 消去 さ れます。 消去は次の よ う に行われま
す。
DISK_USAGE_HIGH は、 使用率が し き い値 ModuleDiskCriticalThreshold
を下回 る と 消去 さ れ ます。
DISK_USAGE_MED は、 使用率が し き い値 ModuleDiskMajorThreshold を下
回 る と 消去 さ れ ます。
DISK_USAGE_LOW は、 使用率が し き い値 ModuleDiskMinorThreshold を下
回 る と 消去 さ れ ます。
詳細は、 32 ページの 「モジ ュ ールのデ ィ ス ク 使用率を構成す る には」 を参照 し て く だ
さ い。
メ モ リ ー使用率
メ モ リ ー使用率を監視で き ます。 各サーバーの メ モ リ ー使用率に対 し て設定可能な し
き い値には Critical、 Major お よ び Minor の 3 つがあ り ます。 し き い値を超え る と 、 ア
ラ ームが発行 さ れ ます。
構成 さ れてい る デ ィ ス ク フ ァ イ ルシ ス テ ム の使用率が、 各 し き い値を超え る と 発行 さ
れ る ア ラ ーム を次に示 し ます。
MEMORY_USAGE_LOW は、使用率が し き い値 ModuleMemMinorThreshold を
超え る と 設定 さ れます。
MEMORY_USAGE_MED は、使用率が し き い値 ModuleMemMajorThreshold を
超え る と 設定 さ れます。
MEMORY_USAGE_HIGH は、 使用率が し き い値
ModuleMemCriticalThreshold を超え る と 設定 さ れ ます。
こ れ ら のア ラ ームは、 使用率が低下す る と 消去 さ れます。 消去は次の よ う に行われま
す。
MEMORY_USAGE_HIGH は、 使用率が し き い値
ModuleMemCriticalThreshold を下回 る と 消去 さ れ ます。
MEMORY_USAGE_MED は、使用率が し き い値 ModuleMemMajorThreshold を
下回 る と 消去 さ れます。
MEMORY_USAGE_LOW は、使用率が し き い値 ModuleMemMinorThreshold を
下回 る と 消去 さ れます。
スワ ッ プ領域の使用率
ス ワ ッ プ領域の使用率を監視で き ます。 各サーバーの ス ワ ッ プ領域の使用率に対 し て
設定可能な し き い値には Critical、 Major お よ び Minor の 3 つがあ り ます。 し き
い値を超え る と 、 ア ラ ームが発行 さ れ ます。
シ ス テムス テー タ ス 19
構成 さ れてい る ス ワ ッ プ領域の使用率が各 し き い値を超え る と 発行 さ れ る ア ラ ーム を次に
示 し ます。
SWAP_USAGE_LOW は、 使用率が し き い値 ModuleSwapMinorThreshold を超え
る と 設定 さ れます。
SWAP_USAGE_MED は、使用率が し き い値 ModuleSwapMajorThreshold を超え る
と 設定 さ れます。
SWAP_USAGE_HIGH は、 使用率が し き い値 ModuleSwapCriticalThreshold を
超え る と 設定 さ れ ます。
こ れ ら のア ラ ームは、 使用率が低下す る と 消去 さ れます。 消去は次の よ う に行われます。
SWAP_USAGE_HIGH は、 使用率が し き い値 ModuleSwapCriticalThreshold を
下回 る と 消去 さ れ ます。
SWAP_USAGE_MED は、使用率が し き い値 ModuleSwapMajorThreshold を下回 る
と 消去 さ れます。
SWAP_USAGE_LOW は、 使用率が し き い値 ModuleSwapMinorThreshold を下回
る と 消去 さ れます。
デ ィ ス クの し き い値
サーバーの フ ァ イ ルシ ス テ ム が、 指定 し た率を使用す る と 警告 さ れ る よ う に し き い値を設
定で き ます。
各サーバーのデ ィ ス ク 使用率に対 し て設定可能な し き い値には Critical、 Major お よ
び Minor の 3 つがあ り ます。 し き い値を超え る と 、 ア ラ ームが発行 さ れ ます。
デ ィ ス ク フ ァ イ ルシ ス テ ムの使用率が、 各 し き い値を超え る と 発行 さ れ る ア ラ ーム を次に
示 し ます。
DISK_USAGE_LOW は、使用率が し き い値 RAIDMinorThreshold を超え る と 設定 さ
れます。
DISK_USAGE_MED は、使用率が し き い値 RAIDMajorThreshold を超え る と 設定 さ
れます。
DISK_USAGE_HIGH は、使用率が し き い値 RAIDCriticalThreshold を超え る と 設
定 さ れ ます。
こ れ ら のア ラ ームは、 使用率が低下す る と 次の よ う に消去 さ れ ます。
DISK_USAGE_HIGH は、使用率が し き い値 RAIDCriticalThreshold を下回 る と 消
去 さ れ ます。
DISK_USAGE_MED は、使用率が し き い値 RAIDMajorThreshold を下回 る と 消去 さ
れます。
DISK_USAGE_LOW は、使用率が し き い値 RAIDMinorThreshold を下回 る と 消去 さ
れます。
20 シ ス テムス テー タ ス
CPU の し き い値
サーバーの CPU 使用率が指定 し た率に到達す る と 警告 さ れ る よ う に し き い値を設定
で き ます。
サーバーの CPU 使用率には Critical、 Major、 Minor お よ び MinorClear の 4 つ
の し き い値があ り ます。 し き い値を超え る と 、 ア ラ ーム が発行 さ れます。 し き い値を
無効にす る には、 し き い値を 0 に設定 し ます。
サーバーの合計 CPU 使用率が各 し き い値を超え る と 発行 さ れ る ア ラ ーム を次に示 し
ます。
CPU_USAGE_LOW は、CPU が し き い値 ModuleCPUMinorThreshold を超え る
と 設定 さ れ ます。
CPU_USAGE_MED は、CPU が し き い値 ModuleCPUMajorThreshold を超え る
と 設定 さ れ ます。
CPU_USAGE_HIGH は、CPU が し き い値 ModuleCPUCriticalThreshold を超
え る と 設定 さ れ ます。
こ れ ら のア ラ ームは、 CPU 使用率が低下す る と 消去 さ れ ます。 ア ラ ームの ス ラ ッ シ ン
グ を回避す る ために、 次の よ う に消去が行われ ます。
CPU_USAGE_HIGH は、CPU 使用率が し き い値 ModuleCPUMajorThreshold を
下回 る と 消去 さ れます。
CPU_USAGE_MED は、CPU 使用率が し き い値 ModuleCPUMinorThreshold を
下回 る と 消去 さ れます。
CPU_USAGE_LOW は、 CPU 使用率が し き い値
ModuleCPUMinorClearThreshold を下回 る と 消去 さ れ ます。
ア ラ ームの監視
ア ラ ームは、 シ ス テ ム、 サーバー、 プ ロ セ ス ま たはハー ド ウ ェ アが停止 し た場合、 電
源投入時テ ス ト で警告 さ れた場合、 プ ロ セ ス が失敗ま たは タ イ ム ア ウ ト し た場合、 し
き い値率に達 し た場合に ト リ ガー さ れ ます。 こ れ ら の し き い値は次に対 し て設定 さ れ
てい ます。
モジ ュ ールのデ ィ ス ク 使用率
メ モ リ ー使用率
ス ワ ッ プ領域の使用率
RAID 使用率
CPU 使用率
こ の項では、 ア ラ ーム の表示方法お よ びア ラ ーム の定義について説明 し ます。 デフ ォ
ル ト の し き い値を変更す る には、 27 ページの 「シ ス テ ム ス テー タ ス の監視の構成」 を
参照 し て く だ さ い。
シ ス テムス テー タ ス 21
ア ク テ ィ ブ なア ラ ームの表示
ア ク テ ィ ブな ア ラ ーム を表示す る には
getActiveAlarms と 入力 し ます。
ア ラ ーム フ ァ イ ルの例を次に示 し ます。
アー カ イ ブ済みア ラ ームの表示
ア ラ ームは毎日午前 0 時にアーカ イ ブ さ れ ます。 Calpont シ ス テ ム では、 7 日間のア ラ ー
ム履歴が保存 さ れ ます。
ア ラ ーム履歴を表示す る には
getAlarmHistory (yyyymmdd) と 入力 し ます。
日付のかわ り に today と 入力す る と 、 現在の日付のア ラ ーム ロ グ を取得で き ます。
文の例 :
getAlarmHistory today
getAlarmHistory 20070923
22 シ ス テムス テー タ ス
表 3: ア ラ ームの定義
記述
定義
Alarm ID#1 CPU_USAGE_HIGH
示 さ れてい る CPU の使用率が高 し き い値
を超え てい ます。
Alarm ID#2 CPU_USAGE_MED
示 さ れてい る CPU の使用率が中 し き い値
を超え てい ます。
Alarm ID#3 CPU_USAGE_LOW
示 さ れてい る CPU の使用率が低 し き い値
を超え てい ます。
Alarm ID#4 DISK_USAGE_HIGH
示 さ れてい る デ ィ ス ク ド ラ イ ブの使用率
が高 し き い値を超え てい ます。
Alarm ID#5 DISK_USAGE_MED
示 さ れてい る デ ィ ス ク ド ラ イ ブの使用率
が中 し き い値を超え てい ます。
Alarm ID#6 DISK_USAGE_LOW
示 さ れてい る デ ィ ス ク ド ラ イ ブの使用率
が低 し き い値を超え てい ます。
Alarm ID#7 MEMORY_USAGE_HIGH
示 さ れてい る メ モ リ ーの使用率が高 し き
い値を超え てい ます。
Alarm ID#8 MEMORY_USAGE_MED
示 さ れてい る メ モ リ ーの使用率が中 し き
い値を超え てい ます。
Alarm ID#9 MEMORY_USAGE_LOW
示 さ れてい る メ モ リ ーの使用率が低 し き
い値を超え てい ます。
Alarm ID #10 SWAP_USAGE_HIGH
示 さ れてい る ス ワ ッ プの使用率が高 し き
い値を超え てい ます。
Alarm ID #11 SWAP_USAGE_MED
示 さ れてい る ス ワ ッ プの使用率が中 し き
い値を超え てい ます。
Alarm ID #12 SWAP_USAGE_LOW
示 さ れてい る ス ワ ッ プの使用率が低 し き
い値を超え てい ます。
Alarm ID #13 PROCESS_DOWN_AUTO
プ ロ セ ス は自動的に停止 し ま し た。
Alarm ID #14 MODULE_DOWN_AUTO
モジ ュ ールは自動的に停止 し ま し た。
Alarm ID #15 SYSTEM_DOWN_AUTO
シ ス テ ムは自動的に停止 し ま し た。
Alarm ID #16 POWERON_TEST_SEVERE
モジ ュ ールの電源投入時に重大な警告エ
ラ ーが発生 し ま し た。 テ ス ト の失敗は、
パフ ォ ーマ ン ス が低下 し た状態でシ ス テ
ム が実行 さ れてい る こ と を示 し てい ます。
シ ス テムス テー タ ス 23
記述
定義
Alarm ID #17 POWERON_TEST_WARNING
警告エ ラ ーが発生 し ま し た。 テ ス ト の失
敗は、 パフ ォ ーマ ン ス がほ と ん ど ま たは
ま っ た く 低下 し ていない状態でシ ス テ ム
が実行 さ れてい る こ と を示 し てい ます。
Alarm ID #18 HARDWARE_HIGH
ハー ド ウ ェ アデバ イ ス の リ ソ ース が高 し
き い値を超え てい ます。
Alarm ID #19 HARDWARE_MED
ハー ド ウ ェ アデバ イ ス の リ ソ ース が中 し
き い値を超え てい ます。
Alarm ID #20 HARDWARE_LOW
ハー ド ウ ェ アデバ イ ス の リ ソ ース が低 し
き い値を超え てい ます。
Alarm ID #21 PROCESS_DOWN_MANUAL
プ ロ セ ス は手動で停止 さ れ ま し た。
Alarm ID #22 MODULE_DOWN_MANUAL
モジ ュ ールは手動で停止 さ れ ま し た。
Alarm ID #23 SYSTEM_DOWN_MANUAL
シ ス テ ムは手動で停止 さ れ ま し た。
Alarm ID #24 EXT_DEVICE_DOWN_AUTO
外部デバ イ ス は自動的に停止 し ま し た。
Alarm ID #25 PROCESS_INIT_FAILURE
プ ロ セ ス の初期化が失敗ま たは タ イ ム ア
ウ ト し ま し た。
Alarm ID #26 NIC_DOWN_AUTO
NIC イ ン タ フ ェース は自動的に停止 し ま
し た。
Alarm ID #27 DBRM_LOAD_DATA_ERROR
DBRM デー タ の ロ ー ド 時にエ ラ ーが発生
し ま し た。
Alarm ID #28 INVALID_SW_VERSION
ユーザーモジ ュ ールで実行 さ れてい る
バージ ョ ン と 一致 し ない無効な ソ フ ト
ウ ェ アバージ ョ ン がモジ ュ ールで見つか
り ま し た。
Alarm ID #29
STARTUP_DIAGNOSTICS_FAILURE
モジ ュ ールに対 し てシ ス テ ム ス タ ー ト
ア ッ プ診断が実行 さ れた と き に障害が発
生 し ま し た。 障害の詳細は、 ロ グ フ ァ イ
ルを参照 し て く だ さ い。
Alarm ID #30 CONN_FAILURE
シ ス テ ム処理のパフ ォ ーマ ン ス に影響す
る 可能性があ る 接続障害が発生 し ま し た。
Alarm ID #31 DBRM_READ_ONLY
現在、 DBRM は読取 り 専用のため、 デー
タ ベース を更新で き ません。
24 シ ス テムス テー タ ス
記述
定義
ALARM ID #32 EE_LICENSE_EXPIRED
エ ン タ ープ ラ イ ズ版の ラ イ セ ン ス の期限
が切れてい ます。 担当営業ま たは
[email protected] ま で ご連絡 く だ
さ い。
ALARM ID #33
MODULE_SWITCH_ACTIVE
親 OAM モジ ュ ールの停止、 ま たは
switchParentOAMModule コ マ ン ド の実
行に よ っ て、 親 OAM モジ ュ ールの変更
が発生 し ま し た。
表 4: ア ラ ームの重大度
重大度
説明
Critical
デー タ 損失の可能性があ り 、 す ぐ に対応
が必要な状況が発生 し ま し た。
Major
サービ ス に影響 し 、 対応が必要な状況が
発生 し ま し た。
Minor
現在はサービ ス に影響 し ていないが、 今
後サービ ス に影響 し ない よ う に対応が必
要な状況が発生 し ま し た。
Warning
警告。
Info
情報のみ。
上位 CPU ユーザーの表示
Calpont InfiniDB の 1 つのモジ ュ ール ま たはすべてのモジ ュ ールの上位ユーザーを表示
で き ます。 デフ ォ ル ト では上位 5 人のユーザーが表示 さ れますが、 1-10 の範囲のプ ロ
セ ス を表示す る よ う に指定で き ます。 CPU の使用率が 1% 未満のプ ロ セ ス は表示 さ れ
ません。
1 つのモジ ュ ールの上位ユーザーを監視す る には
getmodulecpuusers module_ID と 入力 し ます。
た と えば、 ユーザーモジ ュ ール 1 の上位 CPU ユーザーを監視す る コ マ ン ド は次の と
お り です。
getmodulecpuusers um1
シ ス テムス テー タ ス 25
Calpont InfiniDB の上位ユーザーを監視す る には
getsystemcpuusers と 入力 し ます。
リ ソ ース使用率の監視
シ ス テ ム の CPU 使用率、 メ モ リ ー、 キ ャ ッ シ ュ お よ びス ワ ッ プ領域を モジ ュ ールご と に
監視で き ます。
シ ス テ ム の リ ソ ース を監視す る には
getsystemresourceusage と 入力 し ます。
26 シ ス テムス テー タ ス
第4章
シ ス テムス テー タ スの監視の構成
こ の章では、 シ ス テ ム、 プ ロ セ ス、 サーバー、 CPU 使用率、 デ ィ ス ク 使用率、 RAID、
メ モ リ ー使用率お よ びス ワ ッ プ領域を構成す る 方法について説明 し ます。
シ ス テ ム の監視の詳細は、 13 ページの 「シ ス テ ム ス テー タ ス」 を参照 し て く だ さ い。
ま た、 Calpont コ マ ン ド の全 リ ス ト については、 4 ページ を参照 し て く だ さ い。
管理 コ ン ソ ールの概要
こ の章では、 次の も の を構成す る 方法について説明 し ます。
システム
モジ ュ ール
プロセス
ア ラ ーム
ロ ギング
Calpont 構成フ ァ イル
管理 コ ン ソ ールを使用 し て シ ス テ ム を構成す る 場合、 変更は 「etc」 デ ィ レ ク ト リ にあ
る XML フ ァ イ ルに格納 さ れ ます。 こ れ ら の構成項目の一部は、 イ ン ス ト ール時に
Calpont プ ロ セ スお よ び Calpont postConfig ス ク リ プ ト に よ っ て更新 さ れ ます。
AlarmConfig.xml : ア ラ ーム の構成フ ァ イ ル。
Calpont.xml : シ ス テ ムお よ びモジ ュ ールの構成フ ァ イ ル。
ConsoleCmds.xml : 管理 コ ン ソ ールの ツールヘルプ フ ァ イ ル。
ProcessConfig.xml : プ ロ セ ス構成フ ァ イ ル。
Linux シ ェ ル
Linux シ ェ ルに接続す る には、 SSH ク ラ イ ア ン ト が必要です。 Linux シ ェ ルに接続 し た
後、 管理 コ ン ソ ールを実行す る コ マ ン ド を入力す る と 、 管理 コ ン ソ ールは Linux シ ェ
ルで実行 さ れ ます。 Linux シ ェ ルの多 く の機能を管理 コ ン ソ ールで利用で き ます。 次
に例を示 し ます。
コ マ ン ド 名の一部を入力 し て コ マ ン ド を実行す る
上矢印お よ び下矢印を使用 し て前の コ マ ン ド を再呼出 し す る
シ ス テムス テー タ スの監視の構成 27
ホ ッ ト キーを使用 し て コ マ ン ド の編集お よ びナビ ゲー ト を行 う
管理 コ ン ソ ール使用の ヒ ン ト については、 2 ページの 「Calpont InfiniDB コ ン ソ ールの ヒ ン
ト 」 を参照 し て く だ さ い。
シス テムの構成
変更で き る シ ス テ ム設定は、 ハー ト ビー ト の間隔 と 数、 RAID し き い値、 監視、 ア ラ ーム
お よ び ロ ギ ン グの構成です。 シ ス テ ム構成フ ァ イ ルには、 Calpont デー タ ベース プ ラ ッ ト
フ ォ ーム で使用 さ れ る ソ フ ト ウ ェ ア と ハー ド ウ ェ アの現在のバージ ョ ン も 表示 さ れ ます。
こ の情報は、 ト ラ ブルシ ュ ーテ ィ ン グに役立つ場合があ り ます。
注意 : 構成フ ァ イ ルのほ と ん ど のデー タ は、 /usr/local/Calpont/etc デ ィ レ ク ト リ にあ
る Calpont.xml フ ァ イ ルに格納 さ れてい ます。 構成フ ァ イ ルのマ ス タ ー コ ピーは、 プ ラ
イ マ リ のパフ ォ ーマ ン ス モジ ュ ールに保持 さ れ ます。 シ ス テ ムは、 ス タ ー ト ア ッ プ時に構
成フ ァ イ ルか ら 情報を読み取っ て、 シ ス テ ム のア ク テ ィ ビ テ ィ に必要な リ ソ ース (デー タ
キ ャ ッ シ ュ な ど) を割 り 当て ます。 複数サーバー構成時に こ の フ ァ イ ルに変更を行 う 場合
は、 変更がすべてのモジ ュ ールに分散 さ れ る よ う に、 こ のプ ラ イ マ リ のパフ ォーマ ン ス モ
ジ ュ ールに対 し て行 う 必要があ り ます。
一部のデー タ は、 getSystemConfig コ マ ン ド を実行す る と 他の ソ ース か ら 抽出 さ れます。
シ ス テ ム構成を表示す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. getSystemConfig と 入力 し て [Enter] を押 し ます。
getsystemconfig
Wed Mar 28 10:17:49 2012
System Configuration
SystemName = sn-qaperf-1
SoftwareVersion = 3.0
SoftwareRelease = 0
ParentOAMModuleName = pm1
StandbyOAMModuleName = pm2
NMSIPAddr = 0.0.0.0
ModuleHeartbeatPeriod = 1
ModuleHeartbeatCount = 3
DBRootCount = 6
DBRoot1 = /usr/local/Calpont/data1
DBRoot2 = /usr/local/Calpont/data2
DBRoot3 = /usr/local/Calpont/data3
DBRoot4 = /usr/local/Calpont/data4
DBRoot5 = /usr/local/Calpont/data5
DBRoot6 = /usr/local/Calpont/data6
DBRMRoot = /usr/local/Calpont/data1/systemFiles/dbrm/BRM_saves
ExternalCriticalThreshold = 90
ExternalMajorThreshold = 80
28 シ ス テムス テー タ スの監視の構成
ExternalMinorThreshold = 70
MaxConcurrentTransactions = 1000
SharedMemoryTmpFile = /tmp/CalpontShm
VersionBufferFileSize = 1
OIDBitmapFile = /usr/local/Calpont/data1/systemFiles/dbrm/
oidbitmap
FirstOID = 3000
TransactionArchivePeriod = 10
ス ト レージ構成を表示す る には、 getstorageconfig コ マ ン ド を実行 し て、 pm に割
り 当て ら れてい る DBRoot を、 シ ス テ ム の ス ト レージ構成 と と も に参照 し ます。
ス ト レージ構成を表示す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. getStorageConfig と 入力 し て [Enter] を押 し ます。
getstorageconfig
Wed Mar 28 10:40:34 2012
System Storage Configuration
Storage Type = internal
System DBRoot count = 6
DBRoot IDs assigned to 'pm1'
DBRoot IDs assigned to 'pm2'
DBRoot IDs assigned to 'pm3'
DBRoot IDs assigned to 'pm4'
DBRoot IDs assigned to 'pm5'
DBRoot IDs assigned to 'pm6'
=
=
=
=
=
=
1
2
3
4
5
6
モ ジ ュ ールのハー ト ビー ト の設定
ハー ト ビー ト の監視は、 Calpont デー タ ベース プ ラ ッ ト フ ォ ームのモジ ュ ール間で行
い ます。 モジ ュ ールのハー ト ビー ト 設定は、 Calpont デー タ ベース プ ラ ッ ト フ ォ ーム
のすべてのモジ ュ ールで同 じ です。
モジ ュ ールのハー ト ビー ト の間隔 と は、 ハー ト ビー ト のテ ス ト を実行す る 間隔を指 し
ます。 た と えば、 間隔を 5 に設定す る と 、 ハー ト ビー ト のテ ス ト は 5 秒ご と に実行 さ
れます。
モジ ュ ールのハー ト ビー ト 数 と は、 障害が処理 さ れ る ま での障害の連続発生回数を指
し ます。 ハー ト ビー ト の監視を無効にす る には、 間隔を -1 に設定 し ます。
モジ ュ ールのハー ト ビー ト の間隔お よ び数を設定す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
シ ス テムス テー タ スの監視の構成 29
2. setSystemConfig ModuleHeartbeatPeriod n (n は秒数) と 入力 し て
[Enter] を押 し ます。
間隔が正常に設定 さ れ る と 、 メ ッ セージが表示 さ れます。
3. setSystemConfig ModuleHeartbeatCount n (n は障害の数) と 入力 し
て [Enter] を押 し ます。
数が正常に設定 さ れ る と 、 メ ッ セージが表示 さ れ ます。
デ ィ ス ク の し き い値の構成
サーバーの フ ァ イ ルシ ス テ ム が、 指定 し た率を使用す る と 警告 さ れ る よ う に し き い値を設
定で き ます。
各サーバーの メ モ リ ー使用率に対 し て設定可能な し き い値には Critical、 Major お よ び
Minor の 3 つがあ り ます。 し き い値を超え る と 、 ア ラ ーム が発行 さ れます。 し き い値を無
効にす る には、 し き い値を 0 に設定 し ます。
デ ィ ス ク フ ァ イ ルシ ス テ ムの使用率が、 各 し き い値を超え る と 発行 さ れ る ア ラ ーム を次に
示 し ます。
DISK_USAGE_LOW は、 使用率が し き い値 EXTERNALMinorThreshold を超え る と 設
定 さ れ ます。
DISK_USAGE_MED は、使用率が し き い値 EXTERNALMajorThreshold を超え る と 設定
さ れ ます。
DISK_USAGE_HIGH は、使用率が し き い値 EXTERNALCriticalThreshold を超え る と
設定 さ れ ます。
こ れ ら のア ラ ームは、 使用率が低下す る と 次の よ う に消去 さ れ ます。
DISK_USAGE_HIGH は、使用率が し き い値 EXTERNALCriticalThreshold を下回 る と
消去 さ れ ます。
DISK_USAGE_MED は、使用率が し き い値 EXTERNALMajorThreshold を下回 る と 消去
さ れ ます。
DISK_USAGE_LOW は、 使用率が し き い値 EXTERNALMinorThreshold を下回 る と 消
去 さ れ ます。
シ ス テ ム構成パ ラ メ ー タ を次に示 し ます。
EXTERNALMinorThreshold
EXTERNALMajorThreshold
EXTERNALCriticalThreshold
デ ィ ス ク の し き い値を構成す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. setSystemConfig EXTERNAL(Minor/Major/Critical)Threshold
n (n はフ ァ イ ルシ ス テ ムの使用率) と 入力 し て [Enter] を押 し ます。
し き い値が正常に設定 さ れ る と 、 メ ッ セージが表示 さ れ ます。
30 シ ス テムス テー タ スの監視の構成
た と えば、 フ ァ イ ルシ ス テ ム の使用率が 25% の と き に、 モジ ュ ールでデ ィ ス ク 使用率
の中レベルのア ラ ーム が発行 さ れ る よ う にす る には、 次の コ マ ン ド を入力 し ます。
setSystemConfig EXTERNALMajorThreshold 25
ヒ ン ト : し き い値を設定す る と き に、 Minor を Major よ り も 小 さ
く し 、 Major を Critical よ り も 小 さ く す る 必要があ り ます。
ト ラ ンザク シ ョ ン ログを アー カ イ ブする間隔の構成
シ ス テ ム の構成フ ァ イ ルを構成す る こ と に よ っ て、 ト ラ ンザ ク シ ョ ン ロ グ フ ァ イ ルを
アーカ イ ブす る 間隔を変更で き ます。 デフ ォ ル ト の間隔は 10 分に設定 さ れてい ます。
0-60 分の間で選択で き ます。 ト ラ ンザ ク シ ョ ン ロ グの詳細は、 67 ページの 「 ト ラ ン
ザ ク シ ョ ン」 を参照 し て く だ さ い。
ト ラ ンザ ク シ ョ ン ロ グ を アーカ イ ブす る 間隔を変更す る には
1. SSH ク ラ イ ア ン ト を使用 し て Linux に接続 し ます。
ユーザー名お よ びパ ス ワー ド の入力を求め ら れます。
2. Linux のユーザー名お よ びパ ス ワー ド を入力 し て [Enter] を押 し ます。
Linux プ ロ ン プ ト が表示 さ れ ます。
3. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
cmconsole のプ ロ ン プ ト が表示 さ れ ます。
4. setsystemconfig TransactionArchivePeriod (log period)
と 入力 し て [Enter] を押 し ます。
モ ジ ュ ールの構成
次のモジ ュ ール項目を構成で き ます。
CPU の し き い値
デ ィ ス ク の フ ァ イ ルシ ス テ ム使用率の監視
デ ィ ス ク の し き い値
モジ ュ ール メ モ リ ーの し き い値
モジ ュ ール ス ワ ッ プの し き い値
シ ス テムス テー タ スの監視の構成 31
モ ジ ュ ールの CPU し き い値の構成
モジ ュ ールの CPU 使用率が指定 し た率に到達す る と 警告 さ れ る よ う に、 し き い値を設定
で き ます。 CPU の し き い値の詳細は、 21 ページの 「CPU の し き い値」 を参照 し て く だ さ
い。
モジ ュ ールの CPU 使用率には Critical、 Major、 Minor お よ び MinorClear の 4 つの し
き い値があ り ます。 し き い値を超え る と 、 ア ラ ーム が発行 さ れ ます。 し き い値を無効にす
る には、 し き い値を 0 に設定 し ます。
CPU の し き い値を構成す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. setModuleTypeConfig (module name) ModuleCPU(Clear/Minor/
Major/Critical)Threshold n(n は CPU 使用率) と 入力 し て [Enter] を押 し
ます。
CPU の し き い値が設定 さ れ、 メ ッ セージが表示 さ れます。
た と えば、 モジ ュ ールのア ラ ー ト を 50% で Minor に設定す る には、 次の よ う に入力 し ま
す。
setModuleTypeConfig pm1 ModuleCPUMinorThreshold 50
ヒ ン ト : し き い値を設定す る と き に、 Minor を Major よ り も 小 さ く し 、
Major を Critical よ り も 小 さ く す る 必要があ り ます。
モ ジ ュ ールのデ ィ ス ク 使用率の構成
各 ロ ーカルモジ ュ ール上の フ ァ イ ルシ ス テ ム の使用率を監視で き ます。 モジ ュ ールのデ ィ
ス ク 使用率の詳細は、 18 ページの 「モジ ュ ールのデ ィ ス ク 使用率」 を参照 し て く だ さ い。
モジ ュ ールのデ ィ ス ク 使用率を構成す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. setModuleTypeConfig (module name) ModuleDisk(Minor/
Major/Critical)Threshold n (n はデ ィ ス ク シ ス テ ム の使用率) と 入力 し
て [Enter] を押 し ます。
モジ ュ ールのデ ィ ス ク 使用率の し き い値が設定 さ れ、 メ ッ セージが表示 さ れます。
32 シ ス テムス テー タ スの監視の構成
ヒ ン ト : し き い値を設定す る と き に、 Minor を Major よ り も 小 さ
く し 、 Major を Critical よ り も 小 さ く す る 必要があ り ます。
スワ ッ プ領域の使用率の構成
ス ワ ッ プ領域の使用率を監視で き ます。 各サーバーの ス ワ ッ プ領域の使用率に対 し て
設定可能な し き い値には Critical、 Major お よ び Minor の 3 つがあ り ます。 し き い
値を超え る と 、 ア ラ ーム が発行 さ れ ます。 し き い値を無効にす る には、 し き い値を 0
に設定 し ます。
ス ワ ッ プ領域の使用率の詳細は、 19 ページの 「ス ワ ッ プ領域の使用率」 を参照 し て く
だ さ い。
モジ ュ ールの ス ワ ッ プ領域の使用率を構成す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. setModuleTypeConfig (module name) ModuleSwap(Minor/
Major/Crictical)Threshold n (n は ス ワ ッ プ領域の使用率) と 入力
し て [Enter] を押 し ます。
サーバーの ス ワ ッ プ領域の使用率の し き い値が設定 さ れ、 メ ッ セージが表示 さ
れます。
ヒ ン ト : し き い値を設定す る と き に、 Minor を Major よ り も 小 さ
く し 、 Major を Critical よ り も 小 さ く す る 必要があ り ます。
ア ラ ームの構成
こ の章では、 特定の イ ベン ト ま たは条件でア ラ ーム を ト リ ガーす る よ う にシ ス テ ムお
よ びサーバーを構成す る 方法について説明 し ま し た。 30 分間に ト リ ガーで き る ア ラ ー
ム の合計数を設定す る こ と も で き ます。 Calpont シ ス テ ムには、 CalpontAlarm.xml
フ ァ イ ルに格納 さ れてい る 事前構成済みのア ラ ーム フ ァ イ ルが含まれ ます。 こ の フ ァ
イ ルでは、 すべてのア ラ ーム の し き い値が 100 に設定 さ れてい ます。 こ れは、 ア ラ ー
ム の ト リ ガーが停止 さ れ る ま でに、 ア ラ ーム を 30 分間に最大 100 回ま で ト リ ガーで
き る こ と を意味 し ます。
特定のア ラ ーム が レ ポー ト さ れない よ う にす る には、 ア ラ ームの し き い値を 0 に設定
し ます。
シ ス テムス テー タ スの監視の構成 33
ア ラ ームを構成する手順
ア ラ ーム を構成す る には、 ア ラ ーム ID 番号 と 、 変更す る パ ラ メ ー タ を指定 し 、
setalarmconfig コ マ ン ド を使用 し ます。
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. setAlarmConfig (alarmID#) Threshold n (n は 30 分間に ト リ ガーで
き る ア ラ ームの最大回数) と 入力 し て [Enter] を押 し ます。
た と えば、 ア ラ ーム ID 番号 23 の し き い値が 25 にな る よ う に変更す る 場合は、 Calpont プ
ロ ン プ ト で次の よ う に入力 し ます。
setAlarmConfig 23 Threshold 25
ロギン グの構成
ロ グの構成は、 getLogConfig コ マ ン ド を使用 し て表示で き ます。
ロ ギ ン グには、 5 つの レベルがあ り ます。
Critical
Error
Warning
Info
Debug
InfiniDB シ ス テ ム内の各サーバーに異な る ロ グ レベルを構成で き ます。 InfiniDB ロ ギ ン グ
は、 syslog 機能を介 し てサポー ト さ れてい る ため、 syslog サービ ス が各サーバーで常に実
行 さ れてい る 必要があ り ます。
ロ グの構成は、 EnableLog コ マ ン ド と DisableLog コ マ ン ド を使用 し て、 有効お よ び
無効にで き ます。 こ の 5 つの ロ ギ ン グ レベルは、 個別に有効お よ び無効にで き ます。 ま た
は、 ロ グ レベルに 「all」 を入力す る と 、 5 つすべて を有効お よ び無効にで き ます。
メ ッ セージは、 一意の番号で識別 さ れ ます。 次の syslog メ ッ セージで、 1-4 の項目は
syslog に よ っ て自動的に生成 さ れ、 5-8 の項目は メ ッ セージオブジ ェ ク ト 自体か ら 取得 さ
れます。
1. 日時
2. 元のホ ス ト
3. サブシ ス テ ム名
4. PID
5.
メ ッ セージの秒数お よ びマ イ ク ロ 秒数
34 シ ス テムス テー タ スの監視の構成
6. セ ッ シ ョ ン ID、 ト ラ ンザ ク シ ョ ン ID お よ びス レ ッ ド ID
7.
メ ッ セージの重大度レベル ( メ ッ セージ ク ラ ス の 1 文字の接頭辞) :
D : デバ ッ グ
I : 情報
W : 警告
E : エラー
C : 重大
8. サブシ ス テ ム ID : 2 桁のサブシ ス テ ム ID。
9.
メ ッ セージ番号 : 4 桁のエ ラ ー番号。 エ ラ ー メ ッ セージ ID (お よ びエ ラ ー メ ッ
セージのテ キ ス ト ) は、 サブシ ス テ ム の境界を越え て共有で き ます。 こ れに
よ っ て、 共通のエ ラ ー メ ッ セージ を再利用で き ます。
10. メ ッ セージテ キ ス ト : すべての固定引数が置換 さ れた後の書式付 き のエ ラ ーテ
キス ト 。
こ れ ら の ロ グ フ ァ イ ルは、 各サーバーの /var/log/Calpont デ ィ レ ク ト リ に格納 さ れ
ます。
ロギングの有効化および無効化
ロ ギ ン グ を有効にす る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. enableLog (module_ID)(log_level) と 入力 し て [Enter] を押 し ま
す。
た と えば、 サーバー PM1 で Crictical ロ ギ ン グ を有効にす る 場合の コ マ ン ド は、
enableLog PM1 Crictical です。
ロ ギ ン グ を無効にす る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. disableLog (module_ID)(log_level) と 入力 し て [Enter] を押 し ま
す。
た と えば、 サーバー PM1 で Info ロ ギ ン グ を無効にす る 場合の コ マ ン ド は、 次の と お
り です。
disableLog PM1 Info
シ ス テムス テー タ スの監視の構成 35
36 シ ス テムス テー タ スの監視の構成
第5章
デー タ のイ ンポー ト
こ の章では、 Calpont シ ス テ ムにデー タ を イ ン ポー ト す る 方法について説明 し ます。
こ れには、 他のシ ス テ ム か ら のデー タ の移行ま たは保守 ウ ィ ン ド ウ での定期的な更新
が含まれ ます。
イ ンポー ト の概要
デー タ を イ ン ポー ト す る 前に、 『Calpont InfiniDB イ ン ス ト レーシ ョ ン ガ イ ド 』 の説明
に従っ て Calpont の イ ン ス ト ールを完了 し てお く 必要があ り ます。 こ れには、 Calpont
シ ス テ ム のカ タ ロ グの作成 と デー タ の イ ン ポー ト 先の表の作成が含まれ ます。
ロー ド サイ ズの見積 り
デー タ 呼出 し 時間のビ ジネ ス要件は、 デー タ の ロ ー ド サ イ ズに影響 し ます。 30 秒ご と
に新 し いデー タ にア ク セ スす る 必要があ る 場合は、 デー タ ベース に迅速に書 き 込んで
問合せで利用で き る よ う に、 デー タ を小 さ い ロ ー ド サ イ ズで ロ ー ド す る 必要があ り ま
す。
24 時間以内に新 し いデー タ にア ク セ スす る 必要があ る 場合は、 デー タ を大 き い ロ ー ド
サ イ ズで夜間に ロ ー ド で き ます。
イ ンポー ト タ ス ク
デー タ を イ ン ポー ト す る には次の タ ス ク を実行 し ます。
イ ン ポー ト 対象のデー タ フ ァ イ ルを正 し いデ ィ レ ク ト リ に コ ピー し ます
使用方法に応 じ てジ ョ ブ フ ァ イ ルを生成 し ます (オプシ ョ ン)
デー タ を イ ン ポー ト し ます
イ ンポー ト 処理
Calpont InfiniDB は、 イ ン ポー ト 時に次の処理を実行 し ます。
デー タ を読み取 り ます
デー タ を列指向に変換 し ます
デー タ 値を ト ー ク ン化 し ます
ト ー ク ン化 し たデー タ をデー タ ベース に ロ ー ド し ます
デー タ のイ ンポー ト 37
デ ィ レ ク ト リ 構造
Calpont InfiniDB を イ ン ス ト ールす る と 、 次の よ う なデフ ォ ル ト のデ ィ レ ク ト リ 構造が作成
さ れ ます。 こ れ ら の場所 と フ ァ イ ル名は、 「STDIN 処理」 で後述す る よ う に 「-f」 お よ び
「-l」 オプシ ョ ン を使用 し て上書 き で き ます。 バル ク ロ ー ド 処理は任意のサーバーか ら 開
始で き る よ う にな り ま し た。
/usr/local/Calpont/data/bulk/
job : 表お よ び列を マ ッ プす る ジ ョ ブ記述 XML フ ァ イ ルが含まれてい ます。
data/import : イ ン ポー ト す る デー タ フ ァ イ ルが含ま れてい ます。 シ ンプルな イ
ン タ フ ェース を上書 き ま たは実行 し ていない場合は、 こ れがデフ ォ ル ト で
す。
log : 実行 し た各ジ ョ ブの ロ グ フ ァ イ ルが含ま れてい ます。 フ ァ イ ルの拡張子は
.log です。
BulkRoot の定義
Calpont.XML フ ァ イ ルには BulkRoot と い う エ ン ト リ があ り ます。 必要に応 じ て、 ユー
ザーは こ のエ ン ト リ を使用 し てデフ ォ ル ト の /usr/local/Calpont/data/bulk を別
のデ ィ レ ク ト リ に変更で き ます。
root 以外のユーザー と し てのイ ンポー ト
root 以外のユーザーが colxml お よ び cpimport を実行す る 場合、 シ ス テ ム管理者は、
こ れ ら のユーテ ィ リ テ ィ のア ク セ ス モー ド を変更す る 必要があ り ます。 次に例を示 し ま
す。
chmod
4755
/usr/local/Calpont/bin/colxml
chmod
4755
/usr/local/Calpont/bin/cpimport
ソ ース フ ァ イルの コ ピー
ソ ース フ ァ イ ルを書式設定 し て正 し い名前を指定 し 、 デー タ の イ ン ポー ト に Calpont
InfiniDB のデフ ォ ル ト の場所を使用 し てい る 場合は、 Calpont イ ン ポー ト フ ォ ルダに配置す
る 必要があ り ます。 こ れは、 -p オプシ ョ ン ま たはシ ンプルな イ ン タ フ ェース な ど に よ っ
て上書 き で き ます。
ソ ース フ ァ イルの形式
デフ ォ ル ト のデ リ ミ タ は 「|」 (パ イ プ) 文字です。
イ ン ポー ト 時にオプシ ョ ンのデ リ ミ タ パ ラ メ ー タ を指定 し て、 他の形式を受け入れ る よ う
にシ ス テ ム を構成で き ます。 ほ と ん ど のデ リ ミ タ 文字では、 -d と そのデ リ ミ タ 文字を使
用 し ます。 cpimport を使用 し てい る 場合は -s を使用で き ます。
38 デー タ のイ ンポー ト
例:
-d ,
-d |
タ ブ、 一重引用符、 チルダな ど の特殊文字の場合、 バ ッ ク ス ラ ッ シ ュ 「\」 を追加 し て
か ら 特殊文字を追加 し ます (日本語では円記号 「\」 で表示 さ れ ます)。 特殊文字に円
記号を使用す る 場合は、 一重引用符で囲む必要があ る こ と に注意 し て く だ さ い。 それ
ぞれの例を次に示 し ます。
-d '\t'
-d '\~'
UTF-8 デー タ のイ ンポー ト
cpimport ユーテ ィ リ テ ィ を使用 し て UTF-8 デー タ を イ ン ポー ト す る 場合は、 入力
フ ァ イ ルを UTF-8 デー タ に変換す る 必要があ り ます。 Linux プ ロ グ ラ ム iconv は、
変換ユーテ ィ リ テ ィ の 1 つです。
iconv -f ISO-8859-1 -t UTF-8 < input.txt > output.txt
ソ ース フ ァ イル名
完全な イ ン タ フ ェース では、 ソ ース フ ァ イ ル名は、 デー タ の イ ン ポー ト 先 と な る デ
フ ォ ル ト の表の名前を使用 し て指定す る 必要があ り ます。 -l オプシ ョ ン を使用 し て
上書 き す る こ と がで き ます。 シ ン プルな イ ン タ フ ェ ース では、 ソ ース フ ァ イ ル名がデ
フ ォ ル ト の表名 と 異な る 場合は コ マ ン ド ラ イ ン で指定で き ます。
ソ ースデー タ が別のデ ィ レ ク ト リ に存在す る 場合は、 ln コ マ ン ド を使用 し て代わ り に
シ ン ボ リ ッ ク リ ン ク 「import」 を作成で き ます。 次に例を示 し ます。
ln -s /mnt/source /usr/local/Calpont/data/bulk/data/import
イ ンポー ト デ ィ レ ク ト リ
デフ ォ ル ト を使用 し てい る 場合、 イ ン ポー ト 対象の ソ ースデー タ は次のデ ィ レ ク ト リ
に配置す る 必要があ り ます。
/usr/local/Calpont/data/bulk/data/import
こ れは、 -p オプシ ョ ン ま たはシ ンプルな イ ン タ フ ェース を使用 し て上書 き で き ます。
デー タ のイ ンポー ト 39
イ ンポー ト 方法
イ ン ポー ト ツールは 2 つの異な る 使用方法で実行で き ます。
1 つ目の使用方法は 1 つの表を イ ン ポー ト す る シ ン プルな イ ン タ フ ェース を使用す
る 方法で、 XML ジ ョ ブ フ ァ イ ル (colxml) は必要あ り ません。
2 つ目の使用方法は、 cpimport を使用す る 完全な方法です。 最初に colxml ユー
テ ィ リ テ ィ を実行 し て XML ジ ョ ブ フ ァ イ ルを生成す る 必要があ り ます。 こ の方法
は、 複数の表を一度に イ ン ポー ト す る 場合に使用す る 必要があ り ますが、 すべて
のシナ リ オにおいて使用す る こ と がで き ます。
複数の表のイ ンポー ト
イ ン ポー ト ユーテ ィ リ テ ィ を使用 し て複数の表を同時に イ ン ポー ト で き ます。 シ ン プルな
イ ン タ フ ェース では、 表ま たは PM が イ ン ポー ト ご と に一意であ る かぎ り 、 複数のジ ョ ブ
を同時に発行で き ます。 完全な イ ン タ フ ェ ース では、 ス キーマ内のすべての表を イ ン ポー
ト す る か、 ま たは colxml で -t オプシ ョ ン を使用 し て特定の表を リ ス ト す る こ と で複数
の表を イ ン ポー ト で き ます。 表お よ びジ ョ ブ ID が一意であ る かぎ り 、 従来の イ ン タ
フ ェース を使用 し て複数のジ ョ ブ を発行で き ます。
分散イ ンポー ト
イ ン ポー ト ユーテ ィ リ テ ィ の機能が拡張 さ れて複数の ロ ー ド 方法を使用で き る よ う にな り
ま し た。 こ れに よ り 、 1 つの集中化 さ れた ロ ー ド 処理を簡単に使用で き る だけでな く 、 総
合的な ロ ー ド パフ ォ ーマ ン ス を制限す る 可能性のあ る ボ ト ルネ ッ ク を発生 さ せ る こ と な く
個々の フ ァ イ ルを ロ ー ド す る 拡張性を実現で き ます。
以降の項お よ び図では、 InfiniDB で利用可能な様々なモー ド について説明 し ます。
セ ン ト ラルロ ケーシ ョ ンから のバルク ロー ド (モー ド 1)
セ ン ト ラ ル ロ ケーシ ョ ン か ら のバル ク ロ ー ド の実行には、 1 つの コ マ ン ド で 1 つの フ ァ イ
ルを ロ ー ド し 、 そのデー タ を一連のデ ィ ス ク リ ソ ース に適切に分散す る オプシ ョ ン があ り
ます。 次の特徴があ り ます。
1 つの ソ ース フ ァ イ ル
シ ン グルバル ク ロ ー ド コ マ ン ド
40 デー タ のイ ンポー ト
モー ド 1 を使用 し た場合、 cpimport は ソ ース フ ァ イ ルを読み取 り 、 すべての PM ま
たは特定の PM (-P オプシ ョ ン) のいずれかに分散 し ます。 ソ ース フ ァ イ ルは 10,000
行の単位で分割 さ れ、 イ ン ポー ト 用にそれぞれの PM に送信 さ れ ます。 前述の 2 つの
PM の例では、 100,000 行の ソ ース フ ァ イ ルがそれぞれの PM に 50,000 行ずつ送信 さ れ
ます。
注意 : 分散機能では 10,000 行単位で DBRoot に送信 さ れます。 た と えば、 DBRoot の
数が一致 し ていない場合 (PM1 に 1 つの DBRoot が存在 し 、 PM2 に 2 つの DBRoot が
存在す る 場合)、 PM2 は PM1 が イ ン ポー ト す る デー タ を も う 一度 イ ン ポー ト し ます。
例:
mytable.tbl ソ ース フ ァ イ ルを現在のデ ィ レ ク ト リ か ら すべての PM の mytest
ス キーマに イ ン ポー ト し ます。
cpimport -m1 mytest mytable mytable.tbl
mytable.tbl ソ ース フ ァ イ ルを現在のデ ィ レ ク ト リ か ら PM1 お よ び PM2 の
mytest ス キーマにのみ イ ン ポー ト し ます。
cpimport -m1 -P1,2 mytest mytable mytable.tbl
すべてのPMのmytest ス キーマに表を イ ン ポー ト す る 場合の従来の方法は次の と
お り です。
colxml mytest -j299
cpimport -m1 -j299
デー タ のイ ンポー ト 41
シ ン グルバルク ロー ド コ マ ン ド 、 パーテ ィ シ ョ ン ソ ース (モー ド 2)
セ ン ト ラ ル ロ ケーシ ョ ン か ら のバル ク ロ ー ド の実行には、 PM 上に存在す る 、 すでにパー
テ ィ シ ョ ン化 さ れたデー タ フ ァ イ ルを ロ ー ド す る オプシ ョ ンがあ り ます。 次の特徴があ り
ます。
N 個のパーテ ィ シ ョ ン ロ ー ド フ ァ イ ル (N は PM の数)
シ ン グルバル ク ロ ー ド コ マ ン ド
モー ド 2 を使用 し た場合、 cpimport は各 PM 上に存在す る ソ ース フ ァ イ ルを イ ン ポー ト
し ます。 各 PM の ソ ース フ ァ イ ルはそれぞれの PM の DBRoot に イ ン ポー ト さ れます。
例:
mytable.tbl ソ ース フ ァ イ ルを各PM の/home/mydataデ ィ レ ク ト リ か ら その PM
の mytest ス キーマに イ ン ポー ト し ます。
cpimport -m2 mytest mytable /home/mydata/mytable.tbl
mytable.tbl ソ ース フ ァ イ ルを PM1 の /home/mydata デ ィ レ ク ト リ か ら PM2 の
mytest ス キーマにのみ イ ン ポー ト し ます。
cpimport -m2 -P2 mytest mytable /home/mydata/mytable.tbl
42 デー タ のイ ンポー ト
独立 し たバルク ロー ド コ マ ン ド 、 パーテ ィ シ ョ ン ソ ース (モー ド 3)
セ ン ト ラ ル ロ ケーシ ョ ン と 連携せずに PM 上で個別にバル ク ロ ー ド を実行 し ます。 こ
の場合、 1 つの フ ァ イ ルま たは ソ ース が他の PM を認識す る こ と な く 1 つの PM に
ロ ー ド さ れ ます。 ソ ース フ ァ イ ルが N 個の場合、 1 つの表への N 個の同時 ロ ー ド が可
能です。 次の特徴があ り ます。
最大 N 個のパーテ ィ シ ョ ン ロ ー ド フ ァ イ ル (N は PM の数)
最大 N 個のバル ク ロ ー ド コ マ ン ド (N は PM の数)
こ のモー ド では、 PM 上に存在す る ソ ース フ ァ イ ルを イ ン ポー ト す る PM 上でユー
ザーが cpimport を開始 し ます。 同 じ 表の場合は、 各 PM で同時 イ ン ポー ト が実行 さ
れます。
例:
mytable.tbl ソ ース フ ァ イ ルを PM1 の /home/mydata デ ィ レ ク ト リ か ら PM1
の mytest ス キーマに イ ン ポー ト し ます。
cpimport -m3 mytest mytable /home/mydata/mytable.tbl
デー タ のイ ンポー ト 43
単一サーバーのイ ンポー ト
単一サーバーで任意のモー ド を使用 し てバル ク ロ ー ド を実行す る と 、 デー タ はそのサー
バーにのみ ロ ー ド さ れ ます。
例:
mytable.tbl ソ ース フ ァ イ ルを PM1 の /home/mydata デ ィ レ ク ト リ か ら PM1 の
mytest ス キーマに イ ン ポー ト し ます。
cpimport mytest mytable /home/mydata/mytable.tbl
mytable.tbl ソ ース フ ァ イ ルを PM1 の /home/mydata デ ィ レ ク ト リ か ら PM1 の
mytest ス キーマにモー ド 1 を使用 し て イ ン ポー ト し ます。
cpimport -m1 mytest mytable /home/mydata/mytable.tbl
44 デー タ のイ ンポー ト
利用可能なモー ド
次の図は、 サーバーの種類に応 じ て実行可能なモー ド と それぞれのデフ ォ ル ト を示 し
ます。
ジ ョ ブ フ ァ イルの生成
1 つの表に対 し て イ ン ポー ト を実行 し 、 シ ン プルな cpimport イ ン タ フ ェ ース を実行す
る 場合、 ジ ョ ブ フ ァ イ ルの生成は必要あ り ません。 ただ し 、 1 つのジ ョ ブで複数の表
を ロ ー ド し 、 完全な cpimport イ ン タ フ ェース を使用す る 場合は、 デー タ を イ ン ポー ト
す る 前に XML ジ ョ ブ フ ァ イ ルを作成す る 必要があ り ます。 ジ ョ ブ フ ァ イ ルを使用す
る 場合は、 各バル ク ロ ー ド の前に新 し いジ ョ ブ フ ァ イ ルを作成す る 必要があ り ます。
colxml の必須パ ラ メ ー タ は schema_name の 1 つだけです。
すべての表に対す る ジ ョ ブ フ ァ イ ルを生成す る には
Linux プ ロ ン プ ト で、 /usr/local/Calpont/bin/colxml schema_name と
入力 し ます。
その他のすべてのパ ラ メ ー タ はオプシ ョ ン です。 それ ら を次に示 し ます。
-d delimiter
デー タ ベース に イ ン ポー ト す る 入力デー タ フ ァ イ ルの フ ィ ール ド (列) デ リ ミ
タ 。 デフ ォ ル ト は 「|」 です。
デー タ のイ ンポー ト 45
た と えば、 デ リ ミ タ をデフ ォ ル ト のパ イ プバー (|) か ら チルダに変更す る には、
次の よ う に入力 し ます。
/usr/local/Calpont/bin/colxml schema_name -d \~
-e number
エ ラ ー行の最大数。 こ の値を超え る と cpimport はバル ク ロ ー ド 処理を中止 し ま
す。 デフ ォ ル ト は 10 です。 モー ド 1 ま たはモー ド 2 の分散 イ ン ポー ト の場合、 こ
れは各 PM のエ ラ ー行の最大数を示 し ます。
-h
ヘルプ を出力 し ます。
-j jobid
作成 さ れ る ジ ョ ブ記述フ ァ イ ルの識別子。 colxml は Job_jobid.xml と い う 名
前の出力フ ァ イ ルを作成 し ます。 デフ ォ ル ト は 299 です。
-x ext
ロ ー ド す る 入力表デー タ フ ァ イ ルの拡張子。 デフ ォ ル ト は 「tbl」 です。
-n "name"
こ のバル ク ロ ー ド ア ク テ ィ ビ テ ィ の論理名。
-p path
Job_jobid.xml が作成 さ れ る 場所。 デフ ォ ル ト は BulkRoot/job デ ィ レ ク ト リ
です。 指定 し たパ ス は、 「/」 で始ま る 場合は絶対パ ス と し て処理 さ れ ます。 そ う
でない場合は、 現在の作業デ ィ レ ク ト リ に対 し て相対的な相対パ ス と し て処理 さ
れます。
-s "description"
こ のバル ク ロ ー ド ア ク テ ィ ビ テ ィ の詳細。
-t table name
指定 し た場合、 指定 し た表に対 し てのみ colxml はジ ョ ブ xml フ ァ イ ルを生成 し
ます。
-l load file
-t オプシ ョ ン で指定 し た表に対す る 代替 ロ ー ド フ ァ イ ル。最初の -l は最初の -t に
対応す る フ ァ イ ルを指定 し 、 2 つ目の -l は 2 つ目の -t に対応す る フ ァ イ ルを指
定 し ます。 3 つ目以降 も 同様です。 -l 引数では、 フ ァ イ ルの リ ス ト を指定す る こ
と で、 関連デー タ ベース表に フ ァ イ ルを ま と めて イ ン ポー ト で き ます。 -l 引数に
は、 完全修飾 さ れたパ ス名 (-f エ ン ト リ を上書 き ) ま たは -f パ ス名エ ン ト リ に対
し て相対的なパ ス を指定で き ます。
-u user
colxml を実行 し てい る ユーザーの名前。こ れはユーザーの ロ グ イ ン ID の場合があ
り ます。
46 デー タ のイ ンポー ト
-r number of read buffers
cpimport は入力デー タ フ ァ イ ルか ら 読取 り バ ッ フ ァ にデー タ を読み取 り ま
す。 こ のパ ラ メ ー タ は、 ロ ー ド さ れ る 各表に対 し て cpimport が使用す る 読
取 り バ ッ フ ァ の数に影響 し ます。 読取 り バ ッ フ ァ の数は解析ス レ ッ ド の数 よ り
1 つ多 く す る こ と をお薦め し ます。 こ のパ ラ メ ー タ は、 バル ク ロ ー ド ス ルー
プ ッ ト のチ ュ ーニ ン グに使用で き ます。 デフ ォ ル ト は 5 です。
注意 : 8 コ アの 16GB 物理 メ モ リ ーが搭載 さ れてい る マシ ンの場合、 推奨値は
4 です。
-c read buffer size
読取 り バ ッ フ ァ のサ イ ズ ま たは容量に よ っ て、 入力フ ァ イ ルか ら 一度に読み取
ら れ る デー タ の量が決ま り ます。 デフ ォ ル ト は 1048576 バ イ ト です。
注意 : 8 コ アの 16GB 物理 メ モ リ ーが搭載 さ れてい る マシ ンの場合、 推奨値は
4194304 バ イ ト です。
-w i/o buffer size
こ のバ ッ フ ァ は、 setvbuf コ ールで使用 さ れ る 内部 ラ イ ブ ラ リ バ ッ フ ァ のサ イ
ズの設定に使用 さ れ ます。 現在、 こ れは、 読取 り ス レ ッ ド で使用 さ れ る フ ァ イ
ルハン ド ルにのみ影響 し ます。 こ れをチ ュ ーニ ン グ し てバル ク ロ ー ド 処理の速
度を向上 さ せ る こ と がで き ます。 デフ ォ ル ト は 10485760 バ イ ト です。
注意 : 8 コ アの 16GB 物理 メ モ リ ーが搭載 さ れてい る マシ ンの場合、 推奨値は
16777216 バ イ ト です。
-b debug level
colxml 処理のデバ ッ グ レベルを設定 し ます。1-3 の範囲です。デフ ォ ル ト 値は
0 で、 デバ ッ グ メ ッ セージは出力 さ れ ません。
-E enclosedByCharacter
指定 し た文字 (二重引用符な ど) で囲まれてい る 列を イ ン ポー ト フ ァ イ ルに含
め る 場合、 こ の文字を指定す る ために -E オプシ ョ ン を使用す る 必要があ り ま
す。 囲み文字は、 デー タ ベース に ロ ー ド さ れ る 前に列値の先頭お よ び末尾か ら
削除 さ れ ます。 詳 し く は、 後述の囲み文字お よ びエ ス ケープ文字の使用例を参
照 し て く だ さ い。
-C escapeCharacter
-E オプシ ョ ンが有効にな っ てい る 場合、 囲み文字が列値に存在す る と き に使
用す る エ ス ケープ文字を -C オプシ ョ ンに よ っ て指定 し ます。 囲み文字は、 エ
ス ケープ文字を前に指定す る か、 囲み文字自体を繰 り 返す こ と に よ っ てエ ス
ケープで き ます。 デフ ォ ル ト のエ ス ケープ文字は円記号 (\) です。 詳 し く は、
後述の囲み文字お よ びエ ス ケープ文字の使用例を参照 し て く だ さ い。
デー タ のイ ンポー ト 47
デー タ のイ ンポー ト
Calpont InfiniDB では、 Infinidb デー タ ベースへのデー タ のバル ク ロ ー ド に cpimport ユー
テ ィ リ テ ィ が使用 さ れ ます。 こ の フ ァ イ ルは次のデ ィ レ ク ト リ にあ り ます。
/usr/local/Calpont/bin
cpimport の使用方法
前述の と お り 、 現在 cpimport ユーテ ィ リ テ ィ には 2 つの使用方法があ り ます。
シ ン プルな cpimport イ ン タ フ ェ ースの使用
1 つ目の使用方法は 1 つの表を イ ン ポー ト す る シ ン プルな イ ン タ フ ェース を使用す る 方法
で、 XML ジ ョ ブ フ ァ イ ル (colxml) は必要あ り ません。 こ の方法で cpimport ユー
テ ィ リ テ ィ を コ ールす る 場合の基本 コ マ ン ド は次の と お り です。
cpimport dbName tblName [loadFile]
こ のモー ド で入力す る 必要があ る のは、 デー タ ベース名 と 表名のみです。 こ の cpimport
の使用方法では、 1 つの cpimport ジ ョ ブに よ っ て 1 つの表のみを ロ ー ド で き ます。 3 つ目
のオプシ ョ ンの位置パ ラ メ ー タ に よ っ て、 ロ ー ド す る フ ァ イ ルの名前を指定 し ます。 ロ ー
ド フ ァ イ ルが指定 さ れていない場合、 stdin の値が入力 さ れ ます (後述の 「STDIN 処理」
を参照)。 loadFile 引数には、 完全修飾 さ れたパ ス名 (-f エ ン ト リ を上書 き ) ま たは -f
パ ス名エ ン ト リ に対す る 相対的なパ ス を指定で き ます。 そ う でない場合、 loadFile のパ
ス は、 現在のデ ィ レ ク ト リ にデフ ォ ル ト で設定 さ れます。
こ の コ マ ン ド の詳細な形式は次の と お り です。
cpimport dbName tblName [loadFile]
[-h] [-m mode] [-f filepath] [-d DebugLevel]
[-c readBufferSize] [-b numBuffers] [-r numReaders]
[-e maxErrors] [-B libBufferSize] [-s colDelimiter] [-E enclosedByChar]
[-C escChar] [-j jobID] [-p jobFilePath] [-w numParsers]
[-n nullOption] [-P pmList] [-i] [-S] [-q batchQty]
48 デー タ のイ ンポー ト
従来の cpimport イ ン タ フ ェ ースの使用
2 つ目の使用方法は、 cpimport を使用す る 従来の方法です。 最初に colxml ユー
テ ィ リ テ ィ を実行 し て XML ジ ョ ブ フ ァ イ ルを生成す る 必要があ り ます。 こ の方法は、
複数の表を一度に イ ン ポー ト す る 場合に使用す る 必要があ り ますが、 すべてのシナ リ
オにおいて使用す る こ と がで き ます。 こ の方法で cpimport ユーテ ィ リ テ ィ を コ ール
す る 場合の基本 コ マ ン ド は次の と お り です。
cpimport -j jobID
ジ ョ ブ ID は、 colxml ユーテ ィ リ テ ィ に よ っ て生成 さ れ る Job_jobid.xml (xml 形
式) と い う 名前の必須のジ ョ ブ記述フ ァ イ ルを参照す る ために使用 さ れ ます。 デフ ォ
ル ト では、 cpimport は /BulkRoot/job デ ィ レ ク ト リ でジ ョ ブ記述フ ァ イ ルを検
索 し ます。 (後述の 「BulkRoot の定義」 を参照)。 ジ ョ ブ記述フ ァ イ ルで指定 さ れてい
る デー タ ロ ー ド 用のデー タ フ ァ イ ルは、 -f オプシ ョ ン が使用 さ れていないかぎ り 、 通
常 /BulkRoot/data/import デ ィ レ ク ト リ にあ り ます。 こ の cpimport の使用方
法では、 1 つの cpimport ジ ョ ブに よ っ て 1 つ以上の表を ロ ー ド で き ます。
こ の コ マ ン ド の詳細な形式は次の と お り です。
cpimport -j jobID
[-h] [-m mode] [-f filepath] [-d DebugLevel]
[-c readBufferSize] [-b numBuffers] [-r numReaders]
[-e maxErrors] [-B libBufferSize] [-s colDelimiter]
enclosedByChar]
[-C escChar] [-w numParsers] [-l loadFile]
[-n nullOption] [-P pmList] [-i] [-S] [-q batchQty]
[-E
cpimport のオプ シ ョ ンパラ メ ー タ
次のオプシ ョ ン のパ ラ メ ー タ を使用す る こ と がで き ます。 選択 し た cpimport の使用
方法に よ っ ては、 一部のオプシ ョ ン のみが適用可能であ る こ と に注意 し て く だ さ い。
-d debug level
cpimport 処理のデバ ッ グ レベルを設定 し ます。 1-3 の範囲です。 デフ ォ ル ト
値は 0 で、 デバ ッ グ メ ッ セージは出力 さ れ ません。
-f import path
イ ン ポー ト フ ァ イ ルの代替デ ィ レ ク ト リ パ ス。 「STDIN」 (すべて大文字) と い
う 代替パ ス が指定 さ れてい る 場合、 cpimport は STDIN か ら 入力表デー タ を読
み取 り ます。 こ の場合、 cpimport ジ ョ ブで イ ン ポー ト で き る 表は 1 つのみで
す。
デー タ のイ ンポー ト 49
こ のオプシ ョ ンは、 loadFile パ ラ メ ー タ が省略 さ れてい る 場合、 シ ン プルな
cpimport の使用方法では適用で き ません。 loadFile の名前を省略す る と 、
STDIN の値が入力 さ れ ますが、 こ れは -f 引数の使用 と 競合 し ます。
-h
ヘルプ を出力 し ます。
-i
詳細を コ ン ソ ールに出力 し ます。 指定 し ない場合、 詳細は ロ グ フ ァ イ ルにのみ出
力 さ れ ます。
-j jobid
従来の cpimport の使用方法を実行す る 場合、 ジ ョ ブ ID は必須です。 ジ ョ ブ ID
は、 /BulkRoot/bulk/job 内のジ ョ ブ記述フ ァ イ ル (Job_jobid.xml) の検索
に使用 さ れ ます。 Job_jobid.xml は、 バル ク ロ ー ド の前に colxml を実行す る
と 作成 さ れ ます。 こ れは、 従来の cpimport の使用方法の場合に必要です。 ジ ョ
ブ ID は、 シ ス テ ムの ロ グ記録でジ ョ ブ を識別す る 場合に も 使用 さ れます。 シ ン プ
ルな cpimport の使用方法の コ ール時にジ ョ ブ ID パ ラ メ ー タ が指定 さ れていない場
合は、 デフ ォ ル ト 設定が指定 さ れ ます。
-l loadFile
ロ ー ド さ れ る イ ン ポー ト フ ァ イ ルの代替名。 デフ ォ ル ト 名は tablename.tbl で
す。 最初の -l はジ ョ ブ記述フ ァ イ ルで参照 さ れてい る 最初の表に対応す る フ ァ イ
ルを指定 し 、 2 つ目の -l は 2 つ目の表に対応す る フ ァ イ ルを指定 し ます。 3 つ目
以降 も 同様です。 -l 引数では、 フ ァ イ ルの リ ス ト を カ ン マ、 空白ま たは垂直バー
で区切っ て指定す る こ と で、 関連デー タ ベース表に フ ァ イ ルを ま と めて イ ン ポー
ト で き ます。 -l 引数には、 完全修飾 さ れたパ ス名 (-f エ ン ト リ を上書 き ) ま たは
-f パ ス名エ ン ト リ に対 し て相対的なパ ス を指定で き ます。
colxml を実行 し て ジ ョ ブ記述フ ァ イ ルを作成す る 場合に同 じ オプシ ョ ン を使用で
き ます。 cpimport で こ のオプシ ョ ン を指定す る と 、 ジ ョ ブ記述フ ァ イ ル内の以
前のすべての設定が こ のオプシ ョ ン に よ っ て上書 き さ れ ます。
こ のオプシ ョ ンは、 従来の cpimport の使用方法の コ ール時にのみ適用可能です。
-n NULL option
文字列値 NULL を持つすべてのデー タ 値の処理を制御 し ます。 有効な NULL オプ
シ ョ ンの値は 0 お よ び 1 です。
NULL オプシ ョ ン を 0 に設定す る と 、文字列 NULL と し て読み取 ら れたすべて
のデー タ 値が文字列値 NULL を持つ非 NULL 値 と し て処理 さ れます。 こ れ
はデフ ォ ル ト モー ド です。
NULL オプシ ョ ン を 1 に設定す る と 、文字列 NULL と し て読み取 ら れたすべて
のデー タ 値が NULL 値 と し て解釈 さ れ、 デー タ ベース に格納 さ れ ます。
50 デー タ のイ ンポー ト
-p jobxml path
ジ ョ ブ記述フ ァ イ ルのデフ ォ ル ト のパ ス を上書 き し ます。 デフ ォ ル ト は /
BulkRoot/bulk/job です。 指定 し たパ ス は、 「/」 で始ま る 場合は絶対パ ス
と し て処理 さ れます。 そ う でない場合は、 現在の作業デ ィ レ ク ト リ に対 し て相
対的な相対パ ス と し て処理 さ れます。
こ のオプシ ョ ンは、 従来の cpimport の使用方法の コ ール時にのみ適用可能
です。
-r number of read threads
生成 さ れ る 読取 り ス レ ッ ド の数。 入力デー タ フ ァ イ ルのデー タ を読み取 り ま
す。 こ のパ ラ メ ー タ は、 バル ク ロ ー ド ス ループ ッ ト のチ ュ ーニ ン グに使用で き
ます。 デフ ォ ル ト 値は 1 です。
-s column delimiter
入力デー タ フ ァ イ ルの フ ィ ール ド ま たは列を区切 る 場合に使用 さ れ る 文字を指
定 し ます。 デフ ォ ル ト は 「|」 です。 colxml を実行 し て ジ ョ ブ記述フ ァ イ ルを
作成す る 場合に同 じ オプシ ョ ン を使用で き ます。 cpimport で こ のオプシ ョ ン
を指定す る と 、 ジ ョ ブ記述フ ァ イ ル内の以前のすべての設定が こ のオプシ ョ ン
に よ っ て上書 き さ れます。
-S
デフ ォ ル ト では、 文字列の切捨ては警告 と し て処理 さ れます。 こ のオプシ ョ ン
を使用す る と 、 文字列の切捨て を エ ラ ー と し て処理す る よ う に変更で き ます。
こ れは他のエ ラ ー と 同様に処理 さ れ、 ジ ョ ブ を停止す る ま での最大許容エ ラ ー
数の対象 と な り ます。 他のエ ラ ー と 同様に レ ポー ト さ れ、 .err フ ァ イ ルお よ
び .bad フ ァ イ ルに格納 さ れます。
-w number of parse threads
生成 さ れ る 解析ス レ ッ ド の数。 解析ス レ ッ ド は、 読取 り ス レ ッ ド で一杯 と な っ
たバ ッ フ ァ のデー タ を解析 し 、 列フ ァ イ ルに ロ ー ド し ます。 こ のパ ラ メ ー タ
は、 バル ク ロ ー ド ス ループ ッ ト のチ ュ ーニ ン グに使用で き ます。 デフ ォ ル ト 値
は 3 です。
-E enclosedByCharacter
指定 し た文字 (二重引用符な ど) で囲まれてい る 列を イ ン ポー ト フ ァ イ ルに含
め る 場合、 こ の文字を指定す る ために -E オプシ ョ ン を使用で き ます。 囲み文
字は、 デー タ ベース に ロ ー ド さ れ る 前に列値の先頭お よ び末尾か ら 削除 さ れま
す。 colxml を実行 し て ジ ョ ブ記述フ ァ イ ルを作成す る 場合に同 じ オプシ ョ ン
を使用で き ます。 cpimport で こ のオプシ ョ ン を指定す る と 、 ジ ョ ブ記述フ ァ
イ ル内の以前のすべての設定が こ のオプシ ョ ンに よ っ て上書 き さ れます。
-C escapeCharacter
-E オプシ ョ ンが有効にな っ てい る 場合、 囲み文字が列値に存在す る と き に使
用す る エ ス ケープ文字を -C オプシ ョ ンに よ っ て指定 し ます。 囲み文字は、 エ
ス ケープ文字を前に指定す る か、 囲み文字自体を繰 り 返す こ と に よ っ てエ ス
ケープで き ます。 デフ ォ ル ト のエ ス ケープ文字は円記号 (\) です。 colxml
デー タ のイ ンポー ト 51
を実行 し てジ ョ ブ記述フ ァ イ ルを作成す る 場合に同 じ オプシ ョ ン を使用で き ます。
cpimport で こ のオプシ ョ ン を指定す る と 、 ジ ョ ブ記述フ ァ イ ル内の以前のすべて
の設定が こ のオプシ ョ ン に よ っ て上書 き さ れ ます。
-b number of read buffers
cpimport は入力デー タ フ ァ イ ルか ら 読取 り バ ッ フ ァ にデー タ を読み取 り ます。 こ
のパ ラ メ ー タ は、 ロ ー ド さ れ る 各表に対 し て cpimport が使用す る 読取 り バ ッ
フ ァ の数に影響 し ます。 読取 り バ ッ フ ァ の数は解析ス レ ッ ド の数 よ り 1 つ多 く す
る こ と をお薦め し ます。 こ のパ ラ メ ー タ は、 バル ク ロ ー ド ス ループ ッ ト のチ ュ ー
ニ ン グに使用で き ます。 デフ ォ ル ト は 5 です。
注意 : 8 コ アの 16GB 物理 メ モ リ ーが搭載 さ れてい る マシ ンの場合、 推奨値は 4 で
す。
-c read buffer size
読取 り バ ッ フ ァ のサ イ ズ ま たは容量に よ っ て、 入力フ ァ イ ルか ら 一度に読み取 ら
れ る デー タ の量が決ま り ます。 デフ ォ ル ト は 1048576 バ イ ト です。
注意 : 8 コ アの 16GB 物理 メ モ リ ーが搭載 さ れてい る マシ ンの場合、 推奨値は
4194304 バ イ ト です。
-e number
エ ラ ー行の最大数。 こ の値を超え る と cpimport はバル ク ロ ー ド 処理を中止 し ま
す。 デフ ォ ル ト は 10 です。 モー ド 1 ま たはモー ド 2 の分散 イ ン ポー ト の場合、 こ
れは各 PM のエ ラ ー行の最大数を示 し ます。
-B i/o buffer size
こ のバ ッ フ ァ は、 setvbuf コ ールで使用 さ れ る 内部 ラ イ ブ ラ リ バ ッ フ ァ のサ イ ズの
設定に使用 さ れ ます。 現在、 こ れは、 読取 り ス レ ッ ド で使用 さ れ る フ ァ イ ルハン
ド ルにのみ影響 し ます。 こ れをチ ュ ーニ ン グ し てバル ク ロ ー ド 処理の速度を向上
さ せ る こ と がで き ます。 デフ ォ ル ト は 10485760 バ イ ト です。
注意 : 8 コ アの 16GB 物理 メ モ リ ーが搭載 さ れてい る マシ ンの場合、 推奨値は
16777216 バ イ ト です。
-m mode
こ れは、 実行す る cpimport のモー ド を示 し ます。
1 - 分散 イ ン ポー ト (1 つの コ マ ン ド 、 中央 ソ ース)
2 - 分散 イ ン ポー ト (1 つの コ マ ン ド 、 分散 ソ ース)
3 - 独立 し た イ ン ポー ト (パーテ ィ シ ョ ン ソ ース)
こ れ ら のモー ド お よ びデフ ォ ル ト の詳細は、 前述の 「分散 イ ン ポー ト 」 の項を
参照 し て く だ さ い。
-P PM list
こ れはモー ド 1 ま たはモー ド 2 の分散 イ ン ポー ト を実行す る PM ( ま たはカ ン マで
区切 ら れた PM の リ ス ト ) を示 し ます。 指定 さ れていない場合、 デフ ォ ル ト ですべ
ての PM が設定 さ れ ます。
52 デー タ のイ ンポー ト
- q batch quantity
cpimport で一度にバ ッ チ処理を行っ て分散で き る 行数です。 モー ド 1 での イ
ン ポー ト 時にのみ適用可能です。 デフ ォ ル ト は 10000 です。
STDIN 処理
STDIN 処理は、 cpimport のいずれの使用方法で も 適用で き ます。
シ ン プルな cpimport の使用
STDIN は、 cpimport コ マ ン ド で loadFile パ ラ メ ー タ を省略す る だけで適用 さ れ
ます。
例 : cpimport db1 table1
こ のオプシ ョ ン では、 複数の ソ ース は利用で き ません。 STDIN は、 EOF に達す る ま で
単純にデー タ ソ ース を読み取 り 続け ます。
従来の cpimport の使用
STDIN は、 「-f」 オプシ ョ ン を使用す る こ と で適用 さ れ ます。
-f : イ ン ポー ト フ ァ イ ルの代替 イ ン ポー ト パ ス (cpimport)
ユーザーは、 STDIN か ら 入力 ソ ース を リ ダ イ レ ク ト す る 場合、 cpimport の フ ァ イ ル
パ ス に対 し て 「-f STDIN」 と 入力 し ます。
例 : cpimport -f STDIN -j 299
cpimport は、 STDIN か ら の入力を リ ダ イ レ ク ト す る 場合、 「-l」 コ マ ン ド ラ イ ン オプ
シ ョ ンに よ っ て colxml に対 し て指定 さ れた フ ァ イ ル名を無視 し ます。 「-l」 オプ
シ ョ ン を使用す る と 、 フ ァ イ ルの リ ス ト が一度に イ ン ポー ト さ れ ます (例 : -l
"lineitem01.tbl lineitem02.tbl lineitem03.tbl")。 STDIN オプシ ョ ン で
は、 複数の ソ ース は選択で き ません。 STDIN は、 EOF に達す る ま で単純にデー タ ソ ー
ス を読み取 り 続け ます。
表から 選択 し た内容のバルク挿入
標準入力は、 任意の SELECT 文か ら の出力を高速のバル ク ロ ーダーに直接送信す る た
めに使用す る こ と も で き ます。
こ こ では、 デー タ 以外の書式設定を削除す る ために -N フ ラ グ を使用 し て
db2.source_table か ら 選択 し てい ます。
デー タ のイ ンポー ト 53
シ ン プルな cpimport の使用
idbmysql -e 'select * from source_table;' -N db2 | /usr/
local/Calpont/bin/cpimport db table1 -s '\t'
従来の cpimport の使用
idbmysql -e 'select * from source_table;' -N db2 | /usr/
local/Calpont/bin/cpimport -j501 -s '\t' -fSTDIN
囲み文字 (-E) およびエ スケープ文字 (-C) の使用方法
次に、 colxml お よ び cpimport の -E オプシ ョ ン と -C オプシ ョ ン の使用方法を示 し ま
す。 cpimport での こ れ ら のオプシ ョ ンの使用は、 colxml での使用 よ り 優先 さ れます。
5 つの文字列の列で定義 さ れてい る 表では、 イ ン ポー ト に次の表が使用 さ れ ます。
行番号
行1
行2
行3
行4
行5
行6
デー タ
one|two|three|four|five
"xyz"|abc|def|"ghi"123|jkl
"red|""white""|blue"|uno|\N|NULL|quatro
"red|\"white\"|blue"|uno|dos||
xxx | "yy
yy"|zzz|"1|2|3|4|5|abc"| def
aaa|"\N"|ccc|"NULL"|eee
行 1 は、 囲み文字を含ま ない単純な行です。
行 2 には、2 つの囲ま れた フ ィ ール ド があ り ます。列 4 には、余分な末尾の文字が
あ り 、 こ れは無視 さ れ ます。
行 3 には、 フ ィ ール ド デ リ ミ タ が含ま れてい る 囲ま れた フ ィ ール ド (列 1) と 、
エ ス ケープ さ れてい る 囲み文字があ り ます。
行 4 は、 行 3 に類似 し てい ますが、 埋め込ま れた囲み文字を エ ス ケープす る ため
に "" の代わ り に \" を使用 し てい ます。
行 5 では、囲まれた フ ィ ール ド (列 2 の 4 つの y の 2 つ目 と 3 つ目の間)に改行文字
が含まれてい ます。 列 4 には囲まれた値が含まれてお り 、 こ の値にはフ ィ ール
ド デ リ ミ タ が含ま れてい ます。
行 6 は、囲まれた NULL 値の処理を テ ス ト し てい ます。列 2 は NULL 値 と し て ロ ー
ド さ れますが、 列 4 は NULL 値 と し て ロ ー ド さ れません。
次の表は、 デー タ ベース に ロ ー ド さ れた場合のデー タ の出力を示 し ます。 こ の
表では、 斜体の NULL は NULL 値を表 し てい ます。 行 3/ 列 4 の値は、
cpimport の NULL オプシ ョ ン の設定に応 じ て、NULL ま たは 4 バ イ ト の文字列
「NULL」 にな り ます。
54 デー タ のイ ンポー ト
次の cpimport コ マ ン ド の結果を以下に示 し ます。
cpimport -E\" -C\\ -n1 -j 299
表 1: 囲み文字の イ ン ポー ト 結果
行
列1
列2
列3
列4
列5
1
one
two
three
four
five
2
xyz
abc
def
ghi
jkl
3
red|"white"|blue
uno
null
null
quatro
4
red|"white"|blue
uno
dos
null
null
5
xxx
yy
yy
zzz
1|2|3|4|5|abc
def
6
aaa
null
ccc
NULL
eee
高度な表へのデー タ マ ッ ピ ング
cpimport では、 上級ユーザーは、 列の数ま たは順序がデー タ ベース に定義 さ れてい
る も の と は異な る イ ン ポー ト フ ァ イ ルを ロ ー ド で き ます。 こ れは、 XML フ ァ イ ルが必
要な従来の cpimport の使用方法にのみ適用 さ れます。 colxml ユーテ ィ リ テ ィ の実
行後、 ユーザーはジ ョ ブの xml フ ァ イ ル (通常は /BulkRoot/job デ ィ レ ク ト リ 内)
を編集 し て列マ ッ ピ ン グ情報を含め る 必要があ り ます。 その後 cpimport を実行す る
と 、 ジ ョ ブ xml フ ァ イ ルに記載 し た と お り に適切なデー タ ベース の列にデー タ を ロ ー
ド で き る よ う にな り ます。
こ の機能をサポー ト す る ための次の タ グが利用可能です。
<IgnoreField/> : イ ン ポー ト フ ァ イ ル内の無視す る フ ィ ール ド を指定 し ま
す。
<DefaultColumn colName="col"/> : ユーザーは イ ン ポー ト フ ァ イ ルに存
在 し ないデー タ ベース列を指定で き る よ う にな り ます。 指定 し た列が
autoincrement の列 と し て定義 さ れていない場合は、 その列のすべての行に
NULL 値が入力 さ れ ます。 autoincrement の列 と し て定義 さ れてい る 場合は、 生
成 さ れた autoincrement の値が使用 さ れ ます。
<DefaultColumn> お よ び <IgnoreField> タ グは、 イ ン ポー ト フ ァ イ ルの列 と 同 じ
順序で リ ス ト さ れてい る 必要があ り ます。
デー タ のイ ンポー ト 55
デー タ マ ッ ピ ン グの例
次に、 ジ ョ ブ XML フ ァ イ ルでの こ れ ら の 2 つの タ グの使用例を示 し ます。
次の よ う に記述 さ れた表について考え てみます。
create table orders (
orderkey int,
custkey int,
orderstatus char (1),
totalprice decimal(12,2),
orderdate date,
orderpriority char (15),
clerk char (15),
shippriority int,
comment varchar (79)
) engine=infinidb;
ユーザーは、 次の列が含まれてい る フ ァ イ ルを リ ス ト さ れてい る 順序で イ ン ポー ト す る と
し ます。
custkey
shippriority
orderstatus
totalprice
orderkey
discount
orderpriority
orderdate
ordertime
次のジ ョ ブ XML フ ァ イ ルを使用 し て、 問題の フ ァ イ ルを イ ン ポー ト し ます。
<IgnoreField> タ グが列 discount お よ び ordertime に挿入 さ れてお り 、入力フ ァ イ ル
内で こ れ ら の列が無視 さ れ ます。 clerk お よ び comment 列の <Column> タ グは
<DefaultColumn> タ グに置 き 換え ら れます。 こ の タ グは、 こ れ ら の列には入力がない こ
と を示 し 、 デフ ォ ル ト で NULL に設定 さ れます。
<?xml version="1.0" encoding="UTF-8"?>
<BulkJob>
<Id>299</Id>
<Name/>
<Desc/>
<CreateDate>20110413</CreateDate>
<CreateTime>1431</CreateTime>
<User/>
56 デー タ のイ ンポー ト
<Delimiter>|</Delimiter>
<ReadBuffers count="5" size="1048576"/>
<WriteBufferSize>10485760</WriteBufferSize>
<Schema Name="inventory">
<Table tblName="inventory.orders"
loadName="orders.tbl" maxErrRow="10">
<Column colName="custkey"/>
<Column colName="shippriority"/>
<Column colName="orderstatus"/>
<Column colName="totalprice"/>
<Column colName="orderkey"/>
<IgnoreField/>
<Column colName="orderpriority"/>
<Column colName="orderdate"/>
<IgnoreField/>
<DefaultColumn colName="clerk"/>
<DefaultColumn colName="comment"/>
</Table>
</Schema>
</BulkJob>
イ ンポー ト の ト ラ ブルシ ュ ーテ ィ ング
イ ン ポー ト が異常終了す る と 、 エ ラ ー コ ー ド お よ び簡単な説明が表示 さ れ ます。 log
デ ィ レ ク ト リ に移動 し 、 テ キ ス ト エデ ィ タ でエ ラ ー ロ グ フ ァ イ ルを開いて詳細を確認
し ます。
エ ラ ー ロ グ フ ァ イ ルは、 Job_(id#).err と い う 名前の フ ァ イ ルに記録 さ れ ます。 た
と えば、 Job_299.err と い う 名前が使用 さ れます。
イ ン ポー ト が正常に行われ る と 、 Job_(id#).log と い う 名前の フ ァ イ ルに記録 さ れ
ます。 た と えば、 Job_299.log と い う 名前が使用 さ れ ます。
ど ち ら の フ ァ イ ルの場合 も 、 ジ ョ ブ ID は XML ジ ョ ブ フ ァ イ ルのジ ョ ブ ID と 同 じ で
す。
次に、 発生す る 可能性があ る エ ラ ーを示 し ます。
デー タ のイ ンポー ト 57
エ ラ ーロ グ と 拒否 さ れたデー タ の格納場所
実行 し た イ ン ポー ト の タ イ プに よ っ ては、 .err (エ ラ ー ロ グ) お よ び .bad (拒否 さ れた
デー タ ま たはエ ラ ーデー タ ) が異な る 場所に格納 さ れ る 場合があ り ます。
UM 上でモー ド 1 で実行 し た場合:フ ァ イ ルは UM 上の ソ ースデー タ と 同 じ デ ィ レ ク
ト リ に格納 さ れます (server_um1/import/source な ど)。
UM 上でモー ド 2 で実行 し た場合:フ ァ イ ルは各 PM 上の ソ ース と 同 じ デ ィ レ ク ト リ
に格納 さ れます (server_pm1/import/source な ど)。
PM 上でモー ド 3 で実行 し た場合:フ ァ イ ルはその PM 上の ソ ース と 同 じ デ ィ レ ク ト
リ に格納 さ れ ます (server_pm2/import/source な ど)。
UM 上で STDIN で実行 し た場合:フ ァ イ ルは UM 上の現在の作業デ ィ レ ク ト リ に格納
さ れ ます (server_um1/user/user1 な ど)。
デー タ の不一致
イ ン ポー ト す る デー タ が イ ン ポー ト 先の表 と 正 し く 一致 し ない場合、 その行は表名 と .bad
で表記 さ れ る 新 し い フ ァ イ ルに保存 さ れ ます。 た と えば、 nation.tbl.bad と い う 名前
です。
こ の フ ァ イ ルで不良デー タ を確認 し 、 イ ン ポー ト す る デー タ に対 し て変更を行い、 イ ン
ポー ト を再実行す る こ と がで き ます。
ま た、 イ ン ポー ト フ ァ イ ルの順序が表の記述 と は異な る 場合、 デー タ マ ッ ピ ン グ を再整理
す る こ と も で き ます (前述の 「高度な表へのデー タ マ ッ ピ ン グ」 を参照)。
エ ラ ー行の数が し き い値を超え る
エ ラ ー メ ッ セージ 「Total number of rows exceeds the maximum error number specified in the
job description file」
エ ラ ーの最大数はデフ ォ ル ト で 10 に設定 さ れ ます。 -e パ ラ メ ー タ の後に行の最大数を指
定 し てエ ラ ーの最大数を増や し ます。 こ の最大値は 100,000 です。 入力 し た値が 100,000
を超え る 場合、 cpimport は最大値の 100,000 であ る と みな し ます。
1. Linux プ ロ ン プ ト で、 cpimport.sh -e (number of rows) と 入力 し て
[Enter] を押 し ます。
58 デー タ のイ ンポー ト
第6章
ト ラ ンザク シ ョ ン
こ の章では、Calpont シ ス テ ム での ト ラ ンザ ク シ ョ ンの処理方法について説明 し ます。
ト ラ ンザク シ ョ ンの概要
Calpont InfiniDB では、 COMMIT 文が発行 さ れないかぎ り デー タ ベースへの変更が他の
問合せか ら は参照で き ない よ う に、 ト ラ ンザ ク シ ョ ンに よ っ て INSERT 文、 UPDATE
文お よ び DELETE 文が処理 さ れます。
コ ミ ッ ト は、 Calpont InfiniDB 外の ク ラ イ ア ン ト 構成に応 じ て、 自動的に適用 さ れ る
か、 ま たは明示的に発行 さ れ ます。 次の コ マ ン ド で現在の設定を表示で き ます。
mysql> show variables like '%autocommit%';
-------------show variables like '%autocommit%'
-------------+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit
| OFF
|
+---------------+-------+
1 row in set (0.00 sec)
次のいずれかの コ マ ン ド で現在の設定を変更で き ます。
mysql> set autocommit = on;
mysql> set autocommit = off;
今回の リ リ ース の Calpont InfiniDB 製品では、 すべての場合にデー タ の一貫性を確保
す る ために同時実行の DML 文は制限 さ れてい ます。 最初の ト ラ ンザ ク シ ョ ンに後続
す る ト ラ ンザ ク シ ョ ンは、 最初の ト ラ ンザ ク シ ョ ン が コ ミ ッ ト さ れ る ま で待機 し て実
行 さ れ ます。
ト ラ ンザク シ ョ ン 59
ト ラ ンザク シ ョ ンの保守
別のセ ッ シ ョ ン用に ト ラ ンザ ク シ ョ ン を ロ ールバ ッ ク す る 必要があ る 場合は、 次の手順を
実行で き ます。
1. 未処理の ト ラ ンザ ク シ ョ ンがあ る か ど う か を確認 し ます。
/usr/local/Calpont/bin/SesMgr
verID = 223
TxnID SessionID
------- ------223
1
2. Calpont.xml 構成フ ァ イ ルに設定 さ れてい る 時間制限を超え る 未処理の ト ラ ンザ ク
シ ョ ンがあ る か ど う か を確認 し ます。
/usr/local/Calpont/bin/sessionWalker
1 timed out transaction(s).
sessionid 1 txnid 223 valid TRUE time_t 1246470554 tdiff 30
ctime Wed Jul 1 12:49:14 2009
3.
こ れ ら の ト ラ ンザ ク シ ョ ン を ロ ールバ ッ ク し ます。
/usr/local/Calpont/bin/sessionWalker -r
1 timed out transactions.
sessionid 1 txnid 223 valid TRUE time_t 1246470554 tdiff 30
ctime Wed Jul 1 12:49:14 2009
こ の コ マ ン ド は、 構成 し た よ り も 実行時間が長い ト ラ ンザ ク シ ョ ン を自動的に ロ ールバ ッ
ク す る ために cron ス ク リ プ ト に配置で き ますが、 こ の よ う なポ リ シーが与え る 影響を十
分に考慮す る 必要があ り ます。
ACID 準拠
デー タ ベース シ ス テ ム で、 次の ACID の動作が実現 さ れ ます。
原子性 : ト ラ ンザ ク シ ョ ン内の タ ス ク がすべて実行 さ れ る か、 ま たはすべて実行
さ れない必要があ り ます。 ト ラ ンザ ク シ ョ ンは完了す る 必要があ り ます。 そ う で
ない場合は元に戻す ( ロ ールバ ッ ク す る ) 必要があ り ます。
一貫性 : すべての ト ラ ンザ ク シ ョ ン で、 デー タ ベース の整合性制約 (宣言 さ れた
一貫性ルール) が保持 さ れ る 必要があ り ます。 デー タ を矛盾 し た状態に し てお く
こ と はで き ません。
独立性 : 2 つの同時 ト ラ ンザ ク シ ョ ンは、 互いに影響を及ぼす こ と はで き ません。
ト ラ ンザ ク シ ョ ン内の中間結果は、 他の ト ラ ンザ ク シ ョ ンか ら は参照で き ません。
60 ト ラ ンザ ク シ ョ ン
永続性 : 完了 し た ト ラ ンザ ク シ ョ ン を後で中止 し た り 、 その結果を破棄す る こ
と はで き ません。 た と えば、 ク ラ ッ シ ュ 後に DBMS を再起動す る 場合で も 保
持す る 必要があ り ます。
http://en.wikipedia.org/wiki/Database
独立性を実現す る ために読取 り の一貫性がサポー ト さ れ、 原子性を実現す る ために
ロ ールバ ッ ク がサポー ト さ れ る よ う に同時実行制御を カ ス タ ム実装す る こ と に よ っ
て、 Calpont Engine で原子性お よ び独立性に関連す る ACID の動作がサポー ト さ れま
す。 Calpont InfiniDB では、 コ ミ ッ ト 読取 り と い う 最 も よ く 使用 さ れ る 分離レベルが提
供 さ れ ます。 コ ミ ッ ト 読取 り では、 問合せの開始時点で問合せの一貫性が保証 さ れ、
問合せの開始後に部分的に入力 さ れた追加デー タ は参照 さ れ ません。
Calpont InfiniDB のバージ ョ ニ ン グの最 も 重要な メ リ ッ ト は、 読取 り が遮断 さ れない こ
と です。 つま り 、 バージ ョ ニ ン グ さ れた (古い) ブ ロ ッ ク を、 あ る セ ッ シ ョ ン が更新
し てい る と き に、 同時に別のセ ッ シ ョ ンが読み取 る こ と がで き ます。
ロ ールバ ッ ク (原子性) と 読取 り 一貫性 (独立性) の両方のサポー ト は以前のバー
ジ ョ ンのデー タ を保持す る こ と で実装 さ れてい ます。
デー タ 型の一貫性は DDL お よ び DML でサポー ト さ れてい ます。 制約はサポー ト さ れ
てい ません。
永続性は ト ラ ンザ ク シ ョ ン ロ グお よ びチ ェ ッ ク ポ イ ン ト (適切な時点でのデ ィ ス ク へ
の保存) に よ っ てサポー ト さ れてい ます。
ト ラ ンザク シ ョ ン 61
62 ト ラ ンザ ク シ ョ ン
第7章
バ ッ ク ア ッ プおよび リ カバ リ の実行
こ の章では、 デ ィ ス ク の停止やその他の災害に備え て Calpont InfiniDB デー タ の全体
バ ッ ク ア ッ プお よ び リ カバ リ を実行す る 方法について説明 し ます。 最後に全体バ ッ ク
ア ッ プ を実行 し た時点ま でデー タ を リ カバ リ す る 方法ま たは、 ポ イ ン ト イ ン タ イ ム リ
カバ リ を実行す る 方法について説明 し ます。
ま た、 Calpont InfiniDB デー タ ベース を削除 し て最初か ら 始め る 方法について も 説明 し
ます。
デー タ のバ ッ ク ア ッ プ
デー タ の全体バ ッ ク ア ッ プ を作成す る には、 フ ロ ン ト エ ン ド デー タ ベースお よ び
Calpont デー タ ベース を同 じ 時点か ら バ ッ ク ア ッ プす る 必要があ り ます。
デー タ をバ ッ ク ア ッ プす る には、 次の手順を実行 し ます。 詳細は、 こ の章の後述の説
明を参照 し て く だ さ い。
デー タ ベース の書込みの一時停止
こ の処理では、 バ ッ ク ア ッ プ処理中にデー タ の一貫性を確保す る ためにデー タ
ベース の書込みが一時停止 さ れ ますが、 ユーザーはデー タ ベースへの問合せを
続行で き ます。
フ ロ ン ト エ ン ド デー タ ベース のバ ッ ク ア ッ プ
こ の処理では、 ユーザー、 お よ び Calpont InfiniDB プ ラ ッ ト フ ォ ーム に接続 し
てい る デー タ ベース オブジ ェ ク ト がバ ッ ク ア ッ プ さ れ ます。
Calpont InfiniDB プ ラ ッ ト フ ォ ーム のデー タ ベース フ ァ イ ルのバ ッ ク ア ッ プ
こ の処理では、 Calpont InfiniDB プ ラ ッ ト フ ォ ーム のデー タ ベース フ ァ イ ルが
バ ッ ク ア ッ プ さ れ ます。
デー タ ベース の書込みの再開
こ の処理はフ ロ ン ト エ ン ド デー タ ベースお よ び Calpont InfiniDB のバ ッ ク ア ッ
プが完了 し た後に実行 さ れ、 ユーザーはデー タ ベース に書 き 込む こ と がで き る
よ う にな り ます。
バ ッ ク ア ッ プおよび リ カバ リ の実行 63
デー タ ベースの書込みの一時停止
デー タ をバ ッ ク ア ッ プす る 場合は、 デー タ の一貫性を確保す る ためにデー タ ベース を一時
停止す る 必要があ り ます。
注意 : バ ッ ク ア ッ プ中にユーザーがデー タ ベース に書 き 込 も う と す る
と 、 Calpont に よ っ てエ ラ ー メ ッ セージが生成 さ れますが、 バ ッ ク ア ッ
プ処理は影響を受け ません。 Calpont では、 バ ッ ク ア ッ プ処理中に問合
せを行 う こ と がで き ます。
デー タ ベース の書込みを一時停止す る には
1. SSH ク ラ イ ア ン ト を使用 し てユーザーモジ ュ ール 1 ま たは OAM モジ ュ ールに接続
し ます。
2. Linux のユーザー名お よ びパ ス ワー ド を入力 し ます。
Linux プ ロ ン プ ト が表示 さ れ ます。
3. [root@server]# cmconsole
Calpont InfiniDB コ ン ソ ールのプ ロ ン プ ト が表示 さ れます。
4. calpont>suspendDatabaseWrites
確認 メ ッ セージが表示 さ れ ます。
フ ロ ン ト エ ン ド デー タ ベースのバ ッ ク ア ッ プ
フ ロ ン ト エ ン ド デー タ ベース は、 フ ロ ン ト エ ン ド デー タ ベース のベン ダーの手順お よ び指
示に従っ てバ ッ ク ア ッ プす る 必要があ り ます。
MySQL フ ロ ン ト エ ン ド には Calpont InfiniDB 固有の実装は さ れないため、 通常の手順のか
わ り に、 次のデ ィ レ ク ト リ をバ ッ ク ア ッ プ し ます。
/usr/local/Calpont/mysql/db
例:
cp -rp /usr/local/Calpont/mysql/db /mnt/InfiniDB/backup/frontend
注意 : -rp オプシ ョ ンは、 デ ィ レ ク ト リ を再帰的に コ ピー し 、 所有権情報を保存
す る ための も のです。
選択 し たデー タ ベース のみをバ ッ ク ア ッ プす る 場合は、 かわ り に前述のデ ィ レ ク ト リ 内
のデー タ ベースデ ィ レ ク ト リ をバ ッ ク ア ッ プ し ます。
64 バ ッ ク ア ッ プおよび リ カバ リ の実行
Calpont InfiniDB デー タ ベースのバ ッ ク ア ッ プ
こ の処理では、 すべての DBRM フ ァ イ ルお よ び DB (デー タ ) フ ァ イ ルを コ ピーす る
こ と に よ っ て、 Calpont デー タ ベース の全体バ ッ ク ア ッ プが作成 さ れ ます。 複数の
デ ィ レ ク ト リ か ら 複数の フ ァ イ ルが コ ピー さ れ る ため、 バ ッ ク ア ッ プに ラ ベル付け し
て、 障害が発生 し た場合に適切なデ ィ レ ク ト リ にバ ッ ク ア ッ プ を リ ス ト アで き る よ う
にす る 必要があ り ます。
パフ ォ ーマ ン ス モジ ュ ール 1 か ら すべての フ ァ イ ルを コ ピー し ます。
Calpont デー タ ベース をバ ッ ク ア ッ プす る には
各 DBRoot のデ ィ レ ク ト リ 構造全体をバ ッ ク ア ッ プ ス ト レージに コ ピー し ます。
こ れ ら のデ ィ レ ク ト リ は、 /usr/local/Calpont/etc/Calpont.xml フ ァ
イ ルの SystemConfig セ ク シ ョ ンに示 さ れてい ます。 通常、 こ れ ら は /usr/
local/Calpont/datan (n は 1 で始ま る 数値) の よ う に示 さ れ ます。 構成に
よ っ ては、 /usr/local/Calpont/data と い う デ ィ レ ク ト リ に重要な シ ス テ
ムデー タ を含め る こ と も で き ます。 使用 し てい る イ ン ス ト ール環境で重要な
フ ァ イ ル (バル ク ロ ー ド ス ク リ プ ト な ど) が こ のデ ィ レ ク ト リ に含まれてい る
場合、 こ のデ ィ レ ク ト リ も バ ッ ク ア ッ プす る 必要があ り ます。
/usr/local/Calpont/datan デ ィ レ ク ト リ を コ ピーす る と 、DBRM フ ァ イ ル
(/usr/local/Calpont/data1/systemFiles/dbrm) も コ ピー さ れます。
デー タ ベースの書込みの再開
MySQL デー タ ベースお よ び Calpont デー タ ベース のバ ッ ク ア ッ プ を終了 し た ら 、 デー
タ ベース の書込みを再開 し ます。
1. SSH ク ラ イ ア ン ト を使用 し てユーザーモジ ュ ール 1 ま たは OAM モジ ュ ールに
接続 し ます。
2. Linux のユーザー名お よ びパ ス ワー ド を入力 し ます。
Linux プ ロ ン プ ト が表示 さ れ ます。
3. [root@server]# cmconsole
Calpont InfiniDB コ ン ソ ールのプ ロ ン プ ト が表示 さ れ ます。
4. calpont>resumeDatabaseWrites
確認 メ ッ セージが表示 さ れ ます。
バ ッ ク ア ッ プおよび リ カバ リ の実行 65
バ ッ ク ア ッ プから の リ カバ リ
ハー ド ウ ェ ア障害が発生 し 、 バ ッ ク ア ッ プか ら リ カバ リ す る 必要があ る 場合は、 次の手順
を実行 し ます。 詳細は、 こ の章の後述の説明を参照 し て く だ さ い。
フ ロ ン ト エ ン ド デー タ ベース の リ ス ト ア
Calpont デー タ ベース の リ ス ト ア
フ ロ ン ト エ ン ド デー タ ベースの リ ス ト ア
推奨す る 手順に従っ て フ ロ ン ト エ ン ド デー タ ベース を リ ス ト ア し ます。
MySQL フ ロ ン ト エ ン ド には Calpont InfiniDB 固有の実装は さ れないため、 通常の手順のか
わ り に、 次のデ ィ レ ク ト リ を リ ス ト ア し ます。
/usr/local/Calpont/mysql/db
削除 し て リ ス ト アす る 例 :
rm -rf /usr/local/Calpont/mysql/db/*
cp -rp /mnt/InfiniDB/backup/frontend/* /usr/local/Calpont/
mysql/db/
注意 1 : -rf オプシ ョ ンは、 デ ィ レ ク ト リ を再帰的に削除す る ための も のです。 削
除す る 際にプ ロ ン プ ト は表示 さ れ ません。 -rp オプシ ョ ンは、 デ ィ レ ク ト リ を再
帰的に コ ピー し 、 所有権情報を保存す る ための も のです。
注意 2 : コ ピーの完了後、 /usr/local/Calpont/mysql/db デ ィ レ ク ト リ お よ
びサブデ ィ レ ク ト リ の所有者が mysql であ る こ と を確認 し て く だ さ い。
# chown -R mysql:mysql /usr/local/Calpont/mysql/db
選択 し たデー タ ベース のみを リ ス ト アす る 場合は、 かわ り に前述のデ ィ レ ク ト リ 内の
デー タ ベースデ ィ レ ク ト リ を リ ス ト ア し ます。
Calpont InfiniDB デー タ ベースの リ ス ト ア
Calpont デー タ ベース を リ ス ト アす る には、 次の フ ァ イ ルお よ びデ ィ レ ク ト リ をバ ッ ク
ア ッ プデ ィ レ ク ト リ か ら DDLProc がア ク テ ィ ブにな っ てい る パフ ォ ーマ ン ス モジ ュ ール
に、 コ ピーす る 必要があ り ます。
注意 : ポ イ ン ト イ ン タ イ ム リ ス ト ア以外の操作を実行す る 場合は、 こ の手順を実行す る 前
に ト ラ ンザ ク シ ョ ン ロ グ を その ま ま コ ピー し て退避 し てお く 必要があ り ます (後述の
「Calpont ト ラ ンザ ク シ ョ ン ロ グの保存」 を参照)。
Calpont デー タ ベース を リ ス ト アす る には
1. InfiniDB シ ス テ ム がア ク テ ィ ブでない こ と を確認 し ます。
66 バ ッ ク ア ッ プおよび リ カバ リ の実行
2. デー タ フ ァ イ ルお よ びデ ィ レ ク ト リ を元の場所に コ ピー し なお し ます。
/usr/local/Calpont/datan。 n は、 data1、 data2 な ど、 一意のデ ィ レ ク
ト リ を表 し ます。 番号付 き の各デー タ デ ィ レ ク ト リ のすべての フ ァ イ ルお よ び
デ ィ レ ク ト リ を コ ピー し ます。
/usr/local/Calpont/datan デ ィ レ ク ト リ を リ ス ト アす る と 、 DBRM
フ ァ イ ル (/usr/local/Calpont/data1/systemFiles/dbrm) も
リ ス ト ア さ れます。
削除 し て リ ス ト アす る 例 :
rm -rf /usr/local/Calpont/datan/*
n は 1 で始ま る 数値です。
cp -rp /mnt/InfiniDB/backup/backend/datan/*
/usr/local/Calpont/datan
n は 1 で始ま る 数値です。
注意 1 : -rf オプシ ョ ンは、 デ ィ レ ク ト リ を再帰的に削除す る ための
も のです。 削除す る 際にプ ロ ンプ ト は表示 さ れ ません。 -rp オプシ ョ
ンは、 デ ィ レ ク ト リ を再帰的に コ ピー し 、 所有権情報を保存す る ため
の も のです。
ト ラ ンザク シ ョ ン
Calpont ト ラ ンザク シ ョ ン ログの保存
現在ア ク テ ィ ブなパフ ォーマ ン ス モジ ュ ールに よ っ て、 ト ラ ンザ ク シ ョ ン ロ グに DDL 文お
よ び DML 文が書 き 込まれます。 必要に応 じ て、 こ れ ら の ロ グで文を確認で き ます。
必要に応 じ て、 ト ラ ンザ ク シ ョ ン ロ グ を その ま ま本番サーバーか ら コ ピー し て退避で
き ます。
次の表に、 フ ァ イ ル名お よ びその フ ァ イ ルが配置 さ れてい る デ ィ レ ク ト リ を示 し ま
す。
表 1: ト ラ ンザ ク シ ョ ン ロ グ
デフ ォ ル ト 名
data_mods.log
デフ ォ ル ト デ ィ レ ク ト リ
/usr/local/Calpont/data1/systemFiles/dataTransaction
バ ッ ク ア ッ プおよび リ カバ リ の実行 67
表 1: ト ラ ンザ ク シ ョ ン ロ グ
デフ ォ ル ト 名
data_mods.log.timestamp
デフ ォ ル ト デ ィ レ ク ト リ
/usr/local/Calpont/data1/systemFiles/dataTransaction/
archive
例:
cp -rp /usr/local/Calpont/data1/systemFiles/dataTransaction
/mnt/InfiniDB/backup/txns
注意 : -rp オプシ ョ ンは、 デ ィ レ ク ト リ を再帰的に コ ピー し 、 所有権情報を保存
す る ための も のです。
ト ラ ンザク シ ョ ン ロ グの確認
ト ラ ンザ ク シ ョ ン ロ グで文を確認で き ます。
ト ラ ンザ ク シ ョ ン ロ グは 10 分ご と にアーカ イ ブ さ れ ます。 アーカ イ ブ期間の変更につい
ては、 31 ページの 「 ト ラ ンザ ク シ ョ ン ロ グ を アーカ イ ブす る 間隔の構成」 を参照 し て く
だ さ い。
ト ラ ンザ ク シ ョ ン ロ グ フ ァ イ ルを ソ ースデ ィ レ ク ト リ に コ ピー し なおす場合、 コ ピー先
デ ィ レ ク ト リ 上の ト ラ ンザ ク シ ョ ン ロ グ フ ァ イ ルのほ う が新 し い場合があ る ため、 上書 き
し ない よ う に注意 し て く だ さ い。
Calpont InfiniDB デー タ ベースの削除
初期状態に戻 る (Calpont InfiniDB を最初に イ ン ス ト ール し た と き と 同 じ 状態にシ ス テ ム を
リ ス ト アす る ) 必要があ る 場合は、 次の手順に従い ます。
1. MySQL で、 すべての Calpont InfiniDB 表を特定 し ます。 こ れ ら の各表に対 し て、
「drop <table> restrict;」 を実行 し ます。
注意 : restrict オプシ ョ ン を指定す る と 表が早 く 削除 さ れ ますが、 Calpont
InfiniDB デー タ ベース を削除す る 場合にのみ使用 し て く だ さ い。
2. Calpont コ ン ソ ールを使用 し て シ ス テ ム を停止 し ます。
3. Calpont.xml フ ァ イ ルを調べた り し て各 DBRoot を特定 し ます。 こ れ ら の各ルー
ト に対 し て、 「rm -rf <root>/000.dir」 を実行 し ます。
4. DBRM 永続性フ ァ イ ル (通常は /mnt/OAM/dbrm 内) を検索 し 、 それ ら すべて を
削除 し ます。
68 バ ッ ク ア ッ プおよび リ カバ リ の実行
5. 「/usr/local/Calpont/bin/clearShm」 を実行 し て InfiniDB の共有 メ モ
リ ーを消去 し ます。
6. Calpont コ ン ソ ールを使用 し てシ ス テ ム を起動 し ます。
7. シ ス テ ム が完全に起動 し た ら 、 Linux プ ロ ン プ ト で 「/usr/local/Calpont/
bin/dbbuilder 7」 を実行 し て新 し い Calpont InfiniDB シ ス テ ム カ タ ロ グ を構
築 し ます。
こ れで、 シ ス テ ム で表を作成す る 準備がで き ま し た。
バ ッ ク ア ッ プおよび リ カバ リ の実行 69
70 バ ッ ク ア ッ プおよび リ カバ リ の実行
第8章
パフ ォ ーマ ン スチ ュ ーニ ン グ
こ の章では、 Calpont InfiniDB のパフ ォ ーマ ン ス をチ ュ ーニ ン グす る 方法について説明
し ます。
問合せのチ ュ ーニ ングのガ イ ド ラ イ ン - デー タ ア ク セス操作
Calpont InfiniDB では、 従来の索引ま たは表の ス キ ャ ン操作は使用 さ れ ません。 ど ち ら
の操作 も Calpont InfiniDB シ ス テ ム内には存在 し ません。
Calpont InfiniDB で使用 さ れる操作 :
列の完全ス キ ャ ン : パフ ォ ーマ ン ス モジ ュ ールで利用可能なすべての ス レ ッ ド
を使用 し て、 列の各エ ン ト リ を ス キ ャ ンす る 操作。 通常、 操作の速度は、 デー
タ 型のサ イ ズ と 、 列内の行の合計数に関連 し ます。 従来のシ ス テ ム で こ れに最
も 類似 し てい る のは、 索引ス キ ャ ン操作です。
パーテ ィ シ ョ ン列の ス キ ャ ン : Calpont InfiniDB のエ ク ス テ ン ト マ ッ プ を使用 し
て、 指定の フ ィ ル タ セ ッ ト に一致す る 値が列の特定の部分に含ま れない こ と を
特定す る 操作。 行に基づ く 従来の DBMS で こ れに最 も 類似 し てい る のは、 パー
テ ィ シ ョ ン索引の ス キ ャ ン操作ま たはパーテ ィ シ ョ ン表の ス キ ャ ン操作です。
行のオ フ セ ッ ト に よ る 列の検索 : 一致す る フ ィ ル タ のセ ッ ト が適用 さ れて最小
限の行セ ッ ト が特定 さ れ る と 、 必要なブ ロ ッ ク を正確に決定す る 計算を使用 し
て追加のブ ロ ッ ク を リ ク エ ス ト し ます。 従来のシ ス テ ム で こ れに最 も 類似 し て
い る のは、 行 ID に よ る 検索です。
こ れ ら の操作は、 適切な フ ィ ル タ と 、 行のオ フ セ ッ ト に よ る 列の検索を実行す る た
め、 同時に自動的に実行 さ れ ます。 こ の一連の操作は、 問合せの特定の ス テ ッ プのサ
ポー ト において、 ユーザーモジ ュ ールか ら 一連のパフ ォ ーマ ン ス モジ ュ ールに発行 さ
れ る 処理を構成 し ます。
パフ ォ ーマ ン スチ ュ ーニ ング 71
パフ ォ ーマ ン ス メ ト リ ッ ク の収集 -calgetstats()
calgetstats() 関数は、 指定のセ ッ シ ョ ン内で実行 さ れた最後の問合せに関す る 情報を
提供す る ために使用 さ れ ます。
select calgetstats();
mysql> select count(*) from part;
+-----------+
| count(*) |
+-----------+
| 200000000 |
+-----------+
1 row in set (0.48 sec)
mysql> select calgetstats();
+----------------------------------------------------------------| calgestats()
+----------------------------------------------------------------| Query Stats: MaxMemPct-0; NumTempFiles-0; TempFileSpace-0MB;
PhyI/O-0; CacheI/O-98039;
+----------------------------------------------------------------. . . continued:
-----------------------------------------------------------------+
BlocksTouched-97658; CasPartBlks-0; MsgBytesIn-2MB; MsgBytesOut0MB| 1242146662 640516 |
-----------------------------------------------------------------+
1 row in set (0.00 sec)
出力には、 次の情報が含まれ ます。
MaxMemPct : 大規模な (ユーザーモジ ュ ールに よ る ) ハ ッ シ ュ 結合操作のサポー
ト 時な ど、 ユーザーモジ ュ ールの メ モ リ ー利用率の ピー ク 時の値。
NumTempFiles : 作成 さ れた一時フ ァ イ ルの数に関す る レ ポー ト 。 一時フ ァ イ ルは、
利用可能な メ モ リ ーを超え る 大 き さ の問合せ操作 (通常は、 比較的小 さ い表結合
カーデ ィ ナ リ テ ィ が、 構成可能な何 ら かの し き い値を超え る 特殊な結合操作) を
サポー ト す る ために作成 さ れ ます。
TempFileSpace : 一時フ ァ イ ルが使用す る 領域に関す る レ ポー ト 。 一時フ ァ イ ルは、
利用可能な メ モ リ ーを超え る 大 き さ の問合せ操作 (通常は、 比較的小 さ い表結合
カーデ ィ ナ リ テ ィ が、 構成可能な何 ら かの し き い値を超え る 特殊な結合操作) を
サポー ト す る ために作成 さ れ ます。
PhyI/O : デ ィ ス ク 、 SSD、 その他の永続ス ト レージか ら 読み取 ら れ る 8K ブ ロ ッ ク の
数。 ほ と ん ど の場合、 個々の I/O 操作の数はブ ロ ッ ク の数に比べて非常に少ない
72 パフ ォ ーマ ン スチ ュ ーニ ング
ため、 Calpont InfiniDB では 1 回の I/O 操作で 512 個のブ ロ ッ ク が同時に読み取
ら れます。
CacheI/O : 必要な個別の物理 I/O コ ールの数に よ り 下方調整 さ れてい る 、 メ モ
リ ー内で処理 さ れた 8K ブ ロ ッ ク の概数。
BlocksTouched : メ モ リ ー内で処理 さ れた 8K ブ ロ ッ ク の概数。
CalPartBlks : Calpont InfiniDB のエ ク ス テ ン ト マ ッ プの除外動作に よ り 除外 さ れ
たブ ロ ッ ク ア ク セ ス の数。
MsgBytesIn、 MsgByteOut : 問合せをサポー ト す る ために ノ ー ド 間で送信 さ れ る
メ ッ セージのバ イ ト 数 (MB 単位)。
パフ ォ ーマ ン ス メ ト リ ッ ク の収集
/var/log/Calpont/debug.log の使用
デフ ォ ル ト の ト レース レベルでは、 Calpont InfiniDB に よ っ て、 問合せの開始時刻 と 終
了時刻に加え て、 実行 さ れてい る 各文が debug.log に記録 さ れます。 こ の情報は、
問合せを実行 し てい る ユーザーモジ ュ ールの /var/log/Calpont/debug.log フ ァ
イ ルに格納 さ れます。
calsettrace(); を使用す る と 、 追加情報を出力で き ます。
calsettrace(1); の使用
calsettrace(1) 関数を使用す る と 、 文を実行 し てい る ユーザーモジ ュ ールの
/var/log/Calpont/debug.log に、 よ り 詳細な情報を格納で き ます。
注意 : calsettrace(1) に よ る ロ ギ ン グ処理の増加に よ っ て、 パフ ォーマ ン ス が影
響を受け ます。
引数 (1) を使用す る と こ の フ ァ イ ルが出力 さ れ、 (0) を使用す る と フ ァ イ ルは作成 さ れ
ません。 こ の フ ァ イ ルの作成の有効化ま たは無効化は、 セ ッ シ ョ ン レベルです。 その
他の ト レース レベルは、 Calpont サポー ト の指示の下でのみ設定 し て く だ さ い。
select calsettrace(1);
calsettrace(1); 設定に よ り 、 警告情報が各文に含まれ る よ う にな る こ と に注意 し
て く だ さ い。 警告の例を次に示 し ます。
1 row in set, 1 warning (0.06 sec)
パフ ォ ーマ ン スチ ュ ーニ ング 73
/var/log/mysqld.log の使用
MySQL と Calpont InfiniDB 間の イ ン タ フ ェース に関連す る 追加 ロ グ情報は、 文を実行 し て
い る ユーザーモジ ュ ールの /var/log/mysqld.log フ ァ イ ルに出力 さ れ ます。 こ こ に表
示 さ れ る 情報は、 問合せを サポー ト す る ために実行 さ れ る 操作の全体像は示 し ませんが、
Calpont サポー ト の指示の下で使用す る こ と があ り ます。
エ ク ス テ ン ト マ ッ プのレ ン ジパーテ ィ シ ョ ニ ングの理解
エ ク ス テ ン ト は、 800 万行の連続行 と し て定義 さ れます。 エ ク ス テ ン ト マ ッ プには、 各エ
ク ス テ ン ト 内の最小値お よ び最大値が格納 さ れ ます。 作成時に ロ ー ド さ れ る デー タ の場合
( リ アル タ イ ム ま たは リ アル タ イ ム に近い)、 一意の識別子の フ ィ ール ド お よ び日付フ ィ ー
ル ド は、 通常、 昇順パ タ ーン に従い ます。 こ のパ タ ーン では、 各エ ク ス テ ン ト に異な る 最
小値 と 最大値が割 り 当て ら れ る ため、 大量の読取 り ブ ロ ッ ク の除外が可能にな り ます。
エ ク ス テ ン ト マ ッ プには次の特徴があ り ます。
1. エ ク ス テ ン ト のすべての列フ ァ イ ルが同 じ マ ウ ン ト ポ イ ン ト に作成 さ れます。
2. エ ク ス テ ン ト は、 実行時に、 指定のパフ ォ ーマ ン ス モジ ュ ールに動的にマ ッ プ さ
れます。
3. エ ク ス テ ン ト 内の各列の最小値お よ び最大値が列の ス キ ャ ン結果 と し て記録 さ れ
ます。 通常、 エ ク ス テ ン ト の ス キ ャ ンは 1 秒未満の操作であ り 、 最小値お よ び最
大値の保持に よ る オーバーヘ ッ ド は 2% 未満です。
4. 最小値お よ び最大値は、 そのエ ク ス テ ン ト 内のデー タ が変更 さ れ る と エ ク ス テ ン
ト マ ッ プか ら 消去 さ れ ますが、 エ ク ス テ ン ト の次回の ス キ ャ ン に よ っ て再移入 さ
れます。
拡張 (スケー リ ング)
パフ ォ ーマ ン スの場合
問合せの量お よ び複雑 さ が原因で問合せの応答に時間がかか る 場合は、 パフ ォーマ ン ス モ
ジ ュ ールを シ ス テ ムに追加 し ます。
同時実行性の場合
Calpont InfiniDB シ ス テ ムのユーザー数が増加 し た と き は、 ユーザーモジ ュ ールを追加す る
こ と に よ り パフ ォ ーマ ン ス を維持で き ます。
ユーザーモジ ュ ールの数は、 ユーザー数お よ び中間 と 最終の結果セ ッ ト のサ イ ズに基づ き
ます。
74 パフ ォ ーマ ン スチ ュ ーニ ング
デー タ 容量の場合
デー タ ベース にデー タ を追加す る と 、 シ ス テ ム で追加のデ ィ ス ク ア レ イ が必要 と な る
場合があ り ます。 デ ィ ス ク ア レ イ を追加す る と 、 キ ャ ッ シ ュ の割合が変わ り 、 デー タ
に効率的にア ク セ スす る のに追加のパフ ォ ーマ ン ス モジ ュ ールが必要 と な り ます。 場
合に よ っ ては、 追加のデ ィ ス ク コ ン ト ロ ー ラ を追加す る 必要があ り ます。 必要な ア レ
イ の総数は、 お客様のデー タ の ク ラ ス タ 化お よ び問合せの種類に大 き く 依存 し ます。
通常、 追加 さ れた ア レ イ は、 初期の割合 と 一致 し てい ます。
パフ ォ ーマ ン スチ ュ ーニ ング 75
76 パフ ォ ーマ ン スチ ュ ーニ ング
第9章
モ ジ ュ ールの構成
こ の章では、 Calpont InfiniDB モジ ュ ールを追加お よ び削除す る 方法について説明 し ま
す。 モジ ュ ールの追加を行 う 主な理由は、パフ ォ ーマ ン ス の向上や冗長性の追加です。
ま た、 使用 さ れていないモジ ュ ールを削除 し た り 、 ハー ド ウ ェ アや ソ フ ト ウ ェ アの更
新が必要なモジ ュ ールを オ フ ラ イ ン にす る こ と が必要な場合 も あ り ます。
Calpont InfiniDB コ ン ソ ールの コ マ ン ド を使用 し て、 モジ ュ ールを構成で き ます。 こ の
章では、 両方の場合の手順について説明 し ます。
モ ジ ュ ールを構成する前に
モジ ュ ールを構成す る 前に、 デー タ ベース を シ ャ ッ ト ダ ウ ン し て Calpont シ ス テ ムお
よ びデー タ ベース をバ ッ ク ア ッ プす る こ と をお薦め し ます。 手順については、 63 ペー
ジの 「バ ッ ク ア ッ プお よ び リ カバ リ の実行」 を参照 し て く だ さ い。
追加、 削除ま たは再構成す る すべてのモジ ュ ールのルー ト パ ス ワー ド があ る こ と を確
認 し て く だ さ い。
注意 : モジ ュ ールを追加 し た後、 新 し いモジ ュ ールがシ ス テ ムの
一部 と し て監視 さ れ る よ う に NMS シ ス テ ム を更新 し ます。
モジ ュ ールの削除時に、 NMS は、 サーバーがネ ッ ト ワ ー ク 上で機
能 し ていない と い う ア ラ ー ト を発行す る 場合があ り ます。
モ ジ ュ ール ID
Calpont シ ス テ ムのモジ ュ ールは、 次の 2 文字のモジ ュ ール タ イ プ と その後の一意の
番号に よ っ て識別 さ れます。
umnn
: ユーザーモジ ュ ール
pmnn
: パフ ォ ーマ ン ス モジ ュ ール
た と えば、 Calpont シ ス テ ム で、 最初のユーザーモジ ュ ールが um1 にデフ ォ ル ト 設定
さ れた と し ます。 別のユーザーモジ ュ ールが追加 さ れ る と 、 こ のモジ ュ ールは um2 に
デフ ォ ル ト 設定 さ れ ます (以降同様)。
モ ジ ュ ールの構成 77
Calpont では、 常にシ リ ーズ内で利用可能な最初のモジ ュ ール ID が選択 さ れ ます。 た と え
ば、 pm1、 pm2、 pm4 が存在す る 場合に、 新 し いパフ ォーマ ン ス モジ ュ ールを追加す る と 、
Calpont に よ っ て新 し いモジ ュ ールに pm3 と い う 名前が付け ら れ ます。
自動構成
Calpont のデフ ォ ル ト を受け入れ る と 、 モジ ュ ールが自動構成 さ れ る ため労力を減 ら す こ
と がで き ます。 少ない コ マ ン ド で、 よ り 多 く のモジ ュ ールを構成で き ます。 自動構成で実
行 さ れ る 内容は次の と お り です。
モジ ュ ール ID を作成す る
同 じ タ イ プの複数のモジ ュ ールを 1 つの コ マ ン ド で追加す る
同 じ タ イ プの複数のモジ ュ ールを 1 つの コ マ ン ド で削除す る
手動構成
モジ ュ ールを手動で構成す る こ と も で き ますが、 追加の コ マ ン ド を使用 し て、 よ り 多 く の
デー タ を入力す る 必要があ り ます。 手動構成で実行で き る 内容は次の と お り です。
こ の章で前述 し たモジ ュ ール ID 形式に従い、 独自の番号付け ス キーム を作成す る
特定のモジ ュ ールを 1 つずつ追加す る
特定のモジ ュ ールを 1 つずつ削除す る
DBRoot の移動
あ る モジ ュ ールか ら 別のモジ ュ ールに DBRoot を移動す る には、 最初に stopSystem を
実行す る 必要があ り ます。 シ ス テ ムがア ク テ ィ ブであ る 間は、 DBRoot を移動で き ません。
DBRoot を移動す る には
1. Linux プ ロ ン プ ト で、 cmconsole と 入力 し ます。
2. movePMDbrootConfig [fromPM] [DBRoot] [toPM] と 入力 し て [Enter] を
押 し ます。
例:
InfiniDB> movePmDbrootConfig pm6 6 pm5
movepmdbrootconfig
Wed Mar 28 10:44:24 2012
DBRoot IDs currently assigned to 'pm6' = 6
DBRoot IDs currently assigned to 'pm5' = 5
DBroot IDs being moved, please wait...
DBRoot IDs newly assigned to 'pm6' =
DBRoot IDs newly assigned to 'pm5' = 5, 6
78 モ ジ ュ ールの構成
InfiniDB> movePmDbrootConfig pm5 6 pm6
movepmdbrootconfig
Wed Mar 28 10:44:33 2012
DBRoot IDs currently assigned to 'pm5' = 5, 6
DBRoot IDs currently assigned to 'pm6' =
DBroot IDs being moved, please wait...
DBRoot IDs newly assigned to 'pm5' = 5
DBRoot IDs newly assigned to 'pm6' = 6
モ ジ ュ ールの追加
パフ ォ ーマ ン ス モジ ュ ールやユーザーモジ ュ ールを追加す る と 、 Calpont シ ス テ ム の
処理能力を効率的に向上 さ せ る こ と がで き ます。 シ ス テ ム のパフ ォ ーマ ン スや同時実
行性を向上 さ せ る ために追加で き る モジ ュ ールの タ イ プの詳細は、 71 ページの 「パ
フ ォ ーマ ン ス チ ュ ーニ ン グ」 を参照 し て く だ さ い。 ユーザーモジ ュ ールは、 冗長性を
目的 と し て追加で き ます。
警告 : モジ ュ ールは、 シ ス テ ムがア ク テ ィ ブ ま たはオ フ ラ イ ンの
状態で追加で き ます。 追加 し た後に、 alterSystem-Enable コ
マ ン ド を使用 し て稼働 さ せ る こ と がで き ます。
Calpont は、 1 つの コ マ ン ド で同 じ タ イ プの複数のモジ ュ ールを追加す る と き に、 モ
ジ ュ ール ID をデフ ォ ル ト で設定 し ます。 独自のモジ ュ ール ID を使用 し てモジ ュ ール
を追加す る には、 モジ ュ ールを 1 つずつ追加す る 必要があ り ます。
注意 : 複数の NIC でパフ ォ ーマ ン ス モジ ュ ールを追加す る と き は、
すべての NIC のホ ス ト 名を追加す る 必要があ り ます。 こ れを行わ
ない と 、モジ ュ ールの追加処理は無効なパ ラ メ ー タ で失敗 し ます。
モ ジ ュ ールの構成 79
Calpont コ ン ソ ールを使用 し て Calpont シ ス テ ムにモジ ュ ールを追加す る には
1. Calpont InfiniDB コ ン ソ ールに ロ グオ ン し ます。
2. 次のいずれか を実行 し ます。
デフ ォ ル ト のモジ ュ ール ID を受け入れて複数のモジ ュ ールを追加す る には、
addModule module_type number_of_modules
IP_address_or_host_name ( カ ン マで区切 る ) root_password と 入
力 し ます。
た と えば、 2 つのパフ ォ ーマ ン ス モジ ュ ールを ホ ス ト 名 SRVCPT1 お よ び
SRVCPT2 で追加す る には、 次の よ う に入力 し ます。
addModule pm 2 SRVCPT1,SRVCPT2 mypwd
ID を 1 つずつ手動で作成す る には、 次の よ う に入力 し ます。
addModule module_ID IP_address_or_host_name
root_password
た と えば、 1 つのユーザーモジ ュ ール (番号 1285) を ホ ス ト 名 SRVCPT1 で追
加す る には、 次の よ う に入力 し ます。
addModule UM1285 SRVCPT1 mypwd
新 し いモジ ュ ールを追加す る ために Calpont.xml が更新 さ れ、 適切な フ ァ イ ル
が新 し いモジ ュ ールに イ ン ス ト ール さ れ ます。
モジ ュ ールの追加に失敗 し た場合は、 Calpont InfiniDB コ ン ソ ールにエ ラ ー メ ッ
セージが表示 さ れ ます。 追加の詳細は、 パフ ォ ーマ ン ス モジ ュ ール番号 1 の
Calpont ロ グ フ ァ イ ルにあ り ます。
Amazon EC2 シ ス テ ム上の Calpont シ ス テ ム にモジ ュ ールを追加す る には、 次のいずれか
を実行 し ます。
デフ ォ ル ト のモジ ュ ール ID を受け入れて複数のモジ ュ ールを追加 し 、 自動的に イ
ン ス タ ン ス を作成す る には、 次の よ う に入力 し ます。
addModule module_type number_of_modules
た と えば、 2 つのパフ ォ ーマ ン ス モジ ュ ールをデフ ォ ル ト の イ ン ス タ ン ス名で追加
す る には、 次の よ う に入力 し ます。
addModule pm 2
デフ ォ ル ト のモジ ュ ール ID を受け入れて複数のモジ ュ ールを追加 し 、 既存の イ ン
ス タ ン ス に イ ン ス ト ールす る には、 次の よ う に入力 し ます。
addModule module_type number_of_modules instance-ids
た と えば、 2 つのパフ ォ ーマ ン ス モジ ュ ールを イ ン ス タ ン ス名 id-1234567 お よ び
id-9876543 で追加す る には、 次の よ う に入力 し ます。
addModule pm 2 id-1234567,id-9876543
80 モ ジ ュ ールの構成
ID を 1 つずつ手動で作成 し 、 自動的に イ ン ス タ ン ス を作成す る には、 次の よ う
に入力 し ます。
addModule module_ID
た と えば、 1 つのパフ ォ ーマ ン ス モジ ュ ール番号 2 をデフ ォ ル ト の イ ン ス タ ン
ス名で追加す る には、 次の よ う に入力 し ます。
addModule pm2
ID を 1 つずつ手動で作成 し 、 既存の イ ン ス タ ン ス に イ ン ス ト ールす る には、 次
の よ う に入力 し ます。
addModule module_ID instance-id
た と えば、 1 つのユーザーモジ ュ ール番号 2 を イ ン ス タ ン ス名 id-1111111 で追
加す る には、 次の よ う に入力 し ます。
addModule um2 id-1111111
モ ジ ュ ールの削除
モジ ュ ールは、 不要にな っ た り 、 ハー ド ウ ェ ア更新のためにオ フ ラ イ ン にす る 必要が
あ る 場合、 シ ス テ ム か ら 削除で き ます。 モジ ュ ールは、 そのモジ ュ ールが無効にな っ
てい る 場合 (11 ページの 「シ ス テ ム モジ ュ ールの無効化お よ び有効化」 を参照)、 ま
たはシ ス テ ムが停止 し てい る 場合 (10 ページの 「シ ス テ ムの停止」 を参照) に削除で
き ます。
デフ ォ ル ト のモジ ュ ール ID で構わなければ、 複数のモジ ュ ールを シ ス テ ム か ら すば
や く 削除で き ます。 こ れに よ っ て、 シ ス テ ム に追加 さ れた最後のモジ ュ ールが削除 さ
れます。
モジ ュ ール ID に基づいて、 特定のモジ ュ ールを個別に削除す る こ と も で き ます。
注意 : 最後の um ま たは pm モジ ュ ールは削除で き ません。
モ ジ ュ ールの構成 81
Calpont コ ン ソ ールを使用 し てモジ ュ ールを削除す る には
1. Calpont InfiniDB コ ン ソ ールに ロ グオ ン し ます。 1 ページの 「Calpont InfiniDB コ ン
ソ ールに対す る ロ グオ ンお よ び ロ グオ フ」 を参照 し て く だ さ い。
2. 次のいずれか を実行 し ます。
InfiniDB に追加 さ れた最後のモジ ュ ールを削除す る には、 次の よ う に入力 し ま
す。
removeModule module_type number_of_modules
た と えば、 2 つのパフ ォ ーマ ン ス モジ ュ ールを削除す る には、
RemoveModule pm 2 と 入力 し ます。
特定のモジ ュ ールを削除す る には、 removeModule module_ID と 入力 し ま
す。
た と えば、 モジ ュ ール ID が UM1285 の 1 つのユーザーモジ ュ ールを削除す る に
は、 次の よ う に入力 し ます。
removeModule um1285
82 モ ジ ュ ールの構成
第 10 章
ユーザーへのア ク セス権の付与
Calpont InfiniDB では、 ユーザーア カ ウ ン ト に権限を設定す る こ と がで き ます。 付与す
る ための構文は標準 MySQL 構文に準 じ ます。 InfiniDB の出荷時には、 root ユーザーに
完全な権限が付与 さ れてい ます。 ただ し 、 ユーザーア カ ウ ン ト を設定ま たは制限す る
ために、 権限を付与ま たは制限す る 必要があ り ます。
InfiniDB は、 InfiniDB 処理で使用 さ れ る すべての一時表の作成に infinidb_vtable と い う
専用の ス キーマ を使用 し ます。 root ユーザーア カ ウ ン ト には こ の ス キーマに対す る 権
限がデフ ォ ル ト で付与 さ れてい ますが、 すべてのユーザーア カ ウ ン ト に こ の ス キーマ
に対す る 完全な権限が付与 さ れ る 必要があ り ます。
grant ALL on infinidb_vtable.* to user_account;
user_account にはユーザー ロ グ イ ン、 サーバーお よ びパ ス ワ ー ド を指定 し
ます。
ユーザーに設定す る ア ク セ ス権ま たは制約に合わせて、 既存のオブジ ェ ク ト (表、 関
数、 プ ロ シージ ャ 、 ビ ュ ー) に権限ま たは制限を追加す る こ と も で き ます。
パ ス ワ ー ド を持つユーザーにデー タ ベース のすべての表への フルア ク セ ス を付与す る
例 (前述の権限付与の後) :
use mysql;
grant ALL on my_schema.* to 'someuser'@'somehost'
identified by 'somepassword';
flush privileges;
パ ス ワ ー ド を持つユーザーに 1 つの表への読取 り 専用ア ク セ ス権を付与す る 例 (前述
の権限付与の後) :
use mysql;
grant SELECT on my_schema.table1 to 'someuser'@'somehost'
identified by 'somepassword';
flush privileges;
ユーザーへのア ク セス権の付与 83
84 ユーザーへのア ク セス権の付与
第 11 章
ク ロ ス エ ン ジ ン表ア ク セス
問合せ内で InfiniDB 表を InfiniDB 以外の表 (MyISAM 表な ど) と 結合す る こ と がで き
ます。 こ のプ ロ セ ス を有効にす る には、 Calpont.XML 構成フ ァ イ ル内で接続情報を
定義す る こ と で、 JDBC 接続を確立す る 必要があ り ます。
JDBC 接続を確立す る ために使用 さ れ る 接続文字列には、 ユーザー名お よ びパ ス ワー
ド が必要です。 ユーザー名は SQL セ ッ シ ョ ン か ら 取得で き ますが、 パ ス ワ ー ド を
MySQL か ら 取得す る こ と はで き ません。
InfiniDB と 同 じ サーバー上の固有の MySQL に存在す る 表 と 結合 し て ア ク セ スす る ため
の Calpont.XML 構成フ ァ イ ルのエ ン ト リ 例を次に示 し ます。
<CrossEngineSupport>
<Host>mysqlserver</Host>
<Port>3306</Port>
<User>root</User>
<Password>pwd</Password>
</CrossEngineSupport>
ク ロ ス エ ン ジ ン表ア ク セス 85
86 ク ロ スエ ン ジ ン表ア ク セス
第 12 章
ユーザーへの リ ソ ースの割当て
InfiniDB では、 ユーザーに割 り 当て る (CPU) リ ソ ース の優先順位付け を行 う 機能が
サポー ト さ れ ます。
最小の CPU リ ソ ース が指定 さ れてい る ユーザーが最優先 と な り 、 その順序は設定可
能です。 事実上、 特定のユーザーに一定の リ ソ ース を確保す る こ と がで き ます。 次に
例を示 し ます。
ユーザー 1 に、 40% 以上の CPU リ ソ ース を割 り 当て ます。
ユーザー 2 に、 30% 以上の CPU リ ソ ース を割 り 当て ます。
ユーザー 1 お よ びユーザー 2 が問合せを実行中に、 他のユーザーが問合せを行
う ために ロ グ イ ン し た場合、 こ れ ら の新 し いユーザー (ユーザー 3、 4、 お よ
び 5 な ど) には CPU リ ソ ース の残 り 30% のみが割 り 当て ら れ ます。
ユーザーの優先順位の管理
infinidb_querystats ス キーマで、 ユーザーがユーザーの優先順位を設定、 削除、
お よ び表示す る ための 3 つの ス ト ア ド プ ロ シージ ャ が作成 さ れてい ます。 優先順位表
では、 ユーザー と 優先順位レベルが関連付け ら れ ます。 エ ン ト リ を保持 し ていない
ユーザーには、 デフ ォ ル ト で低い優先順位レベルが付与 さ れます。
CalSetUserPriority (host varchar, user varchar, priority
varchar)
ホ ス ト 上のユーザーに優先順位レベルが割 り 当て ら れ ます。
優先順位は 「high」、 「medium」、 ま たは 「low」 で、 大文字 と 小文字の区別
はあ り ません。
MySQL に存在す る か ど う か、 ホ ス ト お よ びユーザーが検証 さ れ ます。
CalRemoveUserPriority(host varchar, user varchar)
デフ ォ ル ト の 「low」 を実質的に リ ス ト アす る こ と で、 ユーザーエ ン ト リ が削
除 さ れ ます。
ユーザーが存在す る か ど う かは検証 さ れ ません。
ユーザーへの リ ソ ースの割当て 87
CalShowProcessList()
MySQL の 「show processlist」 と 、 ユーザー優先順位の組合せが出力 さ れ ま
す。
MySQL ユーザーには、 こ れ ら のプ ロ シージ ャ の実行権限 と 、 infinidb_querystats ス
キーマ内の表に対す る 参照権限が付与 さ れてい る 必要があ り ます。 ま たは、 スーパーユー
ザーに対 し てのみ機能す る 、 次の権限を付与す る こ と も で き ます。
GRANT ALL ON infinidb_querystats.* TO 'user'@'host';
// こ れでユーザーは優先順位のプ ロ シージ ャ を使用 し た り 、 問合せの状態を表示 し
た り で き ます。
ユーザーの優先順位機能の有効化
こ の機能を有効にす る には、 Calpont 構成フ ァ イ ル (/usr/local/Calpont/etc/
Calpont.xml)の <UserPriority><Enabled> 要素を Y に設定す る 必要があ り ます(デ
フ ォ ル ト は N です)。
<UserPriority>
<Enabled>N</Enabled>
</UserPriority>
ク ロ ス エ ン ジ ンサポー ト も 有効にす る 必要があ り ます。 こ のガ イ ド の 「 ク ロ ス エ ン ジ ン表
ア ク セ ス」 を参照 し て く だ さ い。
ユーザーの優先処理
PrimProc プ ロ セ ス では、 各優先順位レベルに対 し て 1 つのジ ョ ブキ ュ ーが存在 し 、 各
キ ュ ーに ス レ ッ ド が割 り 当て ら れてい ます。 各キ ュ ーに割 り 当て ら れ る ス レ ッ ド の数は、
Calpont 構成フ ァ イ ルの次の要素を使用 し て構成で き ます。
<PrimitiveServer><HighPriorityPercentage>
<PrimitiveServer><MediumPriorityPercentage>
<PrimitiveServer><LowPriorityPercentage>
デフ ォ ル ト はそれぞれ 60、 30、 お よ び 10 です。 各キ ュ ーには少な く と も 1 つの ス レ ッ ド
が割 り 当て ら れ る ため、 「ア イ ド ル」 ま たは 「ス タ ベーシ ョ ン」 の優先順位構成は発生 し
ません。 開始時の ス レ ッ ド の数は、 100% = 2 * (マシ ン上の コ アの数) の よ う に正規化 さ
れてい ます。 ユーザーは必要に応 じ て、 CPU の容量を超え て、 ま たは CPU の容量 よ り も
少な く 、 割当ての予約を行 う こ と がで き ます。
次に、 8 コ アのシ ス テ ム上でデフ ォ ル ト を使用 し た場合の、 ス レ ッ ド の割当ての例を示 し
ます。
88 ユーザーへの リ ソ ースの割当て
優先順位が低いキ ュ ーの場合、16 の 10% であ る 1.6 が切 り 捨て ら れ、1 ス レ ッ ド
と な り ます。
優先順位が中程度のキ ュ ーの場合、 16 の 30% であ る 4.8 が切 り 捨て ら れ、 4 ス
レ ッ ド と な り ます。
残 り の 11 ス レ ッ ド が、 優先順位が高いキ ュ ーに割 り 当て ら れます。
厳密には、 処理を行 う 優先キ ュ ーが各ス レ ッ ド に割 り 当て ら れてい ます。 ス レ ッ ド の
優先キ ュ ーが空であ る 場合、 優先順位が高いキ ュ ー、 中程度のキ ュ ー、 お よ び低い
キ ュ ー と い う 順序でジ ョ ブが選択 さ れます。 優先順位が低いジ ョ ブのみが実行 さ れて
い る 場合、 8 コ アのシ ス テ ム上に存在す る 16 の ス レ ッ ド すべてで、 優先順位が低い
キ ュ ーのジ ョ ブの処理が行われます。 デフ ォ ル ト を使用 し て優先順位が中程度の問合
せが開始 さ れ る と 、 優先順位が低いジ ョ ブの処理を行 う ために優先順位が低いキ ュ ー
に割 り 当て ら れてい る 1 つの ス レ ッ ド を残 し 、 優先順位が高いキ ュ ーお よ び中程度の
キ ュ ーに割 り 当て ら れてい る 15 の ス レ ッ ド で、 その中程度のキ ュ ーの処理が行われ
ます。 その後、 優先順位が高い問合せが開始 さ れ る と 、 優先順位が高いキ ュ ーに割 り
当て ら れてい る 11 の ス レ ッ ド で、 優先順位が高いジ ョ ブの処理が開始 さ れ、 優先順
位が中程度のキ ュ ーに割 り 当て ら れてい る 4 つの ス レ ッ ド で、 優先順位が中程度の
ジ ョ ブの処理が行われ、 優先順位が低いキ ュ ーに割 り 当て ら れてい る 1 つの ス レ ッ ド
で、 優先順位が低いジ ョ ブの処理が行われ ます。
こ のアルゴ リ ズ ム か ら 、 構成パ ラ メ ー タ は各優先順位の最小レベルであ る と 考え る こ
と がで き ます。
こ の実装は、 PrimProc に よ っ て実行 さ れ る 処理にのみ影響す る こ と に注意 し て く だ さ
い。 特定の問合せの作業の分散状態に よ っ ては、 ユーザーの総合的なパフ ォ ーマ ン ス
が優先順位レベル と 釣 り 合 う 場合ま たは釣 り 合わない場合があ り ます。
ユーザーへの リ ソ ースの割当て 89
90 ユーザーへの リ ソ ースの割当て
第 13 章
問合せのパフ ォ ーマ ン ス監視
デー タ ベース管理者の タ ス ク の 1 つに、 問合せのパフ ォ ーマ ン ス を監視 し 、 速度低下
の原因 と な っ てい る SQL コ ー ド を正確に特定す る こ と が含ま れ ます。 こ れを達成す る
ために、 DBA が分析を行 う ための問合せに関す る 統計デー タ を、 取得お よ び表示で き
ます。
すべてのセ ッ シ ョ ンの問合せ履歴お よ び実行時間 と 、 各問合せに対 し て現在
calgetstats() に よ っ て提供 さ れてい る 統計を確認す る ための ツールが提供 さ れて
い ます。 統計監視に使用で き る のは、 次の InfiniDB 構文の問合せのみです。
SELECT
INSERT
UPDATE
DELETE
INSERT SELECT
LOAD DATA INFILE
問合せ統計収集機能の有効化
問合せ統計収集機能を有効にす る には、 Calpont.XML 構成フ ァ イ ルの
<QueryStats><Enabled> 要素を Y に設定す る 必要があ り ます (デフ ォ ル ト は N で
す)。
<QueryStats>
<Enabled>Y</Enabled>
</QueryStats>
ク ロ ス エ ン ジ ン サポー ト も 有効にす る 必要があ り ます。 こ のガ イ ド の 「 ク ロ ス エ ン ジ
ン表ア ク セ ス」 を参照 し て く だ さ い。
問合せのパフ ォ ーマ ン ス監視 91
問合せ統計表
QueryStats を有効にす る と 、 次の表に統計情報が含まれ る よ う にな り ます。
こ の表は イ ン ス ト ール時に作成 さ れ ますが、 キ ャ ラ ク タ セ ッ ト は latin1 (デフ ォ ル ト ) で
設定 さ れ ます。 キ ャ ラ ク タ セ ッ ト が UTF-8 の環境では query 列が正 し く 出力 さ れないた
め、 必要に応 じ て表の再作成が必要 と な り ます。 次に例を示 し ます。
DROP TABLE IF EXISTS querystats;
CREATE TABLE IF NOT EXISTS querystats
(`queryID` bigint NOT NULL AUTO_INCREMENT,
`sessionID` bigint DEFAULT NULL,
`host` varchar(50),
`user` varchar(50),
`priority` char(20),
`queryType` char(25),
`query` varchar(8000),
`startTime` timestamp NOT NULL,
`endTime` timestamp NOT NULL,
`rows` bigint,
`errno` int,
`phyIO` bigint,
`cacheIO` bigint,
`blocksTouched` bigint,
`CPBlocksSkipped` bigint,
`msgInUM` bigint,
`msgOutUm` bigint,
`maxMemPct` int,
`blocksChanged` bigint,
`numTempFiles` bigint,
`tempFileSpace` bigint,
PRIMARY KEY (`queryID`)
) DEFAULT CHARSET=utf8;
列定義
ホ ス ト (host)
問合せを行っ てい る 接続元のホ ス ト 名ま たは IP ア ド レ ス です。
ユーザー (user)
問合せを行っ てい る InfiniDB のユーザー名です。
優先順位 (priority)
問合せを行っ てい る ユーザーの優先順位です (「LOW」、 「MEDIUM」、 「HIGH」 が出
力 さ れ ます)。
92 問合せのパフ ォ ーマ ン ス監視
問合せの実行時間 (startTime、 endTime)
終了時刻 - 開始時刻で計算 さ れ ます。
開始時刻 : 問合せが ExeMgr、 DDLProc、 ま たは DMLProc で開始 さ れた時刻
終了時刻 : 最後の結果パケ ッ ト が ExeMgr、 DDLProc、 ま たは DMLProc で終了
し た時間
戻 さ れた行ま たは影響を受けた行 (rows)
SELECT 問合せに対 し て戻 さ れた行数、 ま たは DML 問合せに よ っ て影響を受
けた行数です。 DDL お よ び他の種類の問合せでは有効ではあ り ません。
物理 I/O (phyIO)
問合せに よ っ て、 デ ィ ス ク か ら ア ク セ ス さ れたブ ロ ッ ク 数です (プ リ フ ェ ッ チ
ブ ロ ッ ク も 含む)。 こ の統計は、 ExeMgr に よ っ て処理 さ れ る 問合せでのみ有効
です (SELECT、 WHERE 句を使用 し た DML、 INSERT SELECT な ど)。
キ ャ ッ シ ュ I/O (cacheIO)
問合せに よ っ て、 キ ャ ッ シ ュ か ら ア ク セ ス さ れたブ ロ ッ ク 数です。 こ の統計
は、 ExeMgr に よ っ て処理 さ れ る 問合せでのみ有効です (SELECT、 WHERE 句
を使用 し た DML、 INSERT SELECT な ど)。
ブ ロ ッ ク ア ク セ ス (blocksTouched)
問合せに よ っ て、 キ ャ ッ シ ュ か ら 物理的にア ク セ ス さ れたブ ロ ッ ク の合計数で
す。 こ の数は物理 I/O お よ びキ ャ ッ シ ュ I/O の合計数以下であ る 必要があ り ま
す。 こ の統計は、 ExeMgr に よ っ て処理 さ れ る 問合せでのみ有効です
(SELECT、 WHERE 句を使用 し た DML、 INSERT SELECT な ど)。
変更 さ れたブ ロ ッ ク (blocksChanged)
問合せに よ っ て、 デ ィ ス ク 上で物理的に変更 さ れたブ ロ ッ ク の合計数です。 こ
れは DELETE 文ま たは UPDATE 文に対 し てのみ使用で き ます。
除外 さ れたパーテ ィ シ ョ ン ブ ロ ッ ク (CPBlocksSkipped)
エ ク ス テ ン ト マ ッ プの比較的単純なパーテ ィ シ ョ ン に よ っ て除外 さ れてい る ブ
ロ ッ ク 数です。 こ の統計は、 ExeMgr に よ っ て処理 さ れ る 問合せでのみ有効で
す (SELECT、 WHERE 句を使用 し た DML、 INSERT SELECT な ど)。
UM か ら PM への メ ッ セージ (msgOutUM)
ExeMgr か ら PrimProc に対 し て送信 さ れ る メ ッ セージ数です (バ イ ト 単位)。 す
べての PM に対 し て メ ッ セージ を分散す る 必要があ る 場合は、 分散 さ れたすべ
ての メ ッ セージの合計が計算 さ れ ます。 こ の統計は、 ExeMgr に よ っ て処理 さ
れ る 問合せでのみ有効です (SELECT、 WHERE 句を使用 し た DML、 INSERT
SELECT な ど)。
PM か ら UM への メ ッ セージ (msgInUM)
PrimProc か ら ExeMgr に対 し て送信 さ れ る メ ッ セージ数です (バ イ ト 単位)。 こ
の統計は、 ExeMgr に よ っ て処理 さ れ る 問合せでのみ有効です (SELECT、
WHERE 句を使用 し た DML、 INSERT SELECT な ど)。
問合せのパフ ォ ーマ ン ス監視 93
エ ラ ー番号 (errNo)
こ の問合せが失敗 し た場合は IDB エ ラ ー番号が、 正常に終了 し た場合は 0 が戻 さ
れます。
メ モ リ ー使用率 (maxMemPct)
こ の フ ィ ール ド には、 ユーザーモジ ュ ール (UM) の結合、 グループ化、 集計、 重
複行の削除な ど の操作を行 う ために使用 さ れてい る UM の メ モ リ ー使用率が示 さ
れます。
一時フ ァ イ ル (numTempFiles)
こ の フ ィ ール ド には、 ユーザーモジ ュ ール (UM) の結合、 グループ化、 集計、 重
複行の削除な ど の操作を行 う ために使用 さ れてい る UM の一時フ ァ イ ル使用数が
示 さ れ ます。
一時フ ァ イ ル領域 (tempFileSpace)
こ こ には、 ユーザーモジ ュ ール (UM) の結合、 グループ化、 集計、 重複行の削除
な ど の操作を行 う ために使用 さ れてい る UM の一時フ ァ イ ル使用サ イ ズが示 さ れ
ます。
問合せ統計の表示
ユーザーは、 問合せ統計表か ら 行を選択す る こ と で、 問合せ統計を表示で き ます。 次に例
を示 し ます。
例1:
過去 12 時間以内に実行 さ れたすべての SELECT 問合せの実行時間 と 戻 さ れた行が表示 さ
れます。
select queryid, query, endtime-starttime, rows from querystats
where starttime >= now() - interval 12 hour and querytype =
'SELECT';
例2:
過去 12 時間以内に、 セ ッ シ ョ ン 2 で実行に最 も 時間がかか っ てい る 3 つの SELECT 問合
せが表示 さ れ ます。
Select * from (select endtime-starttime execTime, query from
queryStats where sessionid = 2 and querytype = 'SELECT' and
starttime >= now()-interval 12 hour order by 1 limit 3);
94 問合せのパフ ォ ーマ ン ス監視
例3:
過去 12 時間以内に実行 さ れたすべての INSERT SELECT 問合せの、 平均実行時間、 最
小実行時間、 お よ び最大実行時間が表示 さ れ ます。
Select min(endtime-starttime), max(endtime-starttime),
avg(endtime-startime) from querystats where querytype=INSERT SELECT and starttime >= now() - interval 12
hour;
問合せのパフ ォ ーマ ン ス監視 95
96 問合せのパフ ォ ーマ ン ス監視
第 14 章
動作モー ド
Calpont InfiniDB は、 動作モー ド を介 し てすべての MySQL 問合せ構文を サポー ト し ま
す。 こ の動作モー ド は、 イ ン ス タ ン ス に対 し てデフ ォ ル ト と し て設定す る こ と も 、
セ ッ シ ョ ン レベルで設定す る こ と も で き ます。
セ ッ シ ョ ン レベルでの動作モー ド の設定については、 『Calpont InfiniDB SQL 構文ガ イ
ド 』 を参照 し て く だ さ い。
イ ン ス タ ン ス レベルで動作モー ド を設定す る には、 コ マ ン ド ラ イ ン ま たは my.cnf で
infinidb_vtable_mode を指定 し ます。 指定 し ない場合は、 デフ ォ ル ト で 1 (分散
モー ド ) が設定 さ れます。
コ マ ン ド ラ イ ン の場合 :
~/mysql/libexec/mysqld --infinidb_vtable_mode=value
my.cnf フ ァ イ ル (/usr/local/Calpont/mysql) の場合 :
[mysqld]
infinidb_vtable_mode=value
value は次の と お り です。
0 : 汎用的で互換性の高い行単位の処理モー ド 。 一部の WHERE 句 コ ン ポーネ ン
ト は InfiniDB に よ っ て処理 さ れますが、 結合はネ ス テ ッ ド ループ結合 メ カ ニズ
ム を使用 し て mysqld に よ っ てすべて処理 さ れ ます。
1 : (デフ ォ ル ト ) InfiniDB に よ っ て分散実行 と の互換性について問合せ構文が
評価 さ れ、 互換性のない問合せは拒否 さ れ ます。 こ のモー ド で実行 さ れた問合
せは分散実行を利用す る ため、 通常、 よ り 高いパフ ォ ーマ ン ス が確保 さ れま
す。
2 : 自動ス イ ッ チモー ド 。 InfiniDB は問合せを内部で処理 し よ う と し ます。 内部
で処理で き ない場合は、 行単位のモー ド で実行す る よ う に問合せを自動的に切
り 替え ます。
注意 : モー ド 0 お よ び 2 でサポー ト さ れ る 問合せ構文の詳細は、 『MySQL 5.1 SQL
Syntax Guide』 を参照 し て く だ さ い。
動作モー ド 97
98 動作モー ド
第 15 章
10 進法
Calpont InfiniDB には、 10 進法の計算で様々な内部精度を サポー ト す る 機能があ り ま
す。
infinidb_decimal_scale は InfiniDB エ ン ジ ン で内部的に使用 さ れ、 計算 さ れた列
に対す る サブ操作で保持 さ れ る 、 小数点の右側の有効桁数を制御 し ます。 問合せを実
行 し てい る と き に 「aggregate overflow」 と い う メ ッ セージ を受信 し た場合は、
infinidb_decimal_scale を減 ら し て問合せの再実行を試みます。
infinidb_decimal_scale を減 ら す と 、 戻 さ れた計算列の最下位桁の正確度が低 く
な る 場合があ る こ と に注意 し て く だ さ い。
こ の 10 進法は、 イ ン ス タ ン ス に対 し てデフ ォ ル ト と し て設定す る こ と も 、 セ ッ シ ョ
ン レベルで設定す る こ と も で き ます。
セ ッ シ ョ ン レベルでの 10 進法の設定については、 『Calpont InfiniDB SQL 構文ガ イ ド 』
を参照 し て く だ さ い。
10 進法の有効化または無効化
イ ン ス タ ン ス レベルで 10 進法の使用を有効ま たは無効にす る には、 コ マ ン ド ラ イ ン
ま たは my.cnf で infinidb_use_decimal_scale を指定 し ます。 デフ ォ ル ト は 0
(無効) です。
コ マ ン ド ラ イ ン の場合 :
~/mysql/libexec/mysqld --xxxxxx --infinidb_use_decimal_scale=value
my.cnf フ ァ イ ル (/usr/local/Calpont/mysql) の場合 :
[mysqld]
xxxxx
infinidb_use_decimal_scale=value
value は 0 (無効) ま たは 1 (有効) です。
10 進法 99
10 進法のレ ベルの設定
イ ン ス タ ン ス レベルで 10 進法を設定す る には、 コ マ ン ド ラ イ ン ま たは my.cnf で
infinidb_decimal_scale を指定 し ます。 指定 し ない場合は、 デフ ォ ル ト で 8 が設定 さ
れます。
コ マ ン ド ラ イ ン の場合 :
~/mysql/libexec/mysqld --xxxxxx --infinidb_decimal_scale=value
my.cnf フ ァ イ ル (/usr/local/Calpont/mysql) の場合 :
[mysqld]
xxxxx
infinidb_decimal_scale=value
value は、 計算で必要 と さ れ る 精度です。
100 10 進法
第 16 章
圧縮モー ド
Calpont InfiniDB には、 圧縮モー ド を介 し て圧縮で き る 機能があ り ます。 こ の圧縮モー
ド は、 イ ン ス タ ン ス に対 し てデフ ォ ル ト と し て設定す る こ と も 、 セ ッ シ ョ ン レベルで
設定す る こ と も で き ます。
セ ッ シ ョ ン レベルでの圧縮モー ド の設定については、 『Calpont InfiniDB SQL 構文ガ イ
ド 』 を参照 し て く だ さ い。
注意 : こ の機能は、 Calpont InfiniDB Enterprise でのみ使用可能です。
イ ン ス タ ン ス レベルで圧縮モー ド を設定す る には、 コ マ ン ド ラ イ ン ま たは my.cnf で
infinidb_compression_type を指定 し ます。 イ ン ス タ ン ス レベルの圧縮をデフ ォ
ル ト 設定す る には、 各 UM の my.cnf フ ァ イ ルに こ の変数が存在 し てい る 必要があ り
ます。
コ マ ン ド ラ イ ン の場合 :
~/mysql/libexec/mysqld --xxxxxx --infinidb_compression_type=value
my.cnf フ ァ イ ル (/usr/local/Calpont/mysql) の場合 :
[mysqld]
xxxxx
infinidb_compression_type=value
value は次の と お り です。
0 : 圧縮は無効です。 後続の表作成の文の実行では、 文の上書 き が実行 さ れて
いないかぎ り 、 その表に対 し て圧縮は無効にな り ます。 列を追加す る ために
ALTER 文を実行す る と 、 文の上書 き が実行 さ れていないかぎ り 、 その列に対
し て圧縮は無効にな り ます。
1 : 圧縮は有効です。 後続の表作成の文の実行では、 文の上書 き が実行 さ れて
いないかぎ り 、 その表に対 し て圧縮は有効にな り ます。 列を追加す る ために
ALTER 文を実行す る と 、 文の上書 き が実行 さ れていないかぎ り 、 その列に対
し て圧縮は有効にな り ます。
こ の フ ァ イ ルの変更後に、 その変更を ア ク テ ィ ブにす る には、 InfiniDB シ ス テ ム の再
起動が必要です。
圧縮モー ド 101
102 圧縮モー ド
第 17 章
パーテ ィ シ ョ ン管理
Calpont InfiniDB には、 パーテ ィ シ ョ ンの無効化お よ び削除を管理す る こ と に よ っ て、
よ り 効率的にデー タ 削除を管理す る 機能があ り ます。 InfiniDB のパーテ ィ シ ョ ン の詳
細は、 『Calpont InfiniDB 概要』 の InfiniDB の ス ト レージ概念に関す る 説明お よ び
『Calpont InfiniDB SQL 構文ガ イ ド 』 のパーテ ィ シ ョ ン管理に関す る 説明を参照 し て く
だ さ い。
パーテ ィ シ ョ ン のサ イ ズは、 Calpont.xml の 2 つの設定
(FilesPerColumnPartition お よ び ExtentsPerSegmentFile) に よ っ て定義
さ れ ます。 こ れ ら のデフ ォ ル ト 設定は、 FilesPerColumnPartition=4 お よ び
ExtentsPerSegmentFile=2 です。 こ れは、 4 * 2 * 8M = 64M 行のパーテ ィ シ ョ ンサ
イ ズに一致 し ます。 こ の設定は、 パーテ ィ シ ョ ン を削除ま たは無効にす る と き に一度
に削除で き る 行数を定義す る ため重要です。
行を イ ン ポー ト し た後は、 既存のデー タ ベース で こ れ ら の設定を変更で き ません。 既
存のデー タ ベース が存在す る 場合は、 ア ッ プグ レー ド 処理で こ の設定が残 さ れます。
新 し いデー タ ベース で開始す る 場合は、 行を イ ン ポー ト す る 前に こ れ ら の設定を再確
認す る こ と をお薦め し ます。
パーテ ィ シ ョ ン管理 103
104 パーテ ィ シ ョ ン管理
第 18 章
シ ス テムユーテ ィ リ テ ィ
Calpont InfiniDB の操作で役立つい く つかのシ ス テ ム ユーテ ィ リ テ ィ があ り ます。
configxml.sh
ス ク リ プ ト 「configxml.sh」 は、 Calpont.xml フ ァ イ ルの値の読取 り お よ び設定を行い ま
す。 こ れは、 ア ク テ ィ ブな親 OAM パフ ォ ーマ ン ス モジ ュ ールで実行す る 必要があ り
ます ( こ れを判断す る には、 OAM コ マ ン ド の getsystemstatus を使用 し ます)。
値を読み取 る には
#./configxml.sh getconfig SystemConfig SystemName
Current value of SystemConfig / SystemName is caldb01
値を設定す る には
警告 : InfiniDB のサービ ス技術者か ら 指示がないかぎ り 、 Calpont.xml フ ァ イ
ルを変更 し ないで く だ さ い。 誤っ た設定に よ っ て、 シ ス テ ムが使用で き な く な
る 可能性があ り ます。 ま た、 誤っ た設定を修正す る には、 サービ スへの連絡が
必要 と な り ます。 値の設定は、 シ ス テ ムが停止 し てい る と き に実行す る 必要が
あ り ます。
シ ス テ ム の停止お よ び起動については、 stopSystem コ マ ン ド お よ び
startSystem コ マ ン ド を参照 し て く だ さ い。
# ./configxml.sh setconfig SystemConfig SystemName caldb02
Old value of SystemConfig / SystemName is caldb01
/usr/local/Calpont/etc/Calpont.xml backed up to /usr/local/
Calpont/etc/Calpont.xml.1254929966
Old value of SystemConfig / SystemName is caldb01
SystemConfig / SystemName now set to caldb02
シ ス テムユーテ ィ リ テ ィ 105
colxml
colxml は、デー タ の イ ン ポー ト 前に、デー タ ベース ス キーマの XML ジ ョ ブ フ ァ イ ルを作成 し ます。
各バル ク ロ ー ド の前に新 し いジ ョ ブ フ ァ イ ルを作成す る 必要があ り ます。 colxml の詳細は、 40
ページの 「 イ ン ポー ト 方法」 を参照 し て く だ さ い。
cpimport
cpimport は、 Calpont InfiniDB へのデー タ の イ ン ポー ト に使用 さ れます。 最初に、 colxml を使用
し て新 し い XML ジ ョ ブ フ ァ イ ルを作成す る 必要があ り ます。 cpimport.sh の詳細は、 48 ページ
の 「デー タ の イ ン ポー ト 」 を参照 し て く だ さ い。
viewtablelock
イ ン ポー ト が中断 さ れた り 、 失敗 し た場合、 こ のユーテ ィ リ テ ィ を使用 し て、 イ ン ポー ト に よ っ て
発生 し た現在のア ク テ ィ ブな表 ロ ッ ク を表示で き ます。
cleartablelock
中断ま たは失敗 し た イ ン ポー ト に よ っ て発生 し た ア ク テ ィ ブな表 ロ ッ ク は、 こ のユーテ ィ リ テ ィ を
使用 し て解除で き ます。 形式は、 cleartablelock lockid です。
healthCheck
こ のユーテ ィ リ テ ィ では、 InfininDB シ ス テ ムの状態に関す る 情報が戻 さ れ ます。
rebalanceDB
DBRoot 間のデー タ セグ メ ン ト フ ァ イ ルを再配置す る ためのデー タ の再分散ユーテ ィ リ
テ ィ が追加 さ れ、 デー タ の均一な分散を行 う こ と で、 InfiniDB の最適なパフ ォ ーマ ン ス を
実現で き ます。 セグ メ ン ト フ ァ イ ルを再配置す る 必要があ る 使用事例は様々です。
新 し い DBRoot が追加 さ れた場合
パーテ ィ シ ョ ン の削除ま たはバル ク ロ ー ド モー ド 2 お よ び 3 に よ り 、 デ ィ ス ク 使用
率が均一でない場合
デー タ の再分散ユーテ ィ リ テ ィ に よ っ て、 (PM グループがサポー ト さ れてい る 場合は、 同
じ PM グループ内で) デー タ が可能なかぎ り 均一に分散 さ れ ます。 こ の コ マ ン ド は、 任意
の InfiniDB ノ ー ド か ら 実行で き 、 各シ ス テ ム で実行で き る セ ッ シ ョ ンは一度に 1 つのみで
す。
106 シ ス テムユーテ ィ リ テ ィ
コマン ド
redistributeDB [-h|--help] [ACTION]
ACTION は 「START」、 「STOP」、 「STATUS」、 「CLEAR」 のいずれかで、 デフ ォ
ル ト は 「START」 です。
例
redistributeDB
redistributeDB
redistributeDB
redistributeDB
redistributeDB
redistributeDB
start
START
STOP
STATUS
CLEAR
シ ス テムユーテ ィ リ テ ィ 107
108 シ ス テムユーテ ィ リ テ ィ
第 19 章
UTF-8 キ ャ ラ ク タ セ ッ ト の使用
UTF-8 キ ャ ラ ク タ セ ッ ト
Calpont InfiniDB には、 UTF-8 キ ャ ラ ク タ セ ッ ト をサポー ト す る 機能があ り ます。 こ の
プ ロ フ ァ イ ルは、 イ ン ス タ ン ス に対 し てデフ ォ ル ト と し て設定す る こ と も 、 セ ッ シ ョ
ン レベルで設定す る こ と も で き ます。
セ ッ シ ョ ン レベルでの UTF-8 プ ロ フ ァ イ ルの設定については、 『Calpont InfiniDB SQL
構文ガ イ ド 』 を参照 し て く だ さ い。
イ ン ス タ ン ス レベルで UTF-8 プ ロ フ ァ イ ルを設定す る には、 my.cnf フ ァ イ ルお よ び
Calpont.xml フ ァ イ ルで次を指定 し ます。
my.cnf
MySQL の ロ ケール言語を構成す る には、 my.cnf フ ァ イ ル (/usr/local/
Calpont/mysql) を変更 し ます。
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
default-collation=value
character-set-server=utf8
collation-server=value
init-connect='SET NAMES utf8'
value は、 有効な Unicode キ ャ ラ ク タ セ ッ ト です。 有効な値については、 次の MySQL
リ フ ァ レ ン ス を参照 し て く だ さ い。
http://dev.mysql.com/doc/refman/5.1/en/charset-unicode-sets.html
my.cnf フ ァ イ ルで値が指定 さ れていない場合のデフ ォ ル ト は latin1 です。
UTF-8 キ ャ ラ ク タ セ ッ ト の使用 109
Calpont.xml
Calpont の ロ ケール言語を構成す る には、 Calpont.xml フ ァ イ ル (/usr/local/
Calpont/etc) を変更 し ます。
<SystemConfig>
<SystemLang>value</SystemLang>
value は、 オペレーテ ィ ン グ シ ス テ ム の有効な ロ ケールです (た と えば、 Linux での スペ
イ ン語の UTF-8 ロ ケールは、 es_ES.utf8 です。)
Calpont.xml フ ァ イ ルで値が指定 さ れていない場合のデフ ォ ル ト は C です。
変更を行っ た後、 有効にす る には、 Calpont InfiniDB お よ び InfiniDB MySQL のデーモ ン を
再起動す る 必要があ り ます。
デー タ のイ ンポー ト
cpimport ユーテ ィ リ テ ィ を使用す る 場合は、入力フ ァ イ ルを UTF-8 デー タ に変換す る 必
要があ り ます。 Linux プ ロ グ ラ ム iconv は、 変換ユーテ ィ リ テ ィ の 1 つです。
iconv -f ISO-8859-1 -t UTF-8 < input.txt > output.txt
既知の問題および制限
イ ン ス タ ン ス を UTF-8 プ ロ フ ァ イ ルで設定 し た場合は、表レベルで UTF-8 を宣言す
る 必要があ り ます。 一致 し ないキ ャ ラ ク タ セ ッ ト で表を作成す る と 、 予測で き な
い結果が発生 し ます。
SQL の出力の表示は、UTF-8 キ ャ ラ ク タ セ ッ ト を サポー ト す る ク ラ イ ア ン ト ソ フ ト
ウ ェ ア を使用 し て実行す る 必要があ り ます。
110 UTF-8 キ ャ ラ ク タ セ ッ ト の使用
第 20 章
ト ラ ブルシ ュ ーテ ィ ング
ERROR 1070 (42000) : Too many key parts specified; max 0 parts allowed
こ のエ ラ ーは、 主キー、 一意キーな ど のキーが定義 さ れてい る 場合、 CREATE TABLE
文ま たは ALTER TABLE 文の実行時に表示 さ れ ます。 InfiniDB では MySQL フ ロ ン ト エ
ン ド でのキーの使用は無効にな っ てい る ため、 MySQL に よ っ て こ のエ ラ ーが返 さ れ、
キーを使用で き ない こ と が示 さ れます。
UM の メ モ リ ー超過エ ラ ー / 分散結合のパフ ォ ーマ ン ス
InfiniDB では、 カーデ ィ ナ リ テ ィ が最大であ る 表が動的に判別 さ れ、 分散結合操作で
使用 さ れ ます。 適切な大 き い方の表の使用は、 問合せの動作に大 き く 影響す る こ と が
あ り ます。 ま た、 場合に よ っ ては、 使用可能な リ ソ ース内で問合せを実行で き る か ど
う かについて も 影響 し ます。 適切な大 き い方の表は、 InfiniDB に よ っ て予測 さ れない
場合があ り ます。 こ の場合、 FROM 句内の最初の表を大 き い方の表 と し て使用す る
INFINIDB_ORDERED ヒ ン ト を使用 し ます。 た と えば、 次の問合せでは、 lineitem が大
き い方の表 と し て使用 さ れ ます。
select /*!INFINIDB_ORDERED */ count(*) from lineitem, supplier
where l_suppkey = s_suppkey and l_shipdate <= '1998-12-31' and
s_suppkey <= 10000;
集計デー タ のオーバー フ ローに関する エ ラ ー
問合せの実行で InfiniDB エ ラ ー 「The error was aggregation data overflow」 を受信 し た場
合は、 列の集計時にオーバーフ ロ ーが発生 し てい ます。 infinidb_decimal_scale
の値をデフ ォ ル ト (上書 き さ れていなければ通常は 8) か ら 変更す る と 、 問合せを正
常に実行す る のに役立つ場合があ り ます。 詳細は、 99 ページの 「10 進法」 を参照 し
て く だ さ い。
ト ラ ブルシ ュ ーテ ィ ング 111
循環結合の検出エ ラ ー
問合せの実行で 「Circular join is not supported」 エ ラ ーが返 さ れ InfiniDB 非サポー ト エ ラ ー
を受信 し た場合は、 問合せに ク ロ ス表等価比較が使用 さ れてい る 可能性があ り ます。
InfiniDB はデフ ォ ル ト で こ の文を処理で き ません。 ただ し 、 ク ロ ス表比較の一方に 「+ 0」
を追加す る と 、 こ の比較は結合ではな く ク ロ ス表等価比較であ る こ と が InfiniDB に示 さ
れ、 問合せを処理で き ます。
た と えば、 次の問合せは記述 さ れてい る と お り には実行 さ れ ません。
例:
mysql> select count(*)
-> from customer,
->
supplier,
->
orders,
->
lineitem
-> where c_custkey = o_custkey and
->
l_orderkey = o_orderkey and
->
l_suppkey = s_suppkey and
->
c_nationkey = s_nationkey and
->
o_orderdate >= date '2012-01-01' and
->
o_orderdate < date '2012-01-01' + interval '1' year;
ERROR 138 (HY000): IDB-1003: Circular join is not supported.
+ 0 (次の文では太字で示 さ れてい る ) を c_nationkey = s_nationkey に追加す る
と 、 問合せを実行で き る よ う にな り ます。
mysql> select count(*)
-> from customer,
->
supplier,
->
orders,
->
lineitem
-> where c_custkey = o_custkey and
->
l_orderkey = o_orderkey and
->
l_suppkey = s_suppkey and
->
c_nationkey = s_nationkey + 0 and
->
o_orderdate >= date '2012-01-01' and
->
o_orderdate < date '2012-01-01' + interval '1' year;
+----------+
| count(*) |
+----------+
|
36449 |
+----------+
112 ト ラ ブルシ ュ ーテ ィ ング
同時実行問合せによ る イ ンポー ト 実行速度の低下
イ ン ポー ト と 問合せを同時に実行す る と 、 イ ン ポー ト の速度が低下す る 場合があ り ま
す。 こ れを解決す る ために、 ユーザーは こ れ ら の処理の実行優先順位を変更す る 必要
があ る 場合があ り ます。 詳細は、 『Calpont InfiniDB パフ ォ ーマ ン ス チ ュ ーニ ン グガ イ
ド 』 でデー タ ロ ー ド 速度の処理の優先順位に関す る 説明を参照 し て く だ さ い。
CREATE TABLE 実行直後のデー タ 取得の遅延
複数 PM 環境では、 表の作成で初めてデー タ を選択す る と き に遅延が発生す る 場合が
あ り ます。 次のサーバー設定を PM ご と に変更す る と 、 こ の遅延が改善 さ れ る 場合が
あ り ます。
/proc/sys/vm/dirty_expire_centiseconds (デフ ォ ル ト は 3000) : デー タ が期限切
れ と みな さ れ、 次の機会に書込みが必要 と な る ま でページ キ ャ ッ シ ュ に存在
で き る 期間 (100 分の 1 秒単位)。 こ のデフ ォ ル ト (30 秒) は非常に長い時間
であ る こ と に注意 し て く だ さ い。 こ れは、 通常 Linux では、 他の pdflush メ
ソ ッ ド を ト リ ガーす る のに十分な書込みを行わないかぎ り 、 書 き 込んだ内容
が実際には 30 秒後ま で コ ミ ッ ト さ れない こ と を意味 し ます。
設定を表示す る には
# cat /proc/sys/vm/dirty_expire_centisecs
一時的に設定をデフ ォ ル ト か ら 1 秒に変更す る には
こ の変更は、 サーバーが次に再起動 さ れ る ま で、 ま たは こ の変更を修正す る 後続
の コ マ ン ド が発行 さ れ る ま で有効です。
# echo 100 > /proc/sys/vm/dirty_expire_centisecs
永続的に設定をデフ ォ ル ト か ら 1 秒に変更す る には
こ れはサーバーで実行 さ れてい る 可能性があ る InfiniDB 以外の他の処理に も 影響
す る 場合があ る こ と に注意 し て く だ さ い。 /etc/sysctl.conf フ ァ イ ルで次の
エ ン ト リ の記述 (ま たは既存のエ ン ト リ の変更) を行っ て く だ さ い。
vm.dirty_expire_centisecs=100
ト ラ ブルシ ュ ーテ ィ ング 113
114 ト ラ ブルシ ュ ーテ ィ ング
付録 A
GNU Free Documentation License
GNU Free Documentation License
Version 1.3, 3 November 2008
Copyright © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. <http://
fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license
document, but changing it is not allowed.
0. PREAMBLE
The purpose of this License is to make a manual, textbook, or other functional and
useful document "free" in the sense of freedom: to assure everyone the effective
freedom to copy and redistribute it, with or without modifying it, either
commercially or noncommercially. Secondarily, this License preserves for the author
and publisher a way to get credit for their work, while not being considered
responsible for modifications made by others.
This License is a kind of "copyleft", which means that derivative works of the
document must themselves be free in the same sense. It complements the GNU
General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software,
because free software needs free documentation: a free program should come with
manuals providing the same freedoms that the software does. But this License is not
limited to software manuals; it can be used for any textual work, regardless of
subject matter or whether it is published as a printed book. We recommend this
License principally for works whose purpose is instruction or reference.
1. APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work, in any medium, that contains a
notice placed by the copyright holder saying it can be distributed under the terms of
this License. Such a notice grants a world-wide, royalty-free license, unlimited in
duration, to use that work under the conditions stated herein. The "Document",
below, refers to any such manual or work. Any member of the public is a licensee,
and is addressed as "you". You accept the license if you copy, modify or distribute the
work in a way requiring permission under copyright law.
GNU Free Documentation License 115
A "Modified Version" of the Document means any work containing the Document or a
portion of it, either copied verbatim, or with modifications and/or translated into
another language.
A "Secondary Section" is a named appendix or a front-matter section of the Document
that deals exclusively with the relationship of the publishers or authors of the Document
to the Document's overall subject (or to related matters) and contains nothing that could
fall directly within that overall subject. (Thus, if the Document is in part a textbook of
mathematics, a Secondary Section may not explain any mathematics.) The relationship
could be a matter of historical connection with the subject or with related matters, or of
legal, commercial, philosophical, ethical or political position regarding them.
The "Invariant Sections" are certain Secondary Sections whose titles are designated, as
being those of Invariant Sections, in the notice that says that the Document is released
under this License. If a section does not fit the above definition of Secondary then it is
not allowed to be designated as Invariant. The Document may contain zero Invariant
Sections. If the Document does not identify any Invariant Sections then there are none.
The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts
or Back-Cover Texts, in the notice that says that the Document is released under this
License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at
most 25 words.
A "Transparent" copy of the Document means a machine-readable copy, represented in a
format whose specification is available to the general public, that is suitable for revising
the document straightforwardly with generic text editors or (for images composed of
pixels) generic paint programs or (for drawings) some widely available drawing editor,
and that is suitable for input to text formatters or for automatic translation to a variety
of formats suitable for input to text formatters. A copy made in an otherwise Transparent
file format whose markup, or absence of markup, has been arranged to thwart or
discourage subsequent modification by readers is not Transparent. An image format is not
Transparent if used for any substantial amount of text. A copy that is not "Transparent" is
called "Opaque".
Examples of suitable formats for Transparent copies include plain ASCII without markup,
Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD,
and standard-conforming simple HTML, PostScript or PDF designed for human
modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque
formats include proprietary formats that can be read and edited only by proprietary word
processors, SGML or XML for which the DTD and/or processing tools are not generally
available, and the machine-generated HTML, PostScript or PDF produced by some word
processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself, plus such following pages
as are needed to hold, legibly, the material this License requires to appear in the title
page. For works in formats which do not have any title page as such, "Title Page" means
the text near the most prominent appearance of the work's title, preceding the beginning
of the body of the text.
116 GNU Free Documentation License
The "publisher" means any person or entity that distributes copies of the Document to
the public.
A section "Entitled XYZ" means a named subunit of the Document whose title either is
precisely XYZ or contains XYZ in parentheses following text that translates XYZ in
another language. (Here XYZ stands for a specific section name mentioned below,
such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To
"Preserve the Title" of such a section when you modify the Document means that it
remains a section "Entitled XYZ" according to this definition.
The Document may include Warranty Disclaimers next to the notice which states that
this License applies to the Document. These Warranty Disclaimers are considered to
be included by reference in this License, but only as regards disclaiming warranties:
any other implication that these Warranty Disclaimers may have is void and has no
effect on the meaning of this License.
2. VERBATIM COPYING
You may copy and distribute the Document in any medium, either commercially or
noncommercially, provided that this License, the copyright notices, and the license
notice saying this License applies to the Document are reproduced in all copies, and
that you add no other conditions whatsoever to those of this License. You may not
use technical measures to obstruct or control the reading or further copying of the
copies you make or distribute. However, you may accept compensation in exchange
for copies. If you distribute a large enough number of copies you must also follow the
conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may
publicly display copies.
3. COPYING IN QUANTITY
If you publish printed copies (or copies in media that commonly have printed covers)
of the Document, numbering more than 100, and the Document's license notice
requires Cover Texts, you must enclose the copies in covers that carry, clearly and
legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover
Texts on the back cover. Both covers must also clearly and legibly identify you as the
publisher of these copies. The front cover must present the full title with all words of
the title equally prominent and visible. You may add other material on the covers in
addition. Copying with changes limited to the covers, as long as they preserve the
title of the Document and satisfy these conditions, can be treated as verbatim
copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put
the first ones listed (as many as fit reasonably) on the actual cover, and continue the
rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100,
you must either include a machine-readable Transparent copy along with each
GNU Free Documentation License 117
Opaque copy, or state in or with each Opaque copy a computer-network location from
which the general network-using public has access to download using public-standard
network protocols a complete Transparent copy of the Document, free of added
material. If you use the latter option, you must take reasonably prudent steps, when you
begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will
remain thus accessible at the stated location until at least one year after the last time
you distribute an Opaque copy (directly or through your agents or retailers) of that
edition to the public.
It is requested, but not required, that you contact the authors of the Document well
before redistributing any large number of copies, to give them a chance to provide you
with an updated version of the Document.
4. MODIFICATIONS
You may copy and distribute a Modified Version of the Document under the conditions of
sections 2 and 3 above, provided that you release the Modified Version under precisely
this License, with the Modified Version filling the role of the Document, thus licensing
distribution and modification of the Modified Version to whoever possesses a copy of it. In
addition, you must do these things in the Modified Version:
A. Use in the Title Page (and on the covers, if any) a title distinct from that of the
Document, and from those of previous versions (which should, if there were any,
be listed in the History section of the Document). You may use the same title as a
previous version if the original publisher of that version gives permission.
B. List on the Title Page, as authors, one or more persons or entities responsible
for authorship of the modifications in the Modified Version, together with at least
five of the principal authors of the Document (all of its principal authors, if it has
fewer than five), unless they release you from this requirement.
C. State on the Title page the name of the publisher of the Modified Version, as
the publisher.
D. Preserve all the copyright notices of the Document.
E. Add an appropriate copyright notice for your modifications adjacent to the
other copyright notices.
F. Include, immediately after the copyright notices, a license notice giving the
public permission to use the Modified Version under the terms of this License, in
the form shown in the Addendum below.
G. Preserve in that license notice the full lists of Invariant Sections and required
Cover Texts given in the Document's license notice.
H. Include an unaltered copy of this License.
I. Preserve the section Entitled "History", Preserve its Title, and add to it an item
stating at least the title, year, new authors, and publisher of the Modified Version
as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document
118 GNU Free Documentation License
as given on its Title Page, then add an item describing the Modified Version as
stated in the previous sentence.
J. Preserve the network location, if any, given in the Document for public
access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may
be placed in the "History" section. You may omit a network location for a work
that was published at least four years before the Document itself, or if the
original publisher of the version it refers to gives permission.
K. For any section Entitled "Acknowledgements" or "Dedications", Preserve the
Title of the section, and preserve in the section all the substance and tone of
each of the contributor acknowledgements and/or dedications given therein.
L. Preserve all the Invariant Sections of the Document, unaltered in their text
and in their titles. Section numbers or the equivalent are not considered part
of the section titles.
M. Delete any section Entitled "Endorsements". Such a section may not be
included in the Modified Version.
N. Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section.
O. Preserve any Warranty Disclaimers.
If the Modified Version includes new front-matter sections or appendices that qualify
as Secondary Sections and contain no material copied from the Document, you may at
your option designate some or all of these sections as invariant. To do this, add their
titles to the list of Invariant Sections in the Modified Version's license notice. These
titles must be distinct from any other section titles.
You may add a section Entitled "Endorsements", provided it contains nothing but
endorsements of your Modified Version by various parties—for example, statements
of peer review or that the text has been approved by an organization as the
authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up
to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified
Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be
added by (or through arrangements made by) any one entity. If the Document already
includes a cover text for the same cover, previously added by you or by arrangement
made by the same entity you are acting on behalf of, you may not add another; but
you may replace the old one, on explicit permission from the previous publisher that
added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission
to use their names for publicity for or to assert or imply endorsement of any Modified
Version.
5. COMBINING DOCUMENTS
GNU Free Documentation License 119
You may combine the Document with other documents released under this License, under
the terms defined in section 4 above for modified versions, provided that you include in
the combination all of the Invariant Sections of all of the original documents, unmodified,
and list them all as Invariant Sections of your combined work in its license notice, and
that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical
Invariant Sections may be replaced with a single copy. If there are multiple Invariant
Sections with the same name but different contents, make the title of each such section
unique by adding at the end of it, in parentheses, the name of the original author or
publisher of that section if known, or else a unique number. Make the same adjustment
to the section titles in the list of Invariant Sections in the license notice of the combined
work.
In the combination, you must combine any sections Entitled "History" in the various
original documents, forming one section Entitled "History"; likewise combine any sections
Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete
all sections Entitled "Endorsements".
6. COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents released
under this License, and replace the individual copies of this License in the various
documents with a single copy that is included in the collection, provided that you follow
the rules of this License for verbatim copying of each of the documents in all other
respects.
You may extract a single document from such a collection, and distribute it individually
under this License, provided you insert a copy of this License into the extracted
document, and follow this License in all other respects regarding verbatim copying of
that document.
7. AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate and independent
documents or works, in or on a volume of a storage or distribution medium, is called an
"aggregate" if the copyright resulting from the compilation is not used to limit the legal
rights of the compilation's users beyond what the individual works permit. When the
Document is included in an aggregate, this License does not apply to the other works in
the aggregate which are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document,
then if the Document is less than one half of the entire aggregate, the Document's Cover
Texts may be placed on covers that bracket the Document within the aggregate, or the
electronic equivalent of covers if the Document is in electronic form. Otherwise they
must appear on printed covers that bracket the whole aggregate.
8. TRANSLATION
Translation is considered a kind of modification, so you may distribute translations of the
Document under the terms of section 4. Replacing Invariant Sections with translations
120 GNU Free Documentation License
requires special permission from their copyright holders, but you may include
translations of some or all Invariant Sections in addition to the original versions of
these Invariant Sections. You may include a translation of this License, and all the
license notices in the Document, and any Warranty Disclaimers, provided that you
also include the original English version of this License and the original versions of
those notices and disclaimers. In case of a disagreement between the translation and
the original version of this License or a notice or disclaimer, the original version will
prevail.
If a section in the Document is Entitled "Acknowledgements", "Dedications", or
"History", the requirement (section 4) to Preserve its Title (section 1) will typically
require changing the actual title.
9. TERMINATION
You may not copy, modify, sublicense, or distribute the Document except as
expressly provided under this License. Any attempt otherwise to copy, modify,
sublicense, or distribute it is void, and will automatically terminate your rights under
this License.
However, if you cease all violation of this License, then your license from a particular
copyright holder is reinstated (a) provisionally, unless and until the copyright holder
explicitly and finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means prior to 60 days
after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if
the copyright holder notifies you of the violation by some reasonable means, this is
the first time you have received notice of violation of this License (for any work) from
that copyright holder, and you cure the violation prior to 30 days after your receipt of
the notice.
Termination of your rights under this section does not terminate the licenses of
parties who have received copies or rights from you under this License. If your rights
have been terminated and not permanently reinstated, receipt of a copy of some or
all of the same material does not give you any rights to use it.
10. FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions of the GNU Free
Documentation License from time to time. Such new versions will be similar in spirit
to the present version, but may differ in detail to address new problems or concerns.
See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document
specifies that a particular numbered version of this License "or any later version"
applies to it, you have the option of following the terms and conditions either of that
specified version or of any later version that has been published (not as a draft) by
the Free Software Foundation. If the Document does not specify a version number of
this License, you may choose any version ever published (not as a draft) by the Free
GNU Free Documentation License 121
Software Foundation. If the Document specifies that a proxy can decide which future
versions of this License can be used, that proxy's public statement of acceptance of a
version permanently authorizes you to choose that version for the Document.
11. RELICENSING
"Massive Multiauthor Collaboration Site" (or "MMC Site") means any World Wide Web
server that publishes copyrightable works and also provides prominent facilities for
anybody to edit those works. A public wiki that anybody can edit is an example of such a
server. A "Massive Multiauthor Collaboration" (or "MMC") contained in the site means any
set of copyrightable works thus published on the MMC site.
"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 license published by
Creative Commons Corporation, a not-for-profit corporation with a principal place of
business in San Francisco, California, as well as future copyleft versions of that license
published by that same organization.
"Incorporate" means to publish or republish a Document, in whole or in part, as part of
another Document.
An MMC is "eligible for relicensing" if it is licensed under this License, and if all works that
were first published under this License somewhere other than this MMC, and subsequently
incorporated in whole or in part into the MMC, (1) had no cover texts or invariant
sections, and (2) were thus incorporated prior to November 1, 2008.
The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA
on the same site at any time before August 1, 2009, provided the MMC is eligible for
relicensing.
122 GNU Free Documentation License
付録 B
サー ド パーテ ィ ラ イ セ ン ス
Calpont Corporation の独自の製品であ る InfiniDB コ ミ ュ ニテ ィ 版のすべての コ ー ド は、
Calpont Corporation が著作権を所有 し てお り 、 「GNU 一般公衆利用許諾契約書」 の第 2
版に よ っ て保護 さ れてい ます。 こ のカ テ ゴ リ 内のすべての ソ ース フ ァ イ ルには、 かか
る 対象であ る こ と を特定す る テ キ ス ト が含ま れ ます。 InfiniDB の コ ミ ュ ニテ ィ 版お よ
びエ ン タ ープ ラ イ ズ版の他の部分は、 様々な条項に基づいて ラ イ セ ン ス さ れ、 様々な
個人が著作権を所有 し てい ます。 著作権はそれぞれの所有者に帰属 し ます。
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies of
this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your freedom to share and
change it. By contrast, the GNU General Public License is intended to guarantee your
freedom to share and change free software--to make sure the software is free for all
its users. This General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to using it.
(Some other Free Software Foundation software is covered by the GNU Lesser
General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General
Public Licenses are designed to make sure that you have the freedom to distribute
copies of free software (and charge for this service if you wish), that you receive
source code or can get it if you want it, that you can change the software or use
pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you
these rights or to ask you to surrender the rights. These restrictions translate to
certain responsibilities for you if you distribute copies of the software, or if you
modify it.
サー ド パーテ ィ ラ イ セ ン ス 123
For example, if you distribute copies of such a program, whether gratis or for a fee, you
must give the recipients all the rights that you have. You must make sure that they, too,
receive or can get the source code. And you must show them these terms so they know
their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this
license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone
understands that there is no warranty for this free software. If the software is modified
by someone else and passed on, we want its recipients to know that what they have is not
the original, so that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid
the danger that redistributors of a free program will individually obtain patent licenses,
in effect making the program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains a notice placed by
the copyright holder saying it may be distributed under the terms of this General Public
License. The "Program", below, refers to any such program or work, and a "work based on
the Program" means either the Program or any derivative work under copyright law: that
is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included
without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this
License; they are outside its scope. The act of running the Program is not restricted, and
the output from the Program is covered only if its contents constitute a work based on
the Program (independent of having been made by running the Program). Whether that is
true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and appropriately publish on
each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty; and give any other
recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your
option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion of it, thus forming a
work based on the Program, and copy and distribute such modifications or work under the
terms of Section 1 above, provided that you also meet all of these conditions:
124 サー ド パーテ ィ ラ イ セ ン ス
a) You must cause the modified files to carry prominent notices stating that
you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in
part contains or is derived from the Program or any part thereof, to be
licensed as a whole at no charge to all third parties under the terms of this
License.
c) If the modified program normally reads commands interactively when run,
you must cause it, when started running for such interactive use in the most
ordinary way, to print or display an announcement including an appropriate
copyright notice and a notice that there is no warranty (or else, saying that
you provide a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this License.
(Exception: if the Program itself is interactive but does not normally print
such an announcement, your work based on the Program is not required to
print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of
that work are not derived from the Program, and can be reasonably considered
independent and separate works in themselves, then this License, and its terms, do
not apply to those sections when you distribute them as separate works. But when
you distribute the same sections as part of a whole which is a work based on the
Program, the distribution of the whole must be on the terms of this License, whose
permissions for other licensees extend to the entire whole, and thus to each and
every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work
written entirely by you; rather, the intent is to exercise the right to control the
distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with the
Program (or with a work based on the Program) on a volume of a storage or
distribution medium does not bring the other work under the scope of this License.
3. You may copy and distribute the Program (or a work based on it, under Section 2)
in object code or executable form under the terms of Sections 1 and 2 above
provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source
code, which must be distributed under the terms of Sections 1 and 2 above on
a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any
third party, for a charge no more than your cost of physically performing
source distribution, a complete machine-readable copy of the corresponding
source code, to be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange; or,
サー ド パーテ ィ ラ イ セ ン ス 125
c) Accompany it with the information you received as to the offer to distribute
corresponding source code. (This alternative is allowed only for noncommercial
distribution and only if you received the program in object code or executable
form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making
modifications to it. For an executable work, complete source code means all the source
code for all modules it contains, plus any associated interface definition files, plus the
scripts used to control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include anything that is normally
distributed (in either source or binary form) with the major components (compiler,
kernel, and so on) of the operating system on which the executable runs, unless that
component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from a
designated place, then offering equivalent access to copy the source code from the same
place counts as distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program except as expressly
provided under this License. Any attempt otherwise to copy, modify, sublicense or
distribute the Program is void, and will automatically terminate your rights under this
License. However, parties who have received copies, or rights, from you under this
License will not have their licenses terminated so long as such parties remain in full
compliance.
5. You are not required to accept this License, since you have not signed it. However,
nothing else grants you permission to modify or distribute the Program or its derivative
works. These actions are prohibited by law if you do not accept this License. Therefore,
by modifying or distributing the Program (or any work based on the Program), you
indicate your acceptance of this License to do so, and all its terms and conditions for
copying, distributing or modifying the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the Program), the
recipient automatically receives a license from the original licensor to copy, distribute or
modify the Program subject to these terms and conditions. You may not impose any
further restrictions on the recipients' exercise of the rights granted herein. You are not
responsible for enforcing compliance by third parties to this License.
7. If, as a consequence of a court judgment or allegation of patent infringement or for
any other reason (not limited to patent issues), conditions are imposed on you (whether
by court order, agreement or otherwise) that contradict the conditions of this License,
they do not excuse you from the conditions of this License. If you cannot distribute so as
to satisfy simultaneously your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the Program at all. For
example, if a patent license would not permit royalty-free redistribution of the Program
by all those who receive copies directly or indirectly through you, then the only way you
126 サー ド パーテ ィ ラ イ セ ン ス
could satisfy both it and this License would be to refrain entirely from distribution of
the Program.
If any portion of this section is held invalid or unenforceable under any particular
circumstance, the balance of the section is intended to apply and the section as a
whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other
property right claims or to contest validity of any such claims; this section has the
sole purpose of protecting the integrity of the free software distribution system,
which is implemented by public license practices. Many people have made generous
contributions to the wide range of software distributed through that system in
reliance on consistent application of that system; it is up to the author/donor to
decide if he or she is willing to distribute software through any other system and a
licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a
consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in certain countries
either by patents or by copyrighted interfaces, the original copyright holder who
places the Program under this License may add an explicit geographical distribution
limitation excluding those countries, so that distribution is permitted only in or
among countries not thus excluded. In such case, this License incorporates the
limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions of the
General Public License from time to time. Such new versions will be similar in spirit
to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a
version number of this License which applies to it and "any later version", you have
the option of following the terms and conditions either of that version or of any later
version published by the Free Software Foundation. If the Program does not specify a
version number of this License, you may choose any version ever published by the
Free Software Foundation.
10. If you wish to incorporate parts of the Program into other free programs whose
distribution conditions are different, write to the author to ask for permission. For
software which is copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our decision will be
guided by the two goals of preserving the free status of all derivatives of our free
software and of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
サー ド パーテ ィ ラ イ セ ン ス 127
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE
QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM
PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE
OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR
DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH
HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest possible use to the
public, the best way to achieve this is to make it free software which everyone can
redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the
start of each source file to most effectively convey the exclusion of warranty; and each
file should have at least the "copyright" line and a pointer to where the full notice is
found.
one line to give the program's name and an idea of what it does.
Copyright (C) yyyy name of author
This program is
modify it under
as published by
of the License,
free software; you can redistribute it and/or
the terms of the GNU General Public License
the Free Software Foundation; either version 2
or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
Also add information on how to contact you by electronic and paper mail.
128 サー ド パーテ ィ ラ イ セ ン ス
If the program is interactive, make it output a short notice like this when it starts in
an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may be called
something other than `show w' and`show c'; they could even be mouse-clicks or
menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if
any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample;
alter the names:
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may consider it
more useful to permit linking proprietary applications with the library. If this is what
you want to do, use the GNU Lesser General Public License instead of this
License.
RSA Data Security
Portions of the code are derived from copyrighted work by RSA Data Security, Inc and
bear the following copyright notice:
//
//
//
//
//
//
//
//
//
//
Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
rights reserved.
License to copy and use this software is granted provided that it
is identified as the "RSA Data Security, Inc. MD5 Message-Digest
Algorithm" in all material mentioning or referencing this software
or this function.
License is also granted to make and use derivative works provided
that such works are identified as "derived from the RSA Data
Security, Inc. MD5 Message-Digest Algorithm" in all material
サー ド パーテ ィ ラ イ セ ン ス 129
//
//
//
//
//
//
//
mentioning or referencing the derived work.
RSA Data Security, Inc. makes no representations concerning either
the merchantability of this software or the suitability of this
software for any particular purpose. It is provided "as is"
without express or implied warranty of any kind.
These notices must be retained in any copies of any part of this
documentation and/or software.
Paul E. Jones
Portions of the code are derived from copyrighted work by Paul E. Jones (http://
www.packetizer.com/security/sha1/). They are in the public domain but retain this
copyright:
* Copyright (C) 1998, 2009
* Paul E. Jones <[email protected]>
* All Rights Reserved.
Apache
Portions of the code are derived from work copyrighted by Apache Hadoop and are covered by
the Apache License V2.0:
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction, and distribution as
defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by the copyright owner
that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all other entities that control,
130 サー ド パーテ ィ ラ イ セ ン ス
are controlled by, or are under common control with that entity. For the purposes of
this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial
ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity exercising permissions
granted by this License.
"Source" form shall mean the preferred form for making modifications, including
but not limited to software source code, documentation source, and configuration
files.
"Object" form shall mean any form resulting from mechanical transformation or
translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or Object form, made
available under the License, as indicated by a copyright notice that is included in or
attached to the work (an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object form, that is
based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of
authorship. For the purposes of this License, Derivative Works shall not include
works that remain separable from, or merely link (or bind by name) to the interfaces
of, the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including the original version of
the Work and any modifications or additions to that Work or Derivative Works
thereof, that is intentionally submitted to Licensor for inclusion in the Work by the
copyright owner or by an individual or Legal Entity authorized to submit on behalf
of the copyright owner. For the purposes of this definition, "submitted" means any
form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists,
source code control systems, and issue tracking systems that are managed by, or on
behalf of, the Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise designated in
writing by the copyright owner as "Not a Contribution."
サー ド パーテ ィ ラ イ セ ン ス 131
"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of
whom a Contribution has been received by Licensor and subsequently incorporated
within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of this License,
each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, nocharge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative
Works of, publicly display, publicly perform, sublicense, and distribute the Work and
such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of this License, each
Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have
made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license
applies only to those patent claims licensable by such Contributor that are necessarily
infringed by their Contribution(s) alone or by combination of their Contribution(s) with
the Work to which such Contribution(s) was submitted. If You institute patent litigation
against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the
Work or a Contribution incorporated within the Work constitutes direct or contributory
patent infringement, then any patent licenses granted to You under this License for that
Work shall terminate as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the Work or Derivative
Works thereof in any medium, with or without modifications, and in Source or Object
form, provided that You meet the following conditions:
1.
2.
3.
4.
You must give any other recipients of the Work or Derivative Works a
copy of this License; and
You must cause any modified files to carry prominent notices stating that
You changed the files; and
You must retain, in the Source form of any Derivative Works that You
distribute, all copyright, patent, trademark, and attribution notices from the
Source form of the Work, excluding those notices that do not pertain to any part
of the Derivative Works; and
If the Work includes a "NOTICE" text file as part of its distribution, then
any Derivative Works that You distribute must include a readable copy of the
attribution notices contained within such NOTICE file, excluding those notices
that do not pertain to any part of the Derivative Works, in at least one of the fol-
132 サー ド パーテ ィ ラ イ セ ン ス
lowing places: within a NOTICE text file distributed as part of the Derivative
Works; within the Source form or documentation, if provided along with the
Derivative Works; or, within a display generated by the Derivative Works, if
and wherever such third-party notices normally appear. The contents of the
NOTICE file are for informational purposes only and do not modify the
License. You may add Your own attribution notices within Derivative Works
that You distribute, alongside or as an addendum to the NOTICE text from
the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement
to Your modifications and may provide additional or different license terms
and conditions for use, reproduction, or distribution of Your modifications,
or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions
stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall
be under the terms and conditions of this License, without any additional terms or
conditions. Notwithstanding the above, nothing herein shall supersede or modify the
terms of any separate license agreement you may have executed with Licensor
regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade names,
trademarks, service marks, or product names of the Licensor, except as required for
reasonable and customary use in describing the origin of the Work and reproducing
the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions)
on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied, including, without limitation, any warranties or
conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks
associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory, whether in tort
(including negligence), contract, or otherwise, unless required by applicable law
サー ド パーテ ィ ラ イ セ ン ス 133
(such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or
consequential damages of any character arising as a result of this License or out of the
use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial
damages or losses), even if such Contributor has been advised of the possibility of such
damages.
9. Accepting Warranty or Additional Liability. While redistributing the Work or
Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of
support, warranty, indemnity, or other liability obligations and/or rights consistent with
this License. However, in accepting such obligations, You may act only on Your own
behalf and on Your sole responsibility, not on behalf of any other Contributor, and only
if You agree to indemnify, defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason of your accepting any
such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work
To apply the Apache License to your work, attach the following boilerplate notice, with
the fields enclosed by brackets "[]" replaced with your own identifying information.
(Don't include the brackets!) The text should be enclosed in the appropriate comment
syntax for the file format. We also recommend that a file or class name and description
of purpose be included on the same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
134 サー ド パーテ ィ ラ イ セ ン ス
See the License for the specific language governing permissions
and
limitations under the License.
Gary S. Brown
Portions of the code are derived from work copyrighted by Gary S. Brown and bear the following copyright notice:
* Copyright (C) 1986 Gary S. Brown. You may use this program, or
* code or tables extracted from it, as desired without restriction.
Brian M. Clapper
Portions of the code are derived from copyrighted work by Brian M. Clapper and are
covered under the following license:
This software is released under the following license:
Copyright (c) 1995-2002 Brian M. Clapper
All rights reserved.
Redistribution and use in source and binary forms are
permitted provided that: (1) source distributions retain
this entire copyright notice and comment; (2) modifications
made to the software are prominently mentioned, and a copy
of the original software (or a pointer to its location) are
included; and (3) distributions including binaries display
the following acknowledgement: "This product includes
software developed by Brian M. Clapper <[email protected]>"
in the documentation or other materials provided with the
distribution. The name of the author may not be used to
endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIM-
サー ド パーテ ィ ラ イ セ ン ス 135
ITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE.
Effectively, this means you can do what you want with the software
except remove this notice or take advantage of the author's name.
If you modify the software and redistribute your modified version,
you must indicate that your version is a modification of the
original, and you must provide either a pointer to or a copy of the
original.
Net-SNMP
Portions of the code are derived from copyrighted work by Net-SNMP and are licensed
under the following terms:
Various copyrights apply to this package, listed in various separate
parts below. Please make sure that you read all the parts.
---- Part 1: CMU/UCD copyright notice: (BSD like) ----Copyright 1989, 1991, 1992 by Carnegie Mellon University
Derivative Work - 1996, 1998-2000
Copyright 1996, 1998-2000 The Regents of the University of California
All Rights Reserved
Permission to use, copy, modify and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appears in all copies and
that both that copyright notice and this permission notice appear in
supporting documentation, and that the name of CMU and The Regents of
the University of California not be used in advertising or publicity
pertaining to distribution of the software without specific written
permission.
CMU AND THE REGENTS OF THE UNIVERSITY OF CALIFORNIA DISCLAIM ALL
WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL CMU OR
THE REGENTS OF THE UNIVERSITY OF CALIFORNIA BE LIABLE FOR ANY SPECIAL,
INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
FROM THE LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
136 サー ド パーテ ィ ラ イ セ ン ス
---- Part 2: Networks Associates Technology, Inc copyright notice (BSD) ----Copyright (c) 2001-2003, Networks Associates Technology, Inc
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the Networks Associates Technology, Inc nor the
names of its contributors may be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---- Part 3: Cambridge Broadband Ltd. copyright notice (BSD) ----Portions of this code are copyright (c) 2001-2003, Cambridge Broadband Ltd.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
サー ド パーテ ィ ラ イ セ ン ス 137
* The name of Cambridge Broadband Ltd. may not be used to endorse or
promote products derived from this software without specific prior
written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER ``AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---- Part 4: Sun Microsystems, Inc. copyright notice (BSD) ----Copyright © 2003 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
California 95054, U.S.A. All rights reserved.
Use is subject to license terms below.
This distribution may include materials developed by third parties.
Sun, Sun Microsystems, the Sun logo and Solaris are trademarks or registered
trademarks of Sun Microsystems, Inc. in the U.S. and other countries.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the Sun Microsystems, Inc. nor the
names of its contributors may be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
138 サー ド パーテ ィ ラ イ セ ン ス
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---- Part 5: Sparta, Inc copyright notice (BSD) ----Copyright (c) 2003-2011, Sparta, Inc
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of Sparta, Inc nor the names of its contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---- Part 6: Cisco/BUPTNIC copyright notice (BSD) ----Copyright (c) 2004, Cisco, Inc and Information Network
Center of Beijing University of Posts and Telecommunications.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
サー ド パーテ ィ ラ イ セ ン ス 139
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of Cisco, Inc, Beijing University of Posts and
Telecommunications, nor the names of their contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---- Part 7: Fabasoft R&D Software GmbH & Co KG copyright notice (BSD) ----Copyright (c) Fabasoft R&D Software GmbH & Co KG, 2003
[email protected]
Author: Bernhard Penz <[email protected]>
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* The name of Fabasoft R&D Software GmbH & Co KG or any of its subsidiaries,
brand or product names may not be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER ``AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE
140 サー ド パーテ ィ ラ イ セ ン ス
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---- Part 8: Apple Inc. copyright notice (BSD) ----Copyright (c) 2007 Apple Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
3. Neither the name of Apple Inc. ("Apple") nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
---- Part 9: ScienceLogic, LLC copyright notice (BSD) ----Copyright (c) 2009, ScienceLogic, LLC
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
サー ド パーテ ィ ラ イ セ ン ス 141
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of ScienceLogic, LLC nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
142 サー ド パーテ ィ ラ イ セ ン ス
用語集
非定型の問合せ
発行す る ま で判別で き ないカ ス タ マ イ ズ さ れた問合せ。 通常は SQL 文です。
ビ ジネス イ ン テ リ ジ ェ ン ス (BI)
信頼で き 、 一貫性があ り 、 理解可能で、 操作が簡単で タ イ ム リ ーな、 ビ ジネ スデー タ を
受信す る 処理。 こ のデー タ に よ っ て、 ビ ジネ ス ユーザーは、 ビ ジネ ス の経過、 現状お よ
び将来についての全般的な理解を も た ら す分析を行 う こ と がで き ます。 ビ ジネ ス イ ン テ
リ ジ ェ ン ス は、 2 つの主要な役割を果た し ます。 組織の財政上お よ び運営上の健全性を
監視 し ます (レ ポー ト 、 ア ラ ー ト 、 ア ラ ーム、 分析ツール、 主要なパフ ォ ーマ ン ス イ ン
ジ ケー タ お よ びダ ッ シ ュ ボー ド )。 ま た、 運用シ ス テ ムお よ び情報フ ィ ー ド バ ッ ク 分析
と の双方向の統合を提供す る こ と で、 組織の運営を管理 し ます。
Calpont InfiniDB コ ン ソ ール
キーボー ド か ら テ キ ス ト 行 と し て入力 し た コ マ ン ド に よ っ て Calpont Stack と 通信す る
ためのユーザー イ ン タ フ ェース。
列ベースの リ レーシ ョ ナルデー タ ベース
行ではな く 列で構造化 さ れてい る デー タ ベース。
COTS (商用オ フザシ ェ ルフ コ ンポーネ ン ト )
一般販売が可能で、 簡単に イ ン ス ト ールで き る よ う に設計 さ れてお り 、 他のシ ス テ ム コ
ン ポーネ ン ト と 互換性があ る コ ン ピ ュ ー タ 製品。
cron (Command Run ON)
ス ケ ジ ュ ー リ ン グ さ れた タ ス ク の実行に使用 さ れ る デーモ ン。 cron を使用す る と 、 定
期的なバ ッ ク ア ッ プ ま たはデー タ ロ ー ド を実行す る タ ス ク を自動化で き ます。
デー タ 定義言語 (DDL)
デー タ ベース管理シ ス テ ム で使用 さ れ る 言語。 ユーザーは、 こ れを使用 し て、 デー タ
ベース の定義、 デー タ に対す る デー タ 型、 構造お よ び制約の指定を行 う こ と がで き ま
す。 例 と し ては、 CREATE TABLE 文、 CREATE INDEX 文、 ALTER 文お よ び DROP 文な
ど があ り ます。
用語集 143
デー タ 操作言語 (DML)
既存のデー タ ベース オブジ ェ ク ト 内のデー タ を操作す る 言語。 例 と し ては、 SELECT 文、
UPDATE 文、 INSERT 文、 DELETE 文な ど があ り ます。
デー タ ウ ェ アハウス
デー タ ウ ェ アハ ウ ス は、 ビ ジネ ス イ ン テ リ ジ ェ ン ス要件を対象 と し たデー タ ベース です。
デー タ ウ ェ アハ ウ ス は、 定期的に更新 さ れ、 長期間にわた っ て ビ ジネ ス パフ ォーマ ン ス の
分析を可能にす る 履歴情報を含んでい ます。
DDL (「デー タ 定義言語」 を参照)
DML (「デー タ 操作言語」 を参照)
DNS (「 ド メ イ ン ネームサーバー」 を参照)
ド メ イン
ルー タ ーを使用せずに同 じ ネ ッ ト ワ ー ク 上で相互に直接送信可能な一連のネ ッ ト ワ ー ク ア
ド レ ス。
ド メ イ ン名
ユーザーが簡単に認識お よ び記憶で き る よ う に特定の IP ア ド レ ス に付け ら れた名前。
ド メ イ ン ネームサーバー (DNS)
サーバーで実行 さ れてい る 、 ド メ イ ン名を正 し い TCP/IP ア ド レ ス に自動的に変換す る プ ロ
グ ラ ム。
ゲー ト ウ ェ イ
別のネ ッ ト ワ ー ク への入 り 口 と し て機能す る ネ ッ ト ワー ク ポ イ ン ト 。 企業のネ ッ ト ワー ク
内ま たは イ ン タ ーネ ッ ト サービ ス プ ロ バ イ ダ (ISP) で ト ラ フ ィ ッ ク を制御す る コ ン ピ ュ ー
タ を ゲー ト ウ ェ イ ノ ー ド と いい ます。
ホス ト 名
イ ン タ ーネ ッ ト 上の他の コ ン ピ ュ ー タ と の間で双方向でア ク セ ス で き る コ ン ピ ュ ー タ の名
前。
144 用語集
IP ア ド レ ス
ネ ッ ト ワ ー ク 上のすべての コ ン ピ ュ ー タ には、 ピ リ オ ド で 4 つの数字セ ッ ト に分け ら
れ、 各セ ッ ト に最大 3 桁の数字が含ま れてい る 一意の IP 番号があ り ます。 (例 :
10.0.0.127) 多 く の コ ン ピ ュ ー タ には、 記憶が簡単な ド メ イ ン名 も あ り ます。
NIC (ネ ッ ト ワー ク イ ン タ フ ェ ース カ ー ド )
ネ ッ ト ワ ー ク への物理的な ア ク セ ス を提供す る コ ン ピ ュ ー タ のハー ド ウ ェ ア。 多 く の
サーバーでは、 ネ ッ ト ワー ク にア ク セ スす る ポー ト が複数含まれ る よ う に、 複数の
NIC をサポー ト し てい ます。
NMS (ネ ッ ト ワー ク 監視シ ス テム)
ネ ッ ト ワ ー ク 内の コ ン ポーネ ン ト を監視す る ソ フ ト ウ ェ ア。
Redundant Array of Independent Disks (RAID)
オペレーテ ィ ン グ シ ス テ ムには 1 つの論理ハー ド デ ィ ス ク と し て認識 さ れ る 複数のハー
ド デ ィ ス ク にデー タ を格納す る 方法。 複数のデ ィ ス ク にデー タ が配置 さ れ る ため、 デー
タ へのア ク セ ス操作が分散 さ れパフ ォーマ ン ス が向上 し ます。
SSH (セキ ュ ア シ ェ ル)
認証方式を使用 し て ロ ーカル コ ン ピ ュ ー タ と リ モー ト コ ン ピ ュ ー タ 間のセ キ ュ ア なチ ャ
ネルを可能にす る 一連の規格。
ト ー ク ン化
入力 し た文字か ら 短い文字列を作成 し 、 それで長い文字列を表現す る 方法。 短い文字列
ま たは ト ー ク ン では、 少ない メ モ リ ーお よ び領域が使用 さ れ ます。
用語集 145
146 用語集
索引
A
Active 13, 14
AlarmConfig.xml 27
Auto Offline 13, 14
C
Calpont.xml 27, 28
Calpont コ ン ソ ール 13
Calpont プ ラ ッ ト フ ォーム ソ フ ト ウ ェ ア 9
ConsoleCmds.xml 27
CPU の し き い値 21, 32
F
Failed 14, 15
G
getLogConfig 34
M
Man Offline 14, 15
N
NMS 13, 77
P
ProcessConfig.xml 14, 27
S
setAlarmConfig 34
お
大文字 と 小文字の区別 3
索引 147
こ
コ マ ン ド の繰返 し オプシ ョ ン 3
し
シ ス テ ムの起動 11
シ ス テ ムの再起動 11
シ ス テ ムのシ ャ ッ ト ダ ウ ン 11
シ ス テ ムの停止 10
は
ハー ト ビー ト の監視 29
め
メ モ リ ー使用率 19
148 索引