« ALMはSW開発のERPと同義 | トップページ | 【告知】SEA関西ではOOA、関西IT勉強宴会はDOAの勉強会あります »

2011/12/11

PostgreSQLの再帰SQL

PostgreSQLでも再帰SQLが使えると聞いたのでメモ。

【元ネタ】
住友電気工業株式会社におけるオープンソースソフトウェアの積極的な導入 ? Let's Postgres

再帰SQL ? Let's Postgres

新しい業界標準「SQL99」詳細解説

再帰SQL | 最近、開発に縁が無くなってきた技術者のきねづか

再帰SQL: プログラマの思索

再帰SQL part2: プログラマの思索

OracleのPIVOT句: プログラマの思索

再帰SQLの使い道は、階層構造を持つテーブルやデータの検索。
よくある例は、ツリー構造にカテゴライズされた商品の検索や、製造業の生産管理システムで部品や品目を検索する時だろう。

この業務ロジックをアプリケーションで書くのは結構苦労する。
ストアドやSQLで複雑な業務ロジックを隠蔽化できるならば、アプリ側はストアドをコールするだけでいい。
そして、DBサーバー側でストアドを実行するので、業務処理の高速化も期待できる。

また、DBUnitを使えばストアドの単体テストにも使えるので、品質向上も見込める。
つまり、テストに必要なテストデータを準備すれば、DBUnitでストアドのテストを自動化することも可能だ。

SQLは色んな書き方があるので、知っておくと便利。
だが、最近のWebアプリ開発では、DBサーバーがボトルネックになる時が多く、DBサーバーのスケールアップに難があるため、アプリケーションサーバーのスケールアップを利用して、DBを単なるデータの格納庫で設計するやり方も見かけるようになった。

KVSのような脱RDB、Hadoopなどの新技術と今後のDOAの進化については、アーキテクチャ設計も絡めてもう一度考え直してみる。

基幹系バッチ処理をHadoopで高速化: プログラマの思索

Hadoopの本質は分散I/Oにあり~クラウド時代の非同期処理: プログラマの思索

|

« ALMはSW開発のERPと同義 | トップページ | 【告知】SEA関西ではOOA、関西IT勉強宴会はDOAの勉強会あります »

モデリング」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: PostgreSQLの再帰SQL:

« ALMはSW開発のERPと同義 | トップページ | 【告知】SEA関西ではOOA、関西IT勉強宴会はDOAの勉強会あります »