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

マテリアライズド・ビューのタイプは何ですか?


マテリアライズド・ビュー作成ステートメントのSELECT節は、マテリアライズド・ビューに含まれるデータを表します。定義できるものを制限するいくつかの制限と、複数のテーブルを結合できます。ビュー、インラインビュー(SELECTステートメントのFROM句のサブクエリ)、サブクエリ、およびマテリアライズドビューを含むいくつかの要素があり、これらはすべてSELECT句で結合または代入できます。

マテリアライズドビューにはさまざまな種類があります-

集計を使用したマテリアライズドビュー −データウェアハウスでは、マテリアライズドビューには通常集計が含まれます。迅速な更新を可能にするには、SELECTリストにすべてのGROUP BY列(存在する場合)が含まれている必要があり、一部の集計列にCOUNT(*)とCOUNT(列)が存在する必要があります。

マテリアライズド・ビューのログは、マテリアライズド・ビューを表すクエリで参照されるすべてのテーブルに存在する必要があります。真の集計関数はSUM、COUNT(x)、COUNT(*)、AVG、VARIANCE、STDDEV、MIN、およびMAXであり、集計される解釈はSQL値の式にすることができます。

結合のみを含むマテリアライズドビュー −一部のマテリアライズド・ビューには、結合のみが含まれ、販売テーブルを時間および顧客テーブルに結合するマテリアライズド・ビューが生成される集計は含まれません。このタイプのマテリアライズド・ビューを作成する利点は、高価な結合が事前に計算されることです。

結合のみを含むマテリアライズドビューのクイック更新は、任意のタイプのDMLの後にベーステーブル(ダイレクトパスまたは従来のINSERT、UPDATE、またはDELETE)に適用されます。結合のみを含むマテリアライズド・ビューは、ONCOMMITまたはONDEMANDで更新するように表現できます。 ON COMMITの場合、リフレッシュは、マテリアライズド・ビューの分析テーブルでDMLを実行するトランザクションのコミット時に実装されます。

マテリアライズド・ビューに結合のみが含まれている場合、各テーブル(およびFROMリストに複数回表示されるテーブルの各例)のROWID列は、マテリアライズド・ビューのSELECTリストに存在する必要があります。

マテリアライズドビューのFROM句にリモートテーブルがある場合、FROM句のすべてのテーブルを同様のサイトに配置する必要があります。さらに、ON COMMITリフレッシュは、リモート表を使用したマテリアライズド・ビューには提供されません。マテリアライズド・ビューのログは、マテリアライズド・ビューの各詳細テーブルのリモート・サイトに存在する必要があり、ROWID列は、マテリアライズド・ビューのSELECTリストに存在する必要があります。

ネストされたマテリアライズドビュー −ネストされたマテリアライズド・ビューは、説明が別のマテリアライズド・ビューにあるマテリアライズド・ビューです。ネストされたマテリアライズド・ビューは、マテリアライズド・ビューの参照など、データベース内のさまざまな関係を参照できます。

データウェアハウスでは、通常、単一の結合でいくつかの集計ビューを作成できます(たとえば、複数のディメンションに沿ったロールアップ)。基本的な結合を数回実装する必要があるため、これらの個別のマテリアライズド集約ビューを段階的にサポートするのに時間がかかる場合があります。


  1. JSTLタグの種類は何ですか?

    JSTLタグは、その機能に応じて、JSPページの作成時に使用できる次のJSTLタグライブラリグループに分類できます- コアタグ タグのフォーマット SQLタグ XMLタグ JSTL関数

  2. OSのカーネルとは何ですか?カーネルの種類は何ですか?

    すべてのオペレーティングシステム(Windows、Mac、Linux、Android)には、カーネルと呼ばれるコアプログラムがあります。 これは、システム全体の「ボス」として機能します。それがOSの心臓部です!カーネルは、他のすべてを制御するコンピュータプログラムに他なりません。コンピューターで発生することはすべてそれを通過します。この投稿では、OSのカーネルとは何か、およびさまざまな種類のカーネルについて説明します。 OSのカーネルとは OSのコアプログラムであることがわかったので、ブートローダーの後にロードされる最初のプログラムでもあることも知っておく必要があります。次に、ハードウェアと