章XIII、大規模なデータベーススキーマ
要約:
1、分散データベース技術を理解します
2、並列データベース技術を理解します
3、クラウドデータベース技術を理解します
4、XMLデータベース・テクノロジーを理解します
第分散データベース
分散データベース・システムの概要1.1
分散データベース・システムと分散データベースとの間の差:
分散データベースシステム - 複数のサイトに分散保存されたデータは、各サイトは、データや他の独立したDBMSのサイトを管理します。物理的には、論理的に集中データベースシステムを分散させました。
分散データベース - 分散データベース・システム内の各サイトの論理データベースのコレクション。
1.2、分散データベース及びデータ配信戦略目標
分散データベースのターゲット:
12ゴール:
地方自治、非集中管理、高可用性。(基本特性)
場所の独立性、データスライスの独立性、データ複製独立。(ディストリビューション透明度)
分散クエリ、トランザクション管理。(複雑さ)
ハードウェアの独立性、オペレーティングシステムの独立性、ネットワークの独立性、
データベース管理システムの独立性。
データ配信戦略:
データスライスおよびデータ配信考慮事項
データスライス(リレーショナル操作)
グローバル関係の複数のセグメントに分割するために特定のルールに従います。
四つの基本的な方法:
水平フラグメンテーション-各スライスは、データの全ての行の間の元の関係のサブセットです。
垂直スライス-各スライスは、全ての列の間の関係の生データのサブセットです。
輸出スライス-フラグメンテーションの輸出水準。
断片を混合- 3以上を混合。
水平方向の分裂
例:フィールドシカゴに格納されたデータのスライスで同じ都市からの従業員。クエリの相当数は、ローカルクエリです
垂直パーティショニング
ID、名前。
データ配信(スライシング操作の結果)
生成された断片の断片は、ストレージを割り当て、様々な会場で。ソリューションデータ配信:
集中 -すべてのデータセグメントは、会場に配置されました。
スプリット- -すべてのグローバルデータと一つだけは、割り当てられたフラグメント上の特定の部位に分割されています。
フルコピースタイルは -グローバルデータの複数のコピーが存在し、各サイト上のデータの完全なコピーがあります。
ハイブリッド -複製分割とフルの間に介在します。
1.3、分散データベース・システムのアーキテクチャ
流通の透明性
透明性の断片化。あなたは、ユーザデータ片を考慮する必要があります。
位置透過性。位置のみを考慮せずにケースデータスライス、データスライスを検討し、ユーザーのニーズ。
半透明のデータモデル。ユーザーは、グローバルデータの断片化の状況を理解するだけでなく、フラグメントと場所の割り当ての複製コピーを理解することが必要です。
1.4、分散データベース・テクノロジー
分散問合せ
ユーザー・インタフェースおよび分散いくつかの図書館システム。考慮すべき分散クエリオプティマイザ:
①動作シーケンスを行いました。
②アルゴリズム動作の実行(操作及び連結操作)。
③異なるサイト間でのデータの流れのために。
分散トランザクション管理
含みます:
①コントロールを取り戻します
2フェーズコミットプロトコルに基づきます。
②同時実行制御
ロッキング・プロトコルに基づきます。
セクションII並列データベース
2.1、並列データベースの概要
並列データベースシステム -パラレル操作により各種データを達成するために、そのようなデータのロード、索引付け、データクエリなどは、システム性能を向上させることができます。
利点:強化された可用性:ストレージスペースシステムの関係がクラッシュすると、あなたが他のサイトに保存されたコピーを使用し続けることができます。
2.2、並列データベースシステム構成
3つの並列DBMSは、ハードウェア構成を実装しました:
(1)共有メモリシステム(共有メモリ)
(2)共有ディスク・システム(共有ディスク)
(3)非共有システムリソース(共有ナッシング)
(4)階層(階層型)
(1)共有メモリシステム。
CPUのネットワーク接続を介して通信する複数の、共通メインメモリへのアクセス。
紛争が生じCPU、メモリの増加、と。
(2)ディスクシステムを共有しました:
それぞれが独自のプライベートメモリ、CPU、ネットワークを介して接続されているすべてのディスクに直接アクセスしています。
ネットワークデータは、通信コストの増加、CPU間で交換します。
超並列データベースシステムの最適構成
(3)非共有システムリソース:
それぞれが独自のCPUメモリとディスク容量を持って、共通領域が存在しない、すべての通信は、CPU間のネットワーク接続を介して行われます。
通信コスト、非ローカルディスクアクセスの高コストがあります。
(4)階層:
最初の3つのシステムと組み合わせます。二層に分け、上部層は下部層は、共有メモリまたは共有ディスク構造であり、全く共有構造ではありません。
これらの3つの構造の長所と短所を統合しました。
2.3、およびパラレルデータパーティションアルゴリズム
一次元データを分割し、水平方向の複数のディスクに分割大規模なデータセットを効果的に同時読み出してマルチディスクI / O帯域幅で利用することができます:。
(1)ラウンドロビン - がある場合、N CPU、i番目のI N MOD法は、回転分割法と呼ばれる最初の記録処理に分割されます。
(2)ハッシュ方法 - 選択性、異なるプロセッサへの記録に適用される特定のハッシュ関数を用いて。
(3)線引き方法 - レコードをソートするために最初に、次に分割された領域であるn個のコードに分類、記録領域のそれぞれは、プロセッサ、Iに位置しているi番目の領域のレコードのほぼ同じ数を含有していました。
長所と短所:
(1)メソッドは、記録部、ハッシング、およびより好ましくは範囲にアクセスする必要がある場合、全体の関係にアクセスする必要の処理効果的に適用回転クエリとすることができます。
(2)方法は、異なる多数のレコードは、異なるフラグメントを含有し、すなわちデータスキューの範囲を引き起こす可能性があります。データスキュー缶の原因のパフォーマンスのボトルネックがデータ処理の大きなスライス。
(3)の利点をハッシュされる:データが増加または時間とともに減少しても、均一な分布を維持することができます。
キューブ分割:
- CMD多次元部門
- BERD多次元部門
- MAGIC多次元分割方式。
2.3.1、並列アルゴリズム。
(1)並列ソート。
A。全ての記録ゾーニングの法律最初の関係、さらに再分配ソート。
B.それに割り当てられたレコードのソートを使用してソートアルゴリズム各CPU。各プロセッサは、そのすべてのレコードの順序付けられたシーケンスを取得するために割り当てられています。
C.は、領域分割処理装置にアクセスすることによって、対応するために、完全な順序付け関係を得ました。
例:employee按属性salary排序 ,salary的取值范围从10~210,处理机数目20
10~20的所有记录分布于处理机1
21~30…………………………… 2
……
……
200~210…………………………20
問題:どのようにほぼ等しい各分散プロセッサ・レコードのような領域分割数です。そうでない場合、プロセッサは、このように並列ソートのスケーラビリティを制限し、パフォーマンスのボトルネックを作成するために、多数のレコードをソートするために持ちます。
(2)が並列に接続されました:
前提:AとBとの間の関係を分割した場合、年齢の接続特性は、初期の関係がなく、接続プロパティの分布に、複数のディスクに分散。
方法:k個の領域に年齢の接続プロパティの値:AとBとの間の関係を再描画
例:假设10个处理机,age取值范围0~100
记录按照相应的age值进行分布
0<=age<1 处理机1 10<=age<20 处理机2
……
……
90<=age<100 处理机10
缺点:产生由对数据偏斜不同分片的记录数目差别很大
データベーススキーマを計算するセクションIII雲。
3.1、クラウドコンピューティングの概要
クラウドコンピューティングは、ビジネスコンピューティングのためのモデルです。これは、コンピューティングパワーに必要なストレージスペースや情報サービスを取得することができ、さまざまなアプリケーションシステムからなるコンピュータのリソースプールの多くのコンピューティングタスクを分散しました。
クラウドコンピューティングサービスの種類
1、IaaSの
サービスパッケージとしてユーザーに利用可能な基本的なハードウェアおよびその他のリソース
2、持っています
リソースの抽象化のさらなるレベル、ユーザ・アプリケーションの実行環境を提供します
3、SaaSの
より目標と、それはサービスとして、いくつかの特定のアプリケーションソフトウェアパッケージの機能となります
クラウド(雲):
ハードウェアとソフトウェアの施設のクラウド・コンピューティング、データセンター・プロバイダー。
雲はに分かれています。
パブリック・クラウド:公衆へすぐに行く道。
プライベートクラウド:非公開クラウド。
ハイブリッドクラウド
3.2、クラウドデータベースアーキテクチャ
クラウドデータベース(CloudDBは、クラウドライブラリと呼ばれる):+クラウドデータベースを。
現時点では、プラットフォームをクラウドコンピューティング:
AWS(Amazon Webサービス)
GAE(GoogleのAppEngineの)
Hadoopの
Googleのクラウドコンピューティングインフラストラクチャモード(4つのサブシステム)
、Googleのファイルシステムファイルシステム
マップ/削減分散プログラミング環境
チャビー分散ロック機構
BigTableの大規模分散データベース
3.3、クラウドデータベースと従来のデータベースの比較
クラウドデータベースの短所:
データセキュリティ上の問題
クラウドの管理
インターネットへの依存
セクションIV XMLデータベース
4.1、XMLデータベースの概要
XML、拡張マークアップ言語。拡張マークアップ言語。
XMLデータベース - ストアとクエリ操作にデータベース管理システムのためのXML文書フォーマットをサポート。
XMLデータベースの三種類:
XML対応のデータベース(XEDBは)) - XMLデータベースを扱うことができます。
ネイティブXMLデータベース(NXD)) - 純粋なXMLデータベース。
Hybird XMLデータベース(HXD) - 混合XMLデータベース。
従来のデータベース、XMLデータベースの利点と比較すると:
半構造化データを処理することができます。
ラベルと運用パスを提供します。
あなたはレベルの特徴データを明確にすることができます。
4.2、SQL Server 2008 与 XML
SQL Serverの文でXML:
XML FOR:XML形式は結果になる返されます。
例:
SELECT * FROM Table_cus
WHERE …. FOR XML RAW
SQL ServerのXMLデータ型:
フィールド・タイプXMLの
例:
CREATE TABLE T_info
(
cid int ,
Content xml
)
説明する例
1、Google的云数据库是一个分布式的结构化数据存储系统,称作( )。
答案:Bigtable
2、在分布式数据库中,使用( )模式来描述各片段到物理存放场地的映像。
答案:分配
3、在并行数据库中,有关系R(A, B)和S(A, C),需要将它们根据A属性拆分到不同的磁盘上。现有查询SELECT B FROM R, S WHERE R.A = S.A。下列拆分方式中最适合该查询的是( )
A.散列划分
B.轮转法
C.范围划分
D.列表划分
答案:A
4、关于分布式数据库,下列说法错误的是( )
A.分布式数据库系统的目标是利用多处理机结点并行地完成数据库任务,以提高数据库系统的整体性能
B.分布式数据库中位置透明性是指数据分片的分配位置对用户是透明的,使得用户在编程时只需考虑数据分片情况,而不用关心具体的分配情况
C.分布式数据库的事务管理包括恢复控制和并发控制,恢复控制一般采用的策略是基于两阶段的提交协议
D.分布式数据库的查询代价需要考虑站点间数据传输的通信代价,一般来说导致数据传输量大的主要原因是数据间的连接操作和并操作
答案:A
5、关于分布式数据库,下列说法错误的是( )
A.分布式数据库的查询代价需要考虑站点间数据传输的通信代价,一般来说导致数据传输量大的主要原因是数据间的连接操作和并操作
B.分布式数据库中位置透明性是指数据分片的分配位置对用户是透明的,使得用户在编程时只需考虑数据分片情况,而不用关心具体的分配情况
C.分布式数据库的事务管理包括恢复控制和并发控制,恢复控制一般采用的策略是基于两阶段的提交协议
D.分布式数据库系统的目标是利用多处理机结点并行地完成数据库任务,以提高数据库系统的整体性能
答案:D
6、在分布式数据库应用系统中,对全局关系进行分片设计时,下列说法正确的是( )
A.对于一个全局关系中的任意数据,不允许其不属于任何一个片段,也不允许某些数据同时属于不同的片段
B.对于一个全局关系中的任意数据,可以允许其不属于任何一个片段,也允许某些数据同时属于不同的片段
C.对于一个全局关系中的任意数据,不允许其不属于任何一个片段,但允许某些数据同时属于不同的片段
D.对于一个全局关系中的任意数据,对于一个全局关系,可以允许某些数据属于不同片段,但不允许某些数据同时属于不同的片段
答案:A
7、在分布式数据库的数据分配中,若所有全局数据有且只有一份,他们被分割成若干切片,每个片段被分配在一个特定场地上,则该策略属于( )
A.分割式
B.集中式
C.全复制式
D.混合式
答案:A
8、分布式数据库系统的“分片透明性”位于( )
A.全局概念模式与分片模式之间
B.分片模式与分配模式之间
C.全局模式与全局概念模式之间
D.分配模式与局部概念模式之间
答案:A
9、在云计算中,当云以即用即付的方式提供给公众的时候,我们称其为( )
A.公共云
B.私有云
C.共享云
D.混合云
答案:A