PSQL について
 
このページをシェアする                  
PSQL について
PSQL とその機能について
この章では、PSQL とその機能を説明します。
PSQL データベース管理システムについて
主要なコンセプト
DBMS 製品について
PSQL マニュアルの使い方
ファイル システムのセキュリティ
PSQL データベース管理システムについて
PSQL は、MicroKernel エンジンを中心に構成された総合的なデータベース管理システムです。
このセクションでは製品とそのコンポーネントを説明します。
データベースとは
簡単に言えば、「データベース」はデータの集合体です。一般的に、データは同じ特徴を共有する情報をサブセットに分割したものによって構成されます。以下にデータベースの例をいくつか示します。
電話帳
電話帳の各エントリは、苗字、名前、住所および電話番号という 4 つの特性で構成されます。
デジタル写真のコレクション
ハード ディスク上の各写真は、ファイル名とそのイメージを表すデータという 2 つの特性で構成されます。
果樹園リストおよび各果樹園で栽培されているフルーツのリスト
果樹園リストの各エントリは、果樹園名、住所および創設日という 3 つの特性で構成されます。関連するフルーツのリストには、果樹園名、フルーツ名、品種(マッキントッシュ、富士など)、価格、味の評価という 5 つの特性があります。
本製品に関しては、データベースは意味を持ち明確に定義された関連情報の集合体を指します。おそらく、お使いのコンピューターまたはネットワーク上に使用可能な 1 つ以上のデータベースがあります。たとえば、備品または材料を購入するベンダーに関する情報のデータベースがあり、また、顧客あるいはメンバー情報を含むデータベースなどがあります。これらはそれぞれ別個で、明確に定義された関連情報の集合体です。
データベース管理システムとは
コンピューター時代のさなか、私たちはありとあらゆる場所でデータベースという情報の集合体に取り囲まれています。残念なことに、これらのデータは、整理、検索、分析、最新状態を保つ手段を持たなければ何の役にも立ちません。
「データベース管理システム」(以下 DBMS)は大量データを管理し、そのデータをその他のコンピューター プログラムや人々が相互に利用できるようデザインされたコンピューター プログラムです。また、DBMS は略式にデータベース エンジンと呼んだり、単にエンジンと呼ぶこともあります。DBMS は以下のタスクを実行します。
データへのアクセスを制御します。DBMS はデータの悪用を防ぐ監視役として動作させることができます。
データを構造化して、他のアプリケーションで解釈できるようにします。DBMS は、すべてのデータがデータベース構造に従っていることを保証するので、他のコンピューター プログラムは共通する方法を使用してデータを操作することができます。
データの安全性を保守し、データの文字化けや損失を防ぎます。DBMS は、データの致命的な損失に備えてデータのバックアップを容易にし、また、一貫した方法でデータにアクセスすることにより、データが不注意によるダメージを受けないようにします。
新しい情報の追加、検索、更新、削除が簡単に行えます。DBMS では新しいデータを直ちに受け付け、目的に応じて情報の検索、更新および削除に使用できるツールを提供します。挿入するデータとデータベース フィールドで定義された属性との適合性をチェックします。
異なるデータ セット間の関係を分析することができます。DBMS は、データの一部がほかのデータの一部とどのように関連しているかを調べることができる方法でデータを格納します。
要するに、DBMS ではデータを組織化し、その安全性を保守するので、簡単にデータを使用および理解することができます。
PSQL のコンポーネント
PSQL の DBMS は、データの管理を支援するためのさまざまなコンポーネントで構成されています。
MicroKernel エンジン
リレーショナル エンジン
クライアント(別称:リクエスター)
PSQL Control Center
各種ユーティリティ
ドキュメント
MicroKernel エンジン
高いパフォーマンスを実現している PSQL の中核的要素は、MicroKernel エンジンです。このエンジンはコンピューターのハード ディスク上のデータ ファイルを直接処理します。リクエストされると、ユーザーやアプリケーションがデータを処理しているときであっても、新規データの挿入、不要なデータの削除を直ちに行い、また、データ ファイルの安全性と整合性を常に保守します。
リレーショナル エンジン
PSQL リレーショナル エンジン は MicroKernel エンジン および PSQL クライアントと通信します。このエンジンは、Microsoft ODBC のサポート、複雑な検索、分析機能およびセキュリティを含む多くの重要な機能を提供します。
クライアント(別称:リクエスター)
クライアント/サーバー システムでは、PSQL クライアントは PSQL サーバーに対してリクエストを行うコンピューター上に存在します。クライアントは、クライアント アプリケーションと、ネットワークを通してサーバー上の MicroKernel エンジンおよびリレーショナル エンジンの両方と相互に作用します。
PSQL Control Center
PSQL Control Center(PCC)は、データベースの作成と操作および DBMS の管理に役立つグラフィカル ツールです。ここから本製品のほとんどすべての製品機能にアクセスすることができます。PCC 全般の説明については、PSQL Control Center の使用を参照してください。
各種ユーティリティ
PSQL データベース エンジンでは、PSQL で使用できる多くのオプションや機能のテスト、設定および操作をサポートする多様なグラフィカル ツールおよびコマンド ライン ツールが提供されます。すべてのユーティリティは Windows 上で実行でき、ほとんどのユーティリティが Linux および OS X データベース サーバー エンジンにリモートからアクセスできます。
表 1 PSQL ユーティリティの概要
ユーティリティ名
対応しているプラットフォーム
説明
Capacity Usage ビューアー
Windows、Linux および OSX
すべてのデータベース エンジンの同時セッション数とデータ使用量を監視します。『Advanced Operations Guide』の Capacity Usage ビューアーを参照してください。
PCC 内の設定プロパティ ダイアログ ボックス
Windows、Linux および OSX
PSQL クライアントおよびサーバー コンポーネントの設定を操作します。『Advanced Operations Guide』の設定リファレンスを参照してください。
DDF Builder
Windows、Linux および OSX
基となるデータ ファイルに変更を加えることなく、PSQL データ辞書ファイル(DDF)の表示、作成、変更を行うことができます。『DDF Builder User's Guide』の DDF Builder についてを参照してください。
Defragmenter
Windows、Linux および OSX
データ ファイルの断片化の統計情報を監視します。『Advanced Operations Guide』のデータ ファイルの断片化の監視を参照してください。
スキーマのエクスポートおよびインポート
Windows、Linux および OSX
1 つまたは複数のテーブルのスキーマをエクスポートするか、データベース レベル、つまりデータベース全体のスキーマをエクスポートすることができます。データベース スキーマを新しいデータベースにインポートできます。スキーマの管理を参照してください。
Function Executor
Windows
Btrieve オペレーションを実行します。MicroKernel エンジンの操作方法を学習したり、アプリケーションのテストおよびデバッグを行うことができます。『Advanced Operations Guide』の Btrieve オペレーションのテストを参照してください。
Gateway Locator
Windows
ワークグループ エンジン用のゲートウェイ ロケーター ファイルの設定および管理に使用されます。『Getting Started with PSQL』のゲートウェイ構成のセットアップを参照してください。
データのインポートとエクスポート
Windows、Linux および OSX
テーブルへのデータのインポートや、テーブルのデータのエクスポートを行います。データ インポート ウィザードを使ったデータのインポートおよびデータ エクスポート ウィザードを使ったデータのエクスポートを参照してください。
License Administrator
Windows、Linux および OSX
PSQL 製品キーを管理します。ライセンス管理を参照してください。
Maintenance
Windows、Linux および OSX
データのインポートやエクスポートなどの、PSQL の一般的なファイルおよびデータの操作を実行します。BUTIL はコマンド ライン バージョンです。『Advanced Operations Guide』の Maintenance を使用した Btrieve データ ファイルの操作を参照してください。
Monitor
Windows、Linux および OSX
サーバー エンジンの動作を監視します。データベース管理およびプログラミング診断に役立ちます。『Advanced Operations Guide』の監視を参照してください。
Notification Viewer
Windows、Linux および OSX
ライセンス コンポーネントによって記録されるメッセージを表示します。Notification Viewer では、システム トレイ アイコンとグラフィカル ユーザー インターフェイス(GUI)の 2 つのインターフェイスを提供します。『Advanced Operations Guide』の Notification Viewer を参照してください。
ODBC アドミニストレーター
Windows
データベースへのアクセスに使用するデータ ソース名(DSN)を設定します。『ODBC Guide』の DSN のセットアップおよび接続文字列を参照してください。
PSQL Control Center
Windows、Linux および OSX
PSQL の主要なユーティリティ。利用可能なエンジンおよびデータベースを一覧表示し、プロパティ(設定)オブジェクトを設定することができます。PSQL Control Center の使用を参照してください。
PSQL System Analyzer
Windows
システム コンポーネントの分析および通信テストの実行を行います。PSQL System Analyzer(PSA)を参照してください。
Query Plan Viewer
Windows
データベースによって選択されたクエリ案を表示して、SQL クエリの最適化方法をより適切に決定できるようにします。『SQL Engine Reference』の Query Plan Viewer を参照してください。
Rebuild
Windows、Linux および OSX
あるバージョンの MicroKernel ファイルを別のバージョンに変換します。『Advanced Operations Guide』のデータ ファイルの変換を参照してください。
データベース名の修復
Windows、Linux および OSX
テーブルが元のデータベース名にバインドされている場合、そのテーブルを新しいデータベースと関連付けます。データベース名を修復するにはを参照してください。
SQL Editor - PCC 内から起動
Windows、Linux および OSX
SQL ステートメントを対話型で実行し、テーブルでデータを追加または編集することができます。SQL Editor を参照してください。
Table Editor - PCC 内から起動
Windows、Linux および OSX
テーブルの列の追加、削除または特性の変更を行ったり、テーブルの作成を行うことができます。Table Editor を参照してください。
ドキュメント
PSQL にはオンライン版の完全なドキュメント一式が含まれています。ドキュメントの詳細については、PSQL マニュアルの使い方を参照してください。
主要なコンセプト
このセクションでは、データベースの基本的な概念と、PSQL を他のデータベース製品と差別化する機能について説明します。
データベース構造と用語
今日使用されているデータベース管理システムの多くは、共通する基本構造のセットを共有しています。これらの構造について、次の表を使って以下に説明します。
表 2 電話帳用のテーブル例
「電話帳」テーブル
 
