Greenplumにおけるテーブルストレージモデルの選択と実装

背景 Greenplumデータベースは行指向および列指向のストレージモデルをサポートしており、さらにヒープテーブルと追記最適化(AO)テーブルを提供します。これらのストレージオプションの違いと選択基準、ならびに圧縮機能、データ分散戦略の変更方法について解説します。 ヒープテーブルとAOテーブル 基本原理 ヒープテーブル ヒープテーブルはPostgreSQLのストレージモ ...

7月27日 00:53 投稿

GreenplumにおけるHeapテーブルとAOテーブルの基本概念と実装

基本概念 Heapテーブル PostgreSQLのネイティブストレージ形式で、データ行は挿入順にページに格納されます。更新/削除操作は元の位置にマーキングされ、MVCCによる旧バージョンはその場に残り、VACUUM処理で後回収されます。 AOテーブル(Append-Optimized) Greenplum固有の追記専用フォーマットで、更新時に元行を削除マークし、新行をファイル末尾に追記します。スト ...

7月25日 03:13 投稿

Greenplum 6.11.2 クラスタ構築ガイド

1. 環境とリソースの計画 1.1 環境仕様 項目内容 OSバージョンLinux 3.10.0-1127.el7.x86_64 ハードウェア構成4コアCPU / 8GBメモリ / 40GBデータディスク Greenplumバージョンgreenplum-db-6.11.2 1.2 ノード構成 ホスト名IPアドレスロール mdw172.16.104.11Master sdw1172.16.104.12Segment (seg1, seg2), Mirror ...

7月7日 18:57 投稿

Greenplumにおける実行計画の生成と解釈

クエリ分析の基礎 GreenplumはPostgreSQLを基盤として開発されたため、実行計画の多くはPostgreSQLと共通しています。しかし、Greenplumは分散並列データベースであるため、SQL実行において多くのMPP(Massively Parallel Processing)の特徴が見られます。そのため、Greenplumの実行計画を理解する際には、その分散アーキテクチャを深く理解することが重要です。適切な実 ...

6月30日 19:42 投稿

Greenplumにおけるテーブル格納方式の設計指針

1. 格納方式の概要 Greenplumでは「行方向/列方向」と「ヒープ/Append-Only(AO)」の2軸でテーブルを設計できる。用途に応じて最適な組み合わせを選ぶことで、更新頻度、読み取りパターン、圧縮率、バックアップ戦略などを最適化できる。 2. ヒープ vs AO 2.1 動作原理 ヒープ:PostgreSQL と同じ MVCC ヒープ。UPDATE/DELETE が頻繁な OLTP 向き。WAL(REDO)によ ...

6月28日 18:02 投稿

分散キーの設定と確認方法

分散キーの設定基準: Greenplumではデータを均等に分散させるために分散キーを使用します。したがって、適切な分散キーを選択することが非常に重要です。 基準: (1)データの分布が均等でNULL値が少ないカラムを分散キーとして選択することが望ましい(主キーは分散キーに最適)。もし主キーが分散キーでない場合、システムは自動的に主キーを分散キーに変更します。 ( ...

6月20日 00:39 投稿

Greenplum 6.5.0におけるGPCCのインストールと設定

GPCC概要 GPCC(Greenplum Command Center)はGreenplumデータベースの監視ツールで、システムリソースのモニタリングやSQL実行状況の確認が可能です。 バージョン互換性の確認 GPCCのインストールではバージョン互換性が重要です。以下の公式ドキュメントで対応バージョンを確認してください: GPCC公式インストールガイド: https://gpcc.docs.pivotal.io/610/topics/in ...

6月13日 19:33 投稿

Greenplumにおけるロールと権限管理の実践

Greenplumにおける権限管理の概要 Greenplumでは、ロール(Role)に基づく権限管理システムが採用されており、ユーザー管理とグループ管理を統一的に扱うことができます。データベース、スキーマ、テーブル、関数など、各オブジェクトに対するアクセス権を細粒度で制御することが可能です。 基本概念と構造 データベース内に複数のスキーマが存在可能 各テーブル、ビュー ...

6月8日 18:49 投稿

Greenplum での拡張プラグインの追加と管理

概要 Greenplum Database(GPDB)は PostgreSQL をベースとしており、多くの PostgreSQL 拡張機能との互換性があります。これにより、pg_trgm(類似度検索)、zhparser(中国語全文検索)、fuzzystrmatch(文字列距離計算)、roaringbitmap(ビットマップ演算)などの有用な拡張を活用できます。本記事では、Greenplum クラスタに拡張プラグインを導入・管理する手順を解説 ...

5月31日 00:07 投稿

Greenplumデータベースのバックアップ戦略:gpbackup/gprestoreとpg_dumpの詳細比較

概要 Greenplumデータベース環境では、大規模データの効率的な保護のために、専用のバックアップツールが提供されています。本記事では、並列処理に特化したgpbackup/gprestoreと、PostgreSQL互換のpg_dump/pg_restoreの機能差異、使用シナリオ、実践的な運用手法について解説します。 gpbackup/gprestoreによる並列バックアップアーキテクチャ gpbackupはGreenplumクラ ...

5月18日 16:47 投稿