MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

SQLのビューとマテリアライズドビューの違い


データベースの主要な構成要素はそのテーブルであることがわかっているので、データのアクセシビリティをカスタム化するために、ビューの概念があります。言い換えると、テーブルのビューの助けを借りて、すべてのユーザーがそのデータのみにアクセスするように制限できると言えます。彼がアクセスすることになっています。ビューの特性と機能に基づいて、ビューとマテリアライズドビューを区別できるようになりました。

ビューとマテリアライズドビューの重要な違いは次のとおりです。

Sr。いいえ。 キー ビュー マテリアライズドビュー
1 定義 技術的には、テーブルのビューは「クエリの選択」によって作成されたテーブルの論理仮想コピーですが、結果はディスクのどこにも保存されず、データが必要なときにクエリを実行する必要があるたびに、常に次のようになります。元のテーブルからの更新されたデータまたは最新のデータ。 一方、マテリアライズドビューは、selectクエリによって駆動されるデータの論理仮想コピーでもありますが、クエリの結果はテーブルまたはディスクに保存されます。
2 ストレージ ビューでは、クエリ式の結果のタプルはディスクに保存されません。クエリ式のみがディスクに保存されます。 一方、マテリアライズドビューの場合、クエリ式とクエリの結果のタプルの両方がディスクに保存されます。
3 クエリの実行 上記のように、ビューの場合、クエリ式は結果ではなくディスクに保存されるため、ユーザーがデータをフェッチしようとするたびにクエリ式が実行され、ユーザーは毎回最新の更新値を取得します。 一方、マテリアライズドビューの場合、クエリの結果はディスクに保存されるため、ユーザーがデータをフェッチしようとするたびにクエリ式が実行されないため、ユーザーは最新の更新値を取得できません。データベースで変更された場合。
4 費用対効果 ビューにはストレージコストが関連付けられていないため、更新コストも関連付けられていません。 一方、マテリアライズドビューにはストレージコストが関連付けられているため、更新コストも関連付けられています。
5 デザイン SQLのビューは、ビューを定義するSQL標準があるため、固定アーキテクチャアプローチで設計されています。 一方、SQLのマテリアライズドビューの場合、汎用アーキテクチャアプローチで設計されているため、SQL標準を定義することはできず、その機能は一部のデータベースシステムによって拡張機能として提供されます。
6 使用法 ビューは通常、データへのアクセス頻度が低く、テーブル内のデータが頻繁に更新される場合に使用されます。 一方、マテリアライズドビューは、データに頻繁にアクセスする必要があり、テーブル内のデータが頻繁に更新されない場合に使用されます。

  1. SQLのALTERコマンドとUPDATEコマンドの違い

    この投稿では、SQLのALTERコマンドとUPDATEコマンドの違いを理解します。 ALTERコマンド このコマンドはデータ定義言語(DDL)です。 データレベルではなく、構造レベルで操作を実行します。 このコマンドは、データベース内のテーブルの属性を追加、削除、および変更するために使用されます。 このコマンドは、デフォルトで、タプル内のすべての値の値をNULLに初期化します。 テーブルの構造を変更します。 構文:列を追加- ALTER TABLE table_name ADD column_name datatype; 列をドロップ ALTER TABL

  2. SQLの内部結合と外部結合の違い

    この投稿では、SQLの内部結合と外部結合の違いを理解します。 内部参加 使用される句は「INNERJOIN」と「JOIN」です。 2つ以上のテーブルの結合されたタプルを返します。 共通の属性がない場合、結果は空になります。 タプルの数が多い場合、「INNER JOIN」は、「OUTERJOIN」と比較してすばやく機能します。 特定の属性に関する詳細情報が必要な場合に使用されます。 「JOIN」と「INNERJOIN」は同じように機能します。 構文 SELECT * FROM table_1 INNER JOIN / JOIN table_2 ON tab