一度書いたらどこでも実行
一度書いたらどこでも実行
これは Java のマーケティング スローガンですが、PHP の重要な機能の 1 つでもあります。多くのビジネス モデルは、製品を幅広い顧客ベースに販売できるようにするために、オペレーティング システムの独立性に依存しています。では、なぜ特定のデータベース ベンダーと結びつくのでしょうか?データベース抽象化レイヤーを使用すると、データベースから独立してアプリケーションを開発できます。ただし、多くの場合、これらは期待以上にパフォーマンスに影響を及ぼしたり、データベース固有のコードをすべて削除できるほど抽象的ではありません。
この記事は何を教えてくれますか?
この記事では、データベース抽象化パッケージ PEAR MDB について詳しく説明します。この記事の焦点は、データ型の抽象化や XML ベースのスキーマ管理など、同様のパッケージで提供される機能を超える MDB のより高度な機能にあります。 PHP と SQL の基本的な理解を推奨します。
なぜ別のデータベースクラスが必要なのでしょうか?
通常、Web プロジェクトは、顧客が使用する RDBMS (リレーショナル データベース管理システム) を決定した後、既存の IT インフラストラクチャに追加されます。予算の違いによって、展開するデータの選択に影響が出る可能性があるため、そうではありません。結局のところ、開発者としては、特定のベンダーに縛られたくないだけかもしれません。それ以来、サポートされている各データのバージョンを維持するか、より多くのパフォーマンスを犠牲にして必要以上に使いやすさを向上させることを意味します。PEAR MDB を導入してください。
MDB は、RDBMS に依存しない PHP プログラムの作成を簡単なプロセスにすることに重点を置いたデータベース抽象化レイヤーです。 PHP の他のいわゆるデータベース抽象化レイヤーのほとんどは、サポートされているすべてのデータベースと非常に限定された抽象化 (主にシーケンスのみ) に共通の API を提供します。一方、MDB を使用すると、データベースによって送受信されるすべてのデータを抽象化できます。データベース スキーマも RDBMS に依存しない形式で定義できます。ただし、高いパフォーマンスと使いやすさを維持しながら、これらの機能を提供します。これは、2 つの一般的なデータベース抽象化レイヤー、PEAR DB と Metabase を詳しく調べ、それらを統合することによって実現されました。そして、統合プロセス中に、この機会を利用して、統合された API とパフォーマンスに影響を与える設計をクリーンアップしました。
MDBはどのようにして登場しましたか?
2001 年の秋に遡ると、私は会社のプログラミング フレームワーク RDBMS を独立させることができるデータベース抽象化パッケージを探していました。目標は、データベース固有のコードの量をゼロに減らすことです。このような機能を提供する唯一のパッケージは Metabase です。ただし、Metabase の一部には、PHP3 との互換性を保つために不快な API が含まれています。それにもかかわらず、私たちは Metabase が唯一の選択肢であると判断しました。しかし、Metabase にパフォーマンス改善パッチを追加した後でも、パフォーマンスを犠牲にしすぎていると感じていました。私たちは 2001 年の PHP 国際会議で Metabase の作者たちと会い、Metabase のようなものを PEAR プロジェクトの一部にすることの利点について話し合いました。その後間もなく、PEAR DB とメタベースを統合することで考えられる利点について、PEAR メーリング リストで別の議論が始まりました。社内で何度も議論を重ねた結果、この仕事を引き受けることにしました。数か月にわたる懸命な作業を経て、MDB の最初の安定版リリースが完成しました。