db_postgresql

PostgreSQL
“PostgreSQLはデータベース界のハンマーだ。誰もが理解していて、すぐ
に利用できて、頑丈で、力いっぱい振りかざせば多くの問題が解決でき
る。”
→ いろいろな振りかざし方が紹介されているので、振りかざしてみた。
PostgreSQL
1日目
• CRUD (テーブルをつくり、レコードを追加・読取・更新・削除)
• ユニーク制約や外部キー制約
• 結合や内部結合
• インデックスで高速検索
2日目
• 集約関数・グループ化・ウインドウ関数
• トランザクション
CREATE TRIGGER
• ストアードプロシージャ
• トリガ
• ビューとルール
• クロス集計
3日目
• 曖昧検索
• 正規表現・レーベンシュタイン・トリグラム
• 自然言語処理・メタフォン
• 多次元ベクトル
PostgreSQLの強み
• “利用実績、柔軟なクエリ、高い整合性と永続性。”
• 結合の柔軟性(結合、フィルタ、ビュー、インデックス)
• データは均質的で、構造化されたスキーマを守る必要
• 強力なスキーマ制約の仕組み
弱み
• 複数台のデータストアに分割(スケールアウト)したい状況
• データ要求が柔軟すぎてRDBの図式に合わない場合