logo

データベース


データとは何ですか?

データは、明確な小さな情報単位の集合です。テキスト、数値、メディア、バイトなどのさまざまな形式で使用でき、紙や電子メモリなどに保存できます。

「データ」という言葉は、「単一の情報」を意味する「データム」という言葉に由来しています。これは datum という単語の複数形です。

コンピューティングにおいて、データは、効率的な移動と処理のための形式に変換できる情報です。データは交換可能です。

データベースとは何ですか?

データベース は、簡単にアクセスして管理できるように、整理されたデータのコレクションです。

データを表、行、列に整理し、インデックスを付けると、関連情報を見つけやすくなります。

データベースハンドラー 1 セットのソフトウェア プログラムだけですべてのユーザーがデータにアクセスできるようにデータベースを作成します。

主目的 データベースの役割は、データを保存、検索、管理することによって大量の情報を操作することです。

沢山あります 動的なウェブサイト 現在の World Wide Web では、データベースを通じて処理されます。たとえば、ホテルの部屋の空き状況を確認するモデルです。データベースを使用した動的Webサイトの例です。

沢山あります 利用可能なデータベース MySQL、Sybase、Oracle、MongoDB、Informix、PostgreSQL、SQL Server など。

最新のデータベースはデータベース管理システム (DBMS) によって管理されます。

SQL または構造化クエリ言語は、データベースに保存されているデータを操作するために使用されます。 SQL はリレーショナル代数とタプル リレーショナル計算に依存します。

データベースのイメージを表示するために円筒構造が使用されます。

データベース

データベースの進化

データベースは、フラット ファイル システムからリレーショナル システムおよびオブジェクト リレーショナル システムへの 50 年以上にわたる進化の旅を終えました。それは数世代を経てきました。

進化

ファイルベース

1968 年はファイルベースのデータベースが導入された年です。ファイルベースのデータベースでは、データはフラット ファイルに保持されていました。ファイルには多くの利点がありますが、いくつかの制限があります。

主な利点の 1 つは、ファイル システムがシーケンシャル、インデックス付き、ランダムなどのさまざまなアクセス方法を備えていることです。

COBOL、BASIC などの第 3 世代言語による広範なプログラミングが必要です。

階層型データモデル

1968 年から 1980 年は階層型データベースの時代でした。著名な階層データベース モデルは、IBM の最初の DBMS でした。それはIMS(情報管理システム)と呼ばれていました。

このモデルでは、ファイルは親/子形式で関連付けられます。

以下の図は階層データ モデルを表しています。小さな円はオブジェクトを表します。

UDPプロトコル
データベース2

ファイル システムと同様に、このモデルにも、複雑な実装、構造的な独立性の欠如、多対多の関係を簡単に処理できないなど、いくつかの制限がありました。

ネットワークデータモデル

チャールズ・バックマン ハネウェルで統合データ ストア (IDS) と呼ばれる最初の DBMS を開発しました。 1960 年代初頭に開発されましたが、1971 年に CODASYL グループ (データ システム言語会議) によって標準化されました。

このモデルでは、一般的なネットワーク モデルと同様に、ファイルは所有者とメンバーとして関連付けられます。

ネットワーク データ モデルでは、次のコンポーネントが特定されました。

  • ネットワークスキーマ(データベース構成)
  • サブスキーマ (ユーザーごとのデータベースのビュー)
  • データ管理言語 (手続き型)

このモデルには、システムの複雑さや設計と保守の難しさなど、いくつかの制限もありました。

リレーショナルデータベース

1970年 - 現在: 今はリレーショナル データベースとデータベース管理の時代です。 1970 年に、関係モデルは E.F. コッドによって提案されました。

リレーショナル データベース モデルには、インスタンスとスキーマと呼ばれる 2 つの主要な用語があります。

インスタンスは行または列を含むテーブルです

スキーマは、リレーションの名前、各列の型、名前などの構造を指定します。

このモデルは、集合論や述語論理などの数学的概念を使用します。

最初のインターネット データベース アプリケーションは 1995 年に作成されました。

slf4j と log4j

リレーショナル データベースの時代には、オブジェクト指向モデル、オブジェクト リレーショナル モデルなど、さらに多くのモデルが導入されました。

クラウドデータベース

クラウド データベースを使用すると、クラウド プラットフォーム経由で構造化データと非構造化データを簡単に保存、管理、取得できます。このデータはインターネット経由でアクセスできます。クラウド データベースはマネージド サービスとして提供されるため、サービスとしてのデータベース (DBaaS) とも呼ばれます。

最適なクラウド オプションは次のとおりです。

  • AWS (アマゾン ウェブ サービス)
  • スノーフレーク コンピューティング
  • オラクルデータベースクラウドサービス
  • Microsoft SQLサーバー
  • Googleクラウドスパナ

クラウドデータベースのメリット

コストの削減

通常、企業プロバイダーはデータベースに投資する必要はありません。 1 つ以上のデータセンターを保守およびサポートできます。

自動化

クラウド データベースは、リカバリ、フェイルオーバー、自動スケーリングなどのさまざまな自動プロセスで強化されています。

アクセシビリティの向上

いつでもどこからでもクラウドベースのデータベースにアクセスできます。必要なのはインターネット接続だけです。

NoSQLデータベース

NoSQL データベースは、さまざまなデータ モデルに対応できるデータベースを設計するためのアプローチです。 NoSQL は「SQL だけではない」の略です。これは、データがテーブルに配置され、データベースの構築前にデータ スキーマが完全に設計される従来のリレーショナル データベースに代わるものです。

NoSQL データベースは、大規模な分散データのセットに役立ちます。

NoSQL データベース システムとそのカテゴリの例は次のとおりです。

  • MongoDB、CouchDB、Cloudant (文書ベース)
  • Memcached、Redis、Coherence (キーと値のストア)
  • HBase、ビッグテーブル、累積 (表形式)

NoSQLの利点

高い拡張性

NoSQL はスケーラビリティにより大量のデータを処理できます。データが増大すると、NoSQL データベースはそのデータを効率的な方法で処理できるように拡張します。

高可用性

NoSQL は自動レプリケーションをサポートしています。自動レプリケーションにより、障害が発生した場合でもデータが以前の一貫した状態に複製されるため、可用性が高くなります。

NoSQLのデメリット

オープンソース

NoSQL はオープンソース データベースであるため、NoSQL の信頼できる標準はまだありません。

経営上の課題

postgresqlで列を削除する方法

NoSQL でのデータ管理は、リレーショナル データベースよりもはるかに複雑です。インストールするのは非常に難しく、毎日の管理はさらに多忙です。

GUIは利用できません

NoSQL データベース用の GUI ツールは市場では簡単に入手できません。

バックアップ

バックアップは NoSQL データベースの大きな弱点です。 MongoDB などの一部のデータベースには、データ バックアップのための強力なアプローチがありません。

オブジェクト指向データベース

オブジェクト指向データベースには、オブジェクトとクラスの形式でデータが含まれます。オブジェクトは現実世界の実体であり、型はオブジェクトのコレクションです。オブジェクト指向データベースは、リレーショナル モデルの機能とオブジェクト指向の原則を組み合わせたものです。これは、リレーショナル モデルの代替実装です。

オブジェクト指向データベースには、オブジェクト指向プログラミングのルールが保持されています。オブジェクト指向データベース管理システムはハイブリッド アプリケーションです。

オブジェクト指向データベース モデルには次のプロパティが含まれています。

オブジェクト指向プログラミングのプロパティ

  • オブジェクト
  • クラス
  • 継承
  • ポリモーフィズム
  • カプセル化

リレーショナルデータベースのプロパティ

  • 原子性
  • 一貫性
  • 誠実さ
  • 耐久性
  • 同時実行性
  • クエリ処理

グラフデータベース

グラフ データベースは NoSQL データベースです。データをグラフで表現したものです。ノードとエッジが含まれます。ノードはエンティティを表し、各エッジは 2 つのエッジ間の関係を表します。グラフ データベース内のすべてのノードは一意の識別子を表します。

Java マップ

グラフ データベースは、関連するデータ間の関係を強調表示するため、データ間の関係を検索するのに役立ちます。

データベース3

グラフ データベースは、データベースに複雑な関係や動的スキーマが含まれている場合に非常に役立ちます。

主に使用されるのは、 サプライチェーンマネジメント 、ソースを特定する IP電話

DBMS(データベース管理システム)

データベース管理システムは、データベースを保存および取得するために使用されるソフトウェアです。たとえば、Oracle、MySQL など。これらは人気のある DBMS ツールの一部です。

  • DBMS は、作成、削除、変更などのさまざまな操作を実行するためのインターフェイスを提供します。
  • DBMS を使用すると、ユーザーは要件に応じてデータベースを作成できます。
  • DBMS はアプリケーションからのリクエストを受け入れ、オペレーティング システムを通じて特定のデータを提供します。
  • DBMS には、ユーザーの指示に従って動作するプログラム群が含まれています。
  • データベースにセキュリティを提供します。

DBMSのメリット

冗長性の制御

すべてのデータを単一のデータベース ファイルに保存するため、データの冗長性を制御できます。

データ共有

許可されたユーザーは、複数のユーザー間でデータを共有できます。

バックアップ

バックアップおよび回復サブシステムを提供します。この復旧システムは、システム障害から自動的にデータを作成し、必要に応じてデータを復元します。

複数のユーザーインターフェース

GUI、アプリケーション インターフェイスなど、さまざまなタイプのユーザー インターフェイスを提供します。

DBMSのデメリット

サイズ

効率的に実行するには、大きなディスク領域と大きなメモリを占有します。

料金

DBMS ソフトウェアを実行するには高速データ プロセッサと大容量のメモリが必要なため、コストがかかります。

複雑

DBMS はさらに複雑さと要件を生み出します。

RDBMS (リレーショナル データベース管理システム)

RDBMS という言葉は、「リレーショナル データベース管理システム」と呼ばれます。これは、行と列を含むテーブルとして表されます。

RDBMS はリレーショナル モデルに基づいています。 E.F.コッドによって導入されました。

リレーショナル データベースには次のコンポーネントが含まれています。

  • テーブル
  • レコード/タプル
  • フィールド/列名/属性
  • 実例
  • スキーマ
  • キー

RDBMS は、データのセキュリティ、完全性、正確性、一貫性を維持する表形式の DBMS です。