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

WBOY
リリース: 2023-08-25 16:49:23
転載
1436 人が閲覧しました

SQL 中视图和物化视图的区别

データベースの主なコンポーネントはテーブルであり、データにアクセスできるようにカスタマイズする場合には、ビューの概念があります。言い換えれば、テーブルのビューを通じて、ユーザーがアクセスすべきデータにのみアクセスするように制限できます。ここで、ビューの機能と特性に基づいて、 ビューとマテリアライズド ビューを区別できます。

この記事では、SQL におけるビューとマテリアライズド ビューの重要な違いについて説明します。ただし、その前に、ビューとマテリアライズド ビューの違いをよりよく理解するために、ビューとマテリアライズド ビューの基本を個別に見てみましょう。 .

SQL でのビュー

ビュー は、「select query」ステートメントを実行することによって作成されるテーブルの論理コピーおよび仮想コピーです。ビューはディスク上のどこにも保存されません。したがって、クエリは毎回、特定のデータが必要な場合に実行されますが、クエリ式はディスクに保存されます。

ビューには、ストレージ/更新コストがかかりません。ビューは特定のスキーマに従って設計されます。つまり、ビューを定義する SQL 標準が存在します。ビューは、データへのアクセスは頻繁ではないが、データを頻繁に更新する必要がある場合に使用されます。

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

マテリアライズド ビュー は、内容が計算されて保存されるビューです。マテリアライズド ビューも論理仮想テーブルですが、この場合、クエリの結果はテーブルまたはディスクに保存されます。パフォーマンスマテリアライズド ビューの方が通常のビューよりも優れています。これは、データがディスクに保存されているためです。

マテリアライズド ビューは、クエリの後に作成されるテーブルにインデックスが付けられ、より高速かつ効率的にアクセスできるため、「インデックス付きビュー」とも呼ばれる場合があります。マテリアライズド ビューは、データに頻繁にアクセスする必要があり、テーブル内のデータが頻繁に更新されない場合に使用されます。

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

次の表は、ビューとマテリアライズド ビューの重要な違いを示しています −

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

クエリ式は結果ではなくディスクに保存されるため、ユーザーがデータを抽出しようとするたびにクエリ式が実行され、ユーザーは毎回最新の更新値を取得します。 ######費用対効果######
######デザイン######
マテリアライズド ビューは、データに頻繁にアクセスする必要があり、テーブル内のデータが頻繁に更新されない場合に使用されます。 SQL では、ビュー (ビュー) とマテリアライズド ビュー (マテリアライズド ビュー) は大きく異なります。ビューは、データがほとんどアクセスされず、テーブル内のデータが頻繁に更新される場合に使用されます。逆に、データに頻繁にアクセスする必要があり、テーブル内のデータが頻繁に更新されない場合は、マテリアライズド ビューを使用します。

以上がSQL のビューとマテリアライズド ビューの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート