1

わかりました..これについて調査しましたが、調べれば調べるほど混乱します。だからここに投稿することを考えました。

  • DBMS はデータベース サーバー機能を提供します
  • DBMS にはサーバー コンポーネントとクライアント コンポーネントがあります。
  • DBMS = データベース サーバー ソフトウェア
  • DBMS はサーバー/クライアント アーキテクチャで動作します

これらは、データベース サーバー ソフトウェアと DBMSの違いを理解しようとしたときに出くわした 4 つの概念です。ここで誰かが正しい概念を明確にしてくれませんか?

4

1 に答える 1

4

ここから撮影:

データベースは、組織化されたデータの集まりです。データは通常、情報を必要とするプロセスをサポートする方法で現実の側面をモデル化するように編成されます。たとえば、空室のあるホテルの検索をサポートする方法で、ホテルの空室状況をモデル化します。

データベース管理システム( DBMS ) は、ユーザー、他のアプリケーション、およびデータベース自体と対話してデータを取得および分析するコンピューター ソフトウェア アプリケーションです。汎用 DBMS は、データベースの定義、作成、クエリ、更新、および管理を行えるように設計されています。

つまり、要するに、DBMS は、データベースに保存されたデータの保存と管理を担当するソフトウェアの一部であり、ユーザー、他のソフトウェア、およびデータベース自体と対話します。

すべての DBMS がクライアント サーバー アーキテクチャを備えているわけではなく、データベースに格納されるデータに特定のモデルがないことに注意してください。現在最も使用されているデータベース モデルはリレーショナル モデル (多くの一般的な DBMS はリレーショナル DBMS またはRDBMSです) ですが、他のモデル (オブジェクト リレーショナル、ドキュメント指向など) もあります。

クライアント サーバー アーキテクチャに従う DBMS の例:

  • MySQL
  • PostgreSQL
  • SQLサーバー
  • MongoDB (NoSQL DBMS)

クライアント サーバー アーキテクチャに従わない (「組み込み」) DBMS の例:

  • SQLite (Android アプリはこれをよく使用します)
  • Apache Derby (クライアント/サーバー DBMS としても使用可能)
  • HSQLDB (クライアント/サーバー DBMS としても使用可能)
  • MS Access (クライアントにすることもできますが、データベース サーバーとして実装するのは本当に骨の折れる作業であり、悲しみと涙の源であり、大規模なプロジェクトにはあまり効果的ではありません)

だから、あなたのリストを取ります:

  • DBMS はデータベース サーバー機能を提供します

    必須ではありません: DBMS は組み込みモードで動作できます (アプリケーションはデータベースに排他的にアクセスでき、DBMS はアプリケーションに組み込まれています)。

  • DBMS にはサーバー コンポーネントとクライアントがあります。

    必ずしもそうとは限りません: サーバーがなく、データベースにアクセスできるアプリだけが存在する組み込み DBMS があります。

  • DBMS = データベース サーバー ソフトウェア

    必ずではないが頻繁に

  • DBMS はサーバー/クライアント アーキテクチャで動作します

    必ずしもそうではない


あなたの特定の質問 (「データベース サーバー ソフトウェアと DBMS の違い」) について...まあ、多くの DBMSデータベース サーバーです。DBMS は、データの保存と管理を担当するソフトウェアの一部として、"ユーザー" (人間またはアプリ) がデータにアクセスする特定の方法を処理する責任もあります。組み込み DBMS を使用する場合、サーバーはありません。データは、DBMS が組み込まれているアプリのみがアクセスできるファイルに格納することも、(場合によっては) アプリと同じファイルに格納することもできます。より一般的なクライアント/サーバー アーキテクチャにはいくつかの特徴があります (特定のニーズに応じて、利点または障害になる可能性があります)。

  • データは、DBMS のサーバー コンポーネントによって管理されるファイルに格納されます。
  • DBMS にはクライアント コンポーネントがあり、ユーザーによるデータのアクセスと操作を担当します。
  • サーバー部分は、データへのアクセスと操作のためのセキュリティ対策 (許可など) を実装することもできます。
  • クライアントは、DBMS の特定のツール (たとえば、MySQL にはサーバー コンポーネントとコマンドライン クライアントがあります)、別のプログラム (たとえば、MySQL サーバーに直接接続できる MySQL Workbench)、または次の目的で使用できるライブラリです。アプリをサーバーに接続します (たとえば、MySQL コネクタ/J は、Java プログラムが MySQL サーバーにアクセスするために使用できる Java ライブラリです)。
  • クライアント サーバー アーキテクチャにより、1 人以上のユーザーがアクセスできるデータベースを作成できます。各ユーザーは特定の権限を持っています。

... 等々

于 2014-11-13T00:46:41.223 に答える