Symfoware Parallel Server 概説書 |
目次
索引
![]() ![]() |
第2章 Symfoware Parallel Serverのアーキテクチャ | > 2.2 Symfoware Parallel Serverのアーキテクチャ |
ここでは、Symfoware Parallel Serverのデータ操作の並列処理アーキテクチャについて、説明します。
検索処理を高速にするためには、並列処理に適したデータの均等格納が必要になります。Symfoware Parallel Serverでは、データをディスクに均等に格納するオートマティック・データ・バランシング機構により、ディスク上に自動的にデータを均等格納します。
これにより、データベースから読み込むデータ量の均等化が図られ、均等化されていない場合と比べ、より短い時間でデータベースのレコードを読むことができます。
オートマティック・データ・バランシングの機構について、“図:オートマティック・データ・バランシングの機構”に示します。
複数のCPUを使用した並列処理では、処理時間の最も長いCPUが全体の処理時間を決定してしまいます。これを解決するため、各CPUが扱うデータ量を調整し、特定のCPUに負荷が偏らないように負荷の均等化を自動的に行います。これをダイナミック・ロード・バランシング機構と呼びます。
ダイナミック・ロード・バランシングの機構について、“図:ダイナミック・ロード・バランシングの機構”に示します。
例えば、3つのディスクに格納された300万件のデータから条件に合う120万件のデータを3つのCPUでSORT処理する場合を想定します。
SCAN処理の結果、各並列単位に出力されるレコード件数は、10万件、80万件、30万件とバラバラです。ここで、次のSORT処理に渡す時に、処理をつなぐパイプラインで各レコード件数を40万件(対象全データ件数/CPU数)で均等にします。これにより、処理を行うレコード件数が均等になり、処理時間も均等になります。
セントラルデータウェアハウスでは、大量データの検索処理が処理時間の大半を占めます。Symfoware Parallel Serverでは、検索処理のフェーズ(SCAN、JOIN、集計、SORT)をすべて並列化することにより、検索処理時間を大幅に短縮します。さらに、各フェーズ間の処理をつなぐパイプラインも並列にしています。これをフルフェーズ・パラレル機構と呼びます。これにより、処理を後続のフェーズに次々に振り分けて開始させることが可能となり、フルフェーズ・パラレル機構を使用しない場合よりも短い時間で処理を完了させることができます。このように、そのシステムが持つハードウェア性能を最大限に利用して、処理の高速化を図ります。
フルフェーズ・パラレルの機構について、“図:フルフェーズ・パラレルの機構”に示します。この例は、1週間の売上げを商品ごとに累計する場合を示しています。
目次
索引
![]() ![]() |