列 1
列 2
列 3
列 4
列名
氏名
住所
郵便番号
電話番号
行 1
Fred Black
643 Oak
12346
555-2345
行 2
Jane Doe
112 Elm
12345
555-1212
行 3
John Doe
112 Elm
12345
555-1212
データベースの最も基本的な要素は、「」です。値はデータの 1 つの要素であり、1 つの特性であり、特定のエンティティに使用します。たとえば、上図で氏名の "John Doe" や電話番号の "555-1212" は値です。
列またはフィールド
もう 1 つの要素は、「」です。または、「フィールド」とも言います。列は特性を表し、特定の値を持ちません。通常、列はその特性を説明する名前を持ちます。たとえば、電話帳では「氏名」および「電話番号」が列です。これらは特定の人物を検索しない限り、特定の値を持ちません。フィールドは、特定の行の一般的な特性を参照するのに使うことがあります。たとえば、前に示した表内で特定のボックスを指し、「このフィールドの値は何ですか?」と尋ねることができます。
行またはレコード
もう 1 つの要素は、「」です。または、「レコード」とも言います。行は、ある特定のインスタンスに対するすべての値の集合体です。たとえば、電話帳で、氏名、住所、電話番号がすべて揃った 1 つのエントリが 1 つのレコードまたは行です。
セル
セル」は、特定のレコード内の 1 つの列です。行と列が交差している部分がセルです。各セルには固有の値があります。たとえば、2 行目の第 3 列にあるセルの値は 12345 です。
テーブル
行と列の集合体は「テーブル」を構成します。テーブルは、まったく同じ構造を共有するデータのセットです。通常、テーブルはその内容を説明する名前を持ちます。たとえば、上図のテーブルは "電話帳" という名前が付けられています。PSQL では、各テーブルはハード ディスク上で別々のデータ ファイルとして保存されます。
インデックス
インデックス」は、特定の列に含まれるすべての値を順序付けしたリストです。テーブルには、インデックスを付けないようにすることもできますし、1 つ以上のインデックスを付けることもできます。データベース エンジンでは、インデックスを使ってデータベース内で特定のレコードを検索します。すべてのレコードを 1 つずつ順に検索していく必要はありません。データベース検索で頻繁に使用する列にインデックスを作成すると、高い確率でデータベースのパフォーマンスが向上します。
データベース
データベース」は 1 つ以上のテーブルの集合体です。テーブル内のデータは、さまざまなテーブル間で必ずしも関連付ける必要はありませんが、通常は多くの関連付けが行われます。たとえば、後で述べる「食べ物の好み」テーブルと前に示した「電話帳」テーブルで 1 つのデータベースを構成することができます。PSQL では、ハード ディスク上の 1 つ以上のデータ ファイルとデータ辞書ファイル(DDF)で 1 つのデータベースが構成されます。DDF は、データベースの構造を定義するテーブル、列、その他の属性のすべての定義が含まれる特別なデータ ファイルです。
スキーマ
スキーマ」は、データベースの全体の構造を説明する定義の完全なセットを指します。標準のスキーマでは、テーブル、列、インデックスおよびその他多くの属性が定義されています。データベースの DDF にはそのデータベースのスキーマが含まれます。
表 3 食べ物の好み用のテーブル例
「食べ物の好み」テーブル
 
列 1
列 2
列 3
列 4
列名
氏名
魚肉類
穀物類
飲料類
行 1
Fred Black
すし
小麦パン
日本酒
行 2
Jane Doe
ステーキ
シリアル
ビール
行 3
Ann Dean
タラ
ミネラル ウォーター
リモート
リモート」は、使用しているコンピューターにはないが、アクセスしたいファイル サーバーまたはデータベースなどのオブジェクトを指します。ネットワーク上のデータベースに接続した場合は、リモート データベースに接続しています。リモートは、「ローカル」の反意語です。リモートは、サーバー コンピューターまたはそのクライアントの 1 つのどちらで現在作業しているかによって、クライアントまたはサーバーのいずれかを指します。リモートは常に、使用しているシステム上にないオブジェクトを指します。
ローカル
ローカル」は、現在使用しているコンピューター、またはこのコンピューターに保存されているものを指します。ローカル データベースとは、そのデータ ファイルが現在使用しているコンピューターのハード ディスク上に保存されているデータベースです。ローカルは「リモート」の反意語です。ローカルは、サーバー コンピューターまたはクライアント コンピューターのどちらで現在作業しているかによって、クライアントまたはサーバーのいずれかを指します。
リレーショナル
リレーショナル」という語は、関連付けられたテーブルの形式で格納されているデータを指します。関連付けられたテーブルにより、データのサブセット間で関係を設定することができます。
たとえば、前に示した 2 つのテーブルには「氏名」という列があり、それぞれの値には同じ名前がいくつかあります。電話帳テーブルの氏名と食べ物の好みテーブルの氏名は相互に参照することができるので、「ステーキを好む人物の電話番号は?」などの質問に対して答える機能を持つことができます。また、「製品 A を購入した後で製品 B を最も多く購入する消費者の特徴は?」という質問にも答えることができます。
リレーショナル データベースがどれほど強力かがわかります。PSQL のリレーショナル エンジンを使用すれば、データへの完全なリレーショナル アクセスが可能です。
結合
「結合」は、関連付けられたテーブルの列間の関係を指します。通常、結合操作は SELECT クエリの一部で、関連付けられたテーブルから情報を取得するのに使用します。
PSQL 独自の利点
PSQL 独自の機能の 1 つは、アプリケーションがデータにアクセスする際に、業界基準のリレーショナル エンジン、あるいは超高速アクセスの MicroKernel エンジンのどちらの方法でも使用できることです。実際、PSQL を使用すれば、アプリケーションは両方のエンジンを同時に使用して同じデータにアクセスすることができます。
エンジンのアクセス方法
PSQL は Btrieve API、ADO.NET、または ODBC など、エンジンを用いてデータにアクセスする方法を多数提供します。アクセス方法の詳細については、SDK ドキュメントを参照してください。
用語に関する備考
製品やドキュメント内で MicroKernel エンジンについて言及する場合、「テーブル」および「データベース」という用語は一般的に使用せず、データ ファイルがこれらの用語に相当します。さらに、MicroKernel エンジンユーザーは通常、「」および「」よりも「レコード」および「フィールド」という用語を使用します。
DBMS 製品について
PSQL には異なるバージョンがあります。これらのバージョンの大きな違いは、価格、マルチ ユーザー機能および使用されるライセンス モデルです。
PSQL Workgroup は低価格ですが、小さなワークグループ環境しかサポートしません。
PSQL Server は、大容量ボリュームにおける最高のスケーラビリティ、重要なデータベース アプリケーション向けに設計されており、専用のデータベース サーバーがあります。サーバー エンジンは、ユーザー数が増えれば増えるほど経済的になります。
PSQL Vx Server エンジンは PSQL Server と同等の機能があり、このライセンス モデルはサービス管理、SaaS(サービスとしてのソフトウェア)、またはその他の多重環境をサポートできるよう設計されています。
全バージョンのデータベース エンジンは PSQL データベースと完全な互換性があり、共通するアーキテクチャで設計されています。通常、Workgroup から Server へアップグレードする場合はアプリケーションやデータベースを変更する必要はありません。新しいバージョンをインストールするだけで、動作する準備が整います。PSQL Vx Server は異なるライセンス モデルを使用するため、完全インストールが必要です。PSQL Server または Workgroup を PSQL Vx Server へアップグレードすることはできません。
PSQL Workgroup
PSQL Workgroup は、小規模なワークグループまでの、スタンドアロンのシングル ユーザー インストール用に設計されたピアツーピア ネットワーク設定を提供します。ワークグループ エンジンは、データベース エンジンがインストールされていないコンピューター上に置かれている PSQL データに複数のユーザーがアクセスすることができるエンジンです。
Workgroup と Server との主な違いは、 Workgroup のゲートウェイ機能です。データが置かれているコンピューター上で起動しているデータベース エンジンがない場合、通常はそのデータに接続する最初のデータベース エンジンがほかのエンジンからのすべてのリクエストを処理してデータにアクセスします。この機能は、同じワークグループ エンジンが常にそのデータを提供する設定、あるいはそのデータに最初に接続するワークグループ エンジンがゲートウェイを請け負うという "動的" な設定の両方が可能です。
Workgroup 製品は同時ユーザー ライセンス モデルを使用します。ライセンス モデルを参照してください。
PSQL Server
PSQL Server は、何千にも及ぶコンカレント ユーザーにパフォーマンスとスケーラビリティを提供するクライアント/サーバーの完全なアーキテクチャを備えています。サーバー エンジンではモニターおよび設定がリモートで行えます。サーバー エンジンは、アクセスされるデータ ファイルと同じコンピューター上に存在しなければなりません。
PSQL Server の設定は、ドキュメントで特に注記がない限り、Windows、Linux、OS X、Windows Nano Server、および IoT Core システムでインストールされるエンジンすべてで同じです。
PSQL Server では同時ユーザー ライセンス モデルを使用します。詳細については、ライセンス モデルを参照してください。ライブ マイグレーション、フェールオーバー、フォールト トレランス(FT)、高可用性(HA)および障害回復などのハイパーバイザー機能と一緒に使用するためにライセンスを追加する必要もありません。
PSQL Vx Server
PSQL Vx Server エンジンは PSQL Server と同等の機能がありますが、このライセンス モデルの場合はサービス管理、SaaS(サービスとしてのソフトウェア)、また多重クライアントによる他の環境をサポートできるよう設計されています。PSQL Vx Server にはホスティング、接続プール、またはインターネットやイントラネットの使用に制限はありません。
PSQL Vx Server では容量ベース ライセンス モデルを使用します。ライセンス モデルを参照してください。
PSQL Vx Server は PSQL で用いられる技術を基に構築されているため、PSQL Server のデータベース機能やドキュメントの多くが共通しています。PSQL のマニュアル全体を通して、特に異なる点を明記していない限り、PSQL Server に関する記述はすべて PSQL Vx Server にも該当します。
PSQL マニュアルの使い方
PSQL のすべてのマニュアルはいずれも、クリックやドラッグ、ファイルのオープンや保存などコンピューターの基本的な使用に慣れていることを前提としています。これらの基本的な使用に関する情報が必要な場合は、お使いのコンピューターやオペレーティング システムに付属するドキュメントを参照してください。
ユーザー向けドキュメントのビューアーは PSQL Control Center(PCC)に組み込まれました。ドキュメントは、PCC インターフェイスの[ようこそ]ビュー、[ヘルプ]メニュー、F1(Windows)または Shift + F1(Linux)キーを押すことによって開くことができます。
以下は、ドキュメント ライブラリで最もよく使用されるマニュアルの要約です。このライブラリにはほかのマニュアルも含まれていて、それらはすべて上で説明した PCC インターフェイスから使用することができます。
Getting Started
Getting Started with PSQL』を読めば、PSQL 設定をインストール、セットアップ、およびトラブルシューティングすることができるようになります。以下のトピックについて説明しています。
インストールするための準備
PSQL のインストール
PSQL または Btrieve の以前のバージョンからのアップグレード
PSQL の設定
PSQL のインストールでのトラブルシューティング
What's New
What’s New in PSQL』は、PSQL の本リリースの新機能と、前リリースからの動作変更をまとめたものです。また、新機能の詳細が記載されたドキュメントの参照先も示します。
User’s Guide
本ガイドでは、PSQL の概要を示し、一般的なユーザー タスクについて説明します。また、データベース エンジン、PSQL のユーティリティとその他の主要なコンポーネントについて説明するとともに、サーバー エンジンとワークグループ エンジンとの違い、および ODBC と Btrieve アクセスの違いについても説明します。さらに、PSQL の基本事項を記載します。
Advanced Operations Guide
Advanced Operations Guide』では、一般的な操作やいくつかの新しい操作を実行する手順を含め、管理者レベルでの詳細情報を提供します。以下のトピックが含まれます。
データベースの一貫性のチェック
定期的なバックアップの実行
ネットワーク プロトコルの設定およびネットワーク トポロジの理解
データベース セキュリティの操作
基本設定のガイドライン
設定オプションのリファレンス
ファイルの移動、名前変更、コンパクト化およびリビルド
SQL Engine Reference
SQL Engine Reference』は、データベース プログラマ向けの SQL リレーショナル データベース言語の完全なリファレンスです。SQL エンジンのパラメーターおよび制限についても説明しています。
Status Codes and Messages
Status Codes and Messages』には、PSQL 使用時に受け取る可能性があるステータス コードと番号付きメッセージがすべて記載されています。
追加情報
弊社 Web サイトでは、PSQL の製品ドキュメント、ホワイト ペーパー、技術白書をダウンロードしたり、オンライン ライブラリを使用したりすることができます。
ファイル システムのセキュリティ
PSQL エンジンは、Windows ファイル共有などの、特定のオペレーティング システム(OS)によって定義されたファイル システムのセキュリティに従います。
サーバー エンジンのみが、ユーザー名に割り当てられた権限によって OS レベルのファイル セキュリティを設定することができます。ワークグループ製品ではこれを行いません。ワークグループ エンジンが最も一般的に使用される小規模オフィスでは、ネットワークの専門家が不足しており、データ アクセスに障害が少ない方がよいため、これが好ましいと考えられます。