InterBase

提供: Appmethod Topics
移動先: 案内検索

データベース アプリケーションの開発 への移動


Appmethod では、InterBase XE7 データベースを完全にサポートしています。 InterBase XE7 は、次のディレクトリに、Appmethod と共にインストールされます: C:\Program Files (x86)\Embarcadero\Studio\17.0\InterBaseXE7

要件

InterBase XE7 データベースを使用するには、以下が必要です。

  • InterBase のクライアントの最新版
    (Appmethod のインストール時に、あえて InterBase XE7 の選択を解除しない限り、InterBase XE7 の適切なクライアント版が自動的にインストールされます。
  • 新しいプラットフォームをサポートするための x64 マシン(64 ビット版を使用する場合)

64 ビット版をインストールできるのは以下のオペレーティング システムだけです。

  • Microsoft Windows 8
  • Microsoft Windows 7
  • Windows Vista
  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows Server 2008
  • Microsoft Windows 2008 R2

InterBase サーバーを起動する

  1. スタート | プログラム | Embarcadero InterBase XE7 | 64-bit/32-bit instance = gds_db | InterBase サーバー マネージャ [instance = gds_db] を選択します。
  2. まだ実行されていなければ、InterBase XE7 64 Server Manager で、InterBase サーバーを起動します。

Appmethod での InterBase のサポート

InterBase XE7 の統合ライセンス

InterBase XE7 Developer Edition は、Appmethod と共にインストールされ (Starter エディションを除く)、Appmethod の統合ライセンスに組み込まれています。InterBase XE7 ToGo は、どのサーバーにもエンド ユーザー ワークステーションにもインストールする必要はなく、開発用には 2 つのライセンス選択肢、 ToGoIBLite があります。 そのため、Appmethod を使って Appmethod C++ および Object Pascal の InterBase アプリケーションを開発しやすくなっています。

ToGo テスト配置ライセンス

ToGo テスト配置ライセンスを使用すると、InterBase アプリケーションを配置先のマシンでテストしたり、マルチデバイス アプリケーションを iOS 32 ビット デバイス、iOS 64 ビット デバイス、Android デバイスに配置することができます。たとえば、Windows 32 ビット版 InterBase アプリケーションを開発している場合に、ToGo テスト配置ライセンスを使用して、32 ビットまたは 64 ビット Windows や Mac OS X が搭載されている他のマシンでそのアプリケーションをテストすることができます。詳細については、「Appmethod での IBLite および IBToGo のテスト配置ライセンス」を参照してください。


InterBase XE7 の新機能

詳細については、ここで公開されている InterBase XE7 リリース ノートを参照してください。

変更ビュー

変更ビュー機能では、InterBase の複数世代アーキテクチャを使用して、データの変更内容を捕捉します。この機能により、"前回参照してから、どのようなデータが変更されたか" という質問にすばやく答えることができます。

これまでは、それを実現するのに、トリガ、ログ記録、または、先行書き込みトランザクション ログのスクレイピングが必要でした。これは開発者にとって時間のかかる作業であり、特定のトランザクション負荷や変更量の場合には、データベース パフォーマンスにも影響を及ぼしました。今では、変更ビューにより、変更されたデータの一貫したビューが他のトランザクションからも参照可能な形で維持管理されているため、既存のトランザクションにパフォーマンスのオーバーヘッドは発生しません。

Linux 32 ビットおよび 64 ビット

InterBase XE7 リリースで Linux キット(32 ビットおよび 64 ビット)が導入されています。InterBase XE7 の新しい Linux ビルド(12.0.0.124)が入手可能です。

パフォーマンスの向上

このリリースでは、多くの点でパフォーマンスの向上が図られています。

  • SMP パフォーマンスの向上。InterBase XE7 で、複数読み取りおよび書き込み操作のパフォーマンスが向上しました。
  • 識別ダンプ。InterBase XE3 の "インクリメンタル ダンプ" では、変更されたページをターゲット データベース ダンプ ファイルに書き出すだけでも、データベース サーバーがデータベース ファイルからすべてのページを読み取る必要がありました。XE7 には追跡システムが実装されているため、前回のダンプ以降で更新の必要があるページのみ取得されるようになりました。これにより、ターゲットに対して即座に更新を適用できるようになりました。ソース データベースごとに "識別ダンプ" は 1 回だけ可能です。
  • トランザクション キャップが大きい(OIT - OAT)場合のコミット済み読み取り(RC)トランザクション処理の向上。
  • トランザクション作成の高速化。

パフォーマンス監視カウンタ

パフォーマンス監視カウンタが、32 ビット値から 64 ビット値に拡張されました。これには、データベース内のテーブルに格納されるすべてのデータが含まれています。IBConsole は、このリリースで更新されました。

ODS に関連する下記の違いに留意してください。

  • ODS <= 15 の場合は、(ダイアレクト 1 データベースについてもダイアレクト 3 データベースについても)引き続き従来どおりの 32 ビット INTEGER カウンタになります。
  • ODS >= 16 の場合は、ダイアレクト 1 データベースについては、"double precision" データ型として定義されたカウンタになります。
  • ODS >= 16 の場合は、ダイアレクト 3 データベースについては、"NUMERIC(18,0)" データ型として定義されたカウンタになります。ご存じのとおり、デフォルトでは、新規データベースはすべて ODS 16、ダイアレクト 3 として作成されます。

セグメント部分選択機能

InterBase のこれまでのバージョンでは、(単一キーか複合キーかを問わず)インデックスごとに単一の選択値を保持していました。値は降順で格納されており、インデックス全体での重複の数に関する情報を追跡します(ただし、第 1 レベルのみ)。しかし、さらに下位レベルに関する情報があると役に立つ場合もあります。InterBase XE7 では、このような情報を追跡できるようになりました。

64 ビット トランザクション ID

InterBase XE7 では、トランザクション ID が 64 ビット(実際には 48 ビット)に拡張されているため、データベースはこれまでの制限がなくなり、より多くのトランザクションに対応できるようになりました。48 ビットに制限しているのは、トランザクション ID の今後の増加に備えるためです。

ODS の変更

InterBase XE7 では、データベースのバックアップを特定の古いバージョンの ODS に復元できるようになりました。データベース復元操作では自動的に ODS の最新バージョンでデータベースが作成されますが、開発者側で古いバージョンに復元しなければならない場合があります。 その理由は次のとおりです。

  • 同じデータベース ファイルを、互換性のあるバージョンの他のデータベース エンジンに配置できるようにするため。
  • 解決しにくい ODS バグの回避策を提供するため。
  • 単一のサーバー/エンジンを使用して同じデータベースの複数のコピー(ODS ごとに 1 つ)を復元したあと、それらの各データベース ファイルに対してクエリを実行することにより、現在の ODS バージョンと古い ODS バージョンの間で、パフォーマンスの影響を受けやすい操作をテストするため。

OpenSSL の更新

InterBase XE7 に含まれている OpenSSL ライブラリは、セキュリティの脆弱性の修正で、バージョン 1.0.0d からバージョン 1.0.1i にアップグレードされています。 OpenSSL は、InterBase における暗号化と OTW/SSL の機能で使用されています。 InterBase XE7 での OpenSSL 使用に関する詳細については、『操作ガイド』の「ネットワーク設定」と、同様に『データ定義ガイド』の「データの暗号化」を参照してください。

サービス API でのオンライン ダンプ操作およびジャーナル アーカイブ操作のサポート

  • オンライン ダンプとインクリメンタル ダンプ。サービス API では、オンライン ダンプとインクリメンタル ダンプをサポートするようになりました。
  • ジャーナル アーカイブ管理アクション。サービス マネージャによる InterBase ジャーナル アーカイブに対するさまざまな操作の実行を要求できるようになりました。

前のリリースからの機能

以下の項目は、前のリリースの機能の一覧です。

ODBC ドライバの機能改善

これまでの DataDirect ODBC ドライバが、新しく提供される InterBase ODBC ドライバに置き換えられました。ただし、新しい InterBase ODBC ドライバが InterBase XE3 と一緒にインストールされない場合があります。新しい ODBC ドライバは、登録ユーザー向けに http://cc.embarcadero.com/item/28975 からダウンロードできるようになっています。

インデックスの同時作成

InterBase XE3 でデータベースを復元する場合には、テーブルのデータを復元した後で、テーブルのインデックスも同時に作成することができます。また、SET STATISTICS を使用したインデックスの SELECTIVITY の再計算も同時に行うことができます。InterBase XE3 では、そのような操作のためにデフォルトで 1 つの補助スレッドを有効化します。そのような操作に使用する並行スレッドの数は、ibconfig ファイルの構成パラメータ MAX_ASSISTANTS で変更することができます。

データベースおよびユーザー テーブルのスペース予約の防止

InterBase XE3 では、スペースの予約を防止し、最大限に行パッキングを行えるよう、CREATE/ALTER TABLE 句が導入されました。行の UPDATE や DELETE がほとんどまたはまったく行われないテーブルや、高い割合の行を扱う集計や分析のような複雑なクエリを行うテーブル、インデックスの再構築が行われたりデータベースのバックアップや復元が頻繁に行われるテーブルでは、この句が役立ちます。この句を使用すると、記憶領域を 20% 節約できる可能性があります。

Windows、Mac OS X、Linux、iOS デバイス、Android デバイスの間での物理データベースの移植性

InterBase XE3 では、Windows(32 ビットおよび 64 ビット)、Mac OS X、Linux、iOS デバイス、Android デバイスの間でデータベース ファイルをコピーすることができます。開発プラットフォームで作成された InterBase データベースは、サポートされている他のプラットフォームに簡単に配置することができます。開発用のマシンで InterBase アプリケーションと InterBase データベースを作成したあと、一部制限はありますが、それらのアプリケーションとデータベースを他のサポート対象プラットフォームに簡単に配置することができます。

この機能の詳細については、『InterBase XE3 Update 4 リリース ノート』のファイルを参照してください。このファイルは、Appmethod と一緒にインストールされるもので、通常は C:\Program Files (x86)\Embarcadero\Studio\17.0\InterBaseXE3\Doc にあります。また、オンライン(http://docs.embarcadero.com/products/interbase/IBXE3Update4/Readme.html)でも公開されています。

強度の高いパスワード保護

新しい InterBase XE3 データベースでは、PCI-DSS(Payment Card Industry - Data Security Standard:PCI データセキュリティ基準)のパスワード要件を満たすよう、強度の高いパスワード保護が実装されています。この追加機能では、パスワードの有効文字数が増えるため、パスワード保護が強力になります。

パスワードには、8 文字から最大 32 文字までを含めることができます。

64 ビット版 InterBase でのデータベース キャッシュ設定の拡大

64 ビット版 InterBase データベースのキャッシュ サイズが拡大されました。32 ビット版エンジンでは上限が 75 万ページでしたが、64 ビット版エンジンでは 7500 万ページになりました。

ストアド プロシージャの EXECUTE STATEMENT

ストアド プロシージャの開発時には、3 種類の EXECUTE STATEMENT をストアド プロシージャ内に埋め込むことができます。この種類は、EXECUTE STATEMENT コマンドから返される行の数によって分かれています。次の 3 種類です。

  • データ行が返されないもの。
  • データが 1 行だけ返されるもの。
  • 返される行の数が変化するもの。

インデックス キーのセグメント サイズの拡大

  • インデックス キーは、最大で、ページ サイズの 1/4 から 4 バイトを引いたサイズにできるようになりました。
  • InterBase データベースは、デフォルトでは 4 KB のページ サイズで作成されます。データベース開発者は、この値をオーバーライドして、ページ サイズを最大 16 KB まで増やすことができます。
  • ページ サイズが 4 KB のデータベースでは、キーごとの最大サイズが 1020 バイトのインデックスを作成できます。
  • ページ サイズが 16 KB ならキーごとの最大サイズは 4092 バイトになりますし、他の場合も同様に計算できます。

ibconfig パラメータ:THREAD_STACK_SIZE_MB

THREAD_STACK_SIZE_MB ibconfig パラメータによって、InterBase 内のさまざまなスレッドのスタック サイズを制御することができます。これは、スレッド単位の値を MB の倍数で指定します。有効な範囲は 2 MB から 32 MB までです。範囲外の値が設定された場合には、値はデフォルトの 2 MB になります。

テーブル固有のブロック化因数

ブロック化因数という用語は、1 つのブロックに格納されるレコードの数を表します。InterBase では、1 つのデータ ページに格納できる行数を最大にするための、データベース レベルのブロック化因数を 1 つ持っています。

データベースの高速スイープ

データベースをスイープすることで、古いレコードを系統立てて削除することができます。定期的にスイープを実行すると、データベースのサイズが大きくなりすぎるのを防ぐことができます。これまではスイープ処理を行うとシステムのパフォーマンスが低下していたため、ユーザーは本番運用に影響が出ないよう、自動データベース スイープ機能を無効化していました。

関連項目