~ 複雑な検索・集計・分析を、短時間に処理するための先進機能 ~
Vol3では、クエリのパラレル処理、高速化されたソーティングなど、複雑な検索・集計・分析を短時間で終わらせることができる先進機能や、効率的な分散処理を行うための設計上の考慮ポイントなどについて解説します。
■データレコードのハッシュ分散■
Greenplumが、データをどのように分散配置しているのかを説明します。図14は、Greenplumがデータをどのように格納しているのかを表しています。
Greenplumはデータレコードをハッシュ分散させて格納しています。ハッシュキーの定義は、テーブル作成時に、CREATE TABLE文の後ろに、DISTRIBUTED BYを追加、そしてカラムを指定して行います。
このカラムを指定することによって、このカラムに入っているデータをハッシュ値として、データを分散させていきます。
マスタサーバ上でこのCREATE TABLE文を実行すると、各セグメントサーバに対して分散ポリシーが伝えられます。その後のデータ配置の分散は、セグメントサーバが自ら実行していきます。
Greenplumでは、このハッシュ値として指定する分散キー、DISTRIBUTED BYで指定するカラムが非常に重要なポイントになります。例えばこのカラムが、男か女かという二つの値しか持たないようなカラムだった場合、セグメントサーバが3台あったとしても、データレコードは2台にしか行きません。従って、このDISTRIBUTED BYで選ぶカラムは、なるべく一意の値を持つプライマリ・キーなどのカラムを選ぶことが重要です。仮にプライマリ・キーが無い、あるいはユニークキーが無いという場合にも、なるべく一意なデータが持つようなカラムを使います。この分散用のカラムは、複数のカラムを組み合わせることも可能です。
続きはこちらから (»リンク)
EMCジャパンのTech Communityサイト (»リンク) では、ストレージや情報管理に関する最新技術を多数紹介しています。
企業ブログ
-
【EMC Tech Communityサイト】事例紹介 Vol.62 | グローバル・カンパニーにおけるパフォーマンスやストレージ使用率の向上とコスト削減を両立させる取り組み
アメリカのオハイオ州Olmstedに本社を置き、アメリカ、カナダ、メキシコ、中央アメ...
2012-10-31

