PSQL v12 新機能のご紹介 ~ Defragmenter で運用中

PSQL v12 新機能のご紹介
~ Defragmenter で運用中に DB メンテナンス~
株式会社エージーテック
2014 年 12 月 10 日
免責事項
株式会社エージーテックは本書の使用を、利用者またはその会社に対して「現状のまま」
でのみ許諾するものです。株式会社エージーテックは、いかなる場合にも本書に記載され
た内容に関するその他の一切の保証を、明示的にも黙示的にも行いません。本書の内容は
予告なく変更される場合があります。
商標
© Copyright 2014 AG-TECH Corp. All rights reserved. 本書の全文、一部に関わりなく複
製、複写、配布をすることは、前もって発行者の書面による同意がない限り禁止します。
すべての Pervasive ブランド名および製品名は、Pervasive Software Inc. の米国およびそ
の他の国における登録商標または商標です。また、すべての Actian のブランド名は、
Actian Corporation の米国およびその他の国における登録商標または商標です。
文中の社名、商品名等は各社の商標または登録商標である場合があります。
PSQL v12 新機能のご紹介 ~Defragmenter で運用中に DB メンテナンス~
最終更新:2014 年 12 月 10 日
2
目次
はじめに
4
新機能の説明
5
Defragmenter の概要
5
ファイルの断片化
6
Defragmenter の使い方
7
Defragmenter の効果を検証
12
まとめ
13
製品に関するお問い合わせ
13
3
<はじめに>
PSQL をご利用頂き、誠にありがとうございます。
現行最新版 PSQL v11 のリリースから 約 3 年が経過しましたが、米国 Actian 社か
ら PSQL v12 のリリースが決定しました。
エージーテックでは 2014/10/16 に AGBP 会員の方限定で、
「PSQL v12 日本語ベー
タ版」をご案内いたしました。
今月は新機能紹介第二弾 「データベースの最適化」について説明いたします。
ベータ版は無料でお試し頂けます。ベータ版をまだ利用されていない方は、この機会
にお試しください。
下記の URL の Web サイトからお申込みいただけます。
https://www.agtech.co.jp/products/pervasive/PSQLv12_TEST_regist.html
4
<新機能のご紹介>
PSQL v12 の主な新機能は以下の通りです。
・SQL 系インターフェイス Unicode 対応によって、多言語データベースサポート。
・業務運用中のデータベース最適化によってパフォーマンスを維持。
・インストール先の Windows OS のビット数にあわせた最適なインストール。
・Workgroup のサービスとしてインストール。
・全エディション、ライブマイグレーションを含めた仮想化環境のサポート。
・製品認証の緩和(マシン名のみを検証。ハードウェア変更の影響を受けません)。
・Vx Server のシステム要件「インターネット常時接続」は不要。
・Vx Server のライセンスモデル「セッション容量制限」が不要。
新機能や拡張などについて詳しくは、下記 URL から確認ができます。
http://www.agtech.co.jp/download/manual/pervasive/psqlv12/pdf/Whats_New.pdf
< Defragmenter の概要 >
「Defragmenter」 は、データの断片化を検出して修正することが可能なツールです。デー
タファイル内のレコードやインデックスを配置し直したり、未使用領域を除去したりして、
再びデータへ効率良くアクセスできるようにします。
「Rebuild」ツールを使ってデータベースの最適化を図ることも可能ですが、業務を停止す
る必要があります。しかし、「Defragmenter」では、業務を停止する必要がなく、データベ
ースエンジンの実行中にこの機能を使用することができます。
従いまして、大きなファイルサイズのデータベースを最適化する際も、要する時間を考慮
する必要がなく、業務に支障をきたすことがありません。
<制限事項>
・最適化中にデータベースおよびスキーマ定義を変更することはできません。
・最適化を実行中のファイルに対して、データバックアップを目的とする Backup Agent 操
作や Continuous オペレーションを実行することはできません。
・クライアント キャッシュ エンジンを使用しており、サーバー上で既にファイルを開い
ている場合は、サーバーの最適化が実行できなくなり、最適化の要求でエラーが返され
ます。最適化できるようにするには、サーバーを再起動してクライアント接続をクリア
する必要があります。
・最適化は現在、バックアップ操作に Microsoft のボリューム シャドウ コピー サービ
ス(VSS)を使用する環境にあるサーバー エンジンについてはサポートしません。
5
<ファイルの断片化>
データベースが頻繁に使用される状態が続くと、その間にレコードの作成、更新、または
削除が繰り返し行われるので、Btrieve ファイル内のデータが断片化されたり、レコード件
数に大きな変化がなくてもファイルサイズが当初より大分大きくなったり、データベース
操作が遅くなったりする傾向があります。上記のような現象が発生する原因としては、「フ
ァイルの断片化」が発生している可能性が高いです。
ファイルの断片化、つまり、不連続なファイルの読み込みは多くのページへのアクセスを
必要とし、アクセスに余分な時間を要する事になります。
ファイルの断片化の割合が増加すると、ファイルの読み込みだけに限らず、更新、削除と
いった全てのデータベース操作に影響してしまいます。
このような問題を運用しながら解決してくれるのが、
「Defragmenter」になります。ファイ
ルを最適化することによって、ファイルがコンパクト化され、整理された状態になります
ので、パフォーマンスが復元し、トランザクションもより迅速に実行します。
「Defragmenter」の操作方法は非常に簡単ですので、次のページでご紹介いたします。
6
< Defragmenter の使い方>
「Defragmenter」 は PCC から開きます。ファイルやテーブルをウォッチリストに追加す
ることで、データ分析や最適化が可能になります。今回はサンプルデータベース「Demodata」
より「Billing」テーブルを最適化してみます。
1. PCC を起動し、上部メニューから「Defragmenter」をクリックします。
2. 「Defragmenter」の画面が表示されます。分割画面左上の[使用中のファイル]タブに
は、現在使用中のファイル一覧が表示されます。
※PCC( PSQL Control Center、旧名称 Pervasive Control Center)
7
3. 分割画面左下の[テーブル]タブには、データベース単位でテーブルが表示されます。
4. 分割画面左下の[Btrieve ファイル]タブには、エクスプローラーでファイルが表示さ
れます。
8
5. 最適化したいテーブルまたはファイルをウォッチリストに追加します。該当のファイ
ルまたはテーブルを選択し、右クリックメニューの「ウォッチリストに追加」をクリ
ックします。
6. ウォッチリストに追加すると、分割画面右上に追加されることが分かります。
追加後、ファイルを選択して右クリックメニューの「ファイルの分析」をクリックし
ます。
9
7. 分析結果が表示されます。分析結果の内容についてはマニュアルをご参照下さい。
8. 右クリックメニューの「ファイルの最適化」をクリックします。
10
9. ファイルの最適化が終了すると、状態が「完了」に変わります。また、最適化後のフ
ァイル情報が表示されます。
11
< Defragmenter の効果を検証 >
運用中にデータベースの最適化が可能かつ操作方法が簡単ということはご理解いただけた
と思います。では、Defragmenter 利用することで、ファイルサイズやパフォーマンスにど
れだけ効果があるかを検証してみます。
テスト環境
Windows 8.1(x64)
PSQL v12 Server 64 (Build 12.00.136)
使用データベース
データベースは、480,000 件のデータを使用
レコード長 : 461 バイト
パフォーマンス(速度)の比較については、480,000 件のデータを 1 件ずつ読み込み、全
件読み込みが完了した時間を計測します。
※メモリ上にデータがない状態で検証するため、OS を再起動した直後に検証しております。
<検証結果>
速度(秒)
%断片化
%未使用
%順序不同
ファイルサイズ(MB)
最適化前
122
74
49
100
502
最適化後
81
0
0
1
242
12
<最適化前の ファイル情報>
<最適化後の ファイル情報>
13
まとめ
「Defragmenter」の存在によって、運用上の都合でデータベースの停止をすることが困難
なお客様にとって、手軽に最適化が可能になりました。ファイルの断片化は徐々に発生し
ていくものなので、ファイルの肥大化やパフォーマンスの変化に気づかない事があるかと
思いますが、今回ご紹介したツールは操作が非常に簡単なものとなっていますので、是非
お試しください。
製品に関するお問い合わせ
• PSQL v12 ベータ版申込みサイト
– https://www.agtech.co.jp/products/pervasive/PSQLv12_TEST_regist.html
PSQL v12 ベータ版に関する疑問や不具合のご指摘、その他ご意見は、ベータ版申込み登録
後に案内されます PSQL v12 Beta Test フォーラムに投稿をお願いします。
14