PostgreSQLの再帰SQL
PostgreSQLでも再帰SQLが使えると聞いたのでメモ。
【元ネタ】
住友電気工業株式会社におけるオープンソースソフトウェアの積極的な導入 ? Let's Postgres
再帰SQL | 最近、開発に縁が無くなってきた技術者のきねづか
再帰SQLの使い道は、階層構造を持つテーブルやデータの検索。
よくある例は、ツリー構造にカテゴライズされた商品の検索や、製造業の生産管理システムで部品や品目を検索する時だろう。
この業務ロジックをアプリケーションで書くのは結構苦労する。
ストアドやSQLで複雑な業務ロジックを隠蔽化できるならば、アプリ側はストアドをコールするだけでいい。
そして、DBサーバー側でストアドを実行するので、業務処理の高速化も期待できる。
また、DBUnitを使えばストアドの単体テストにも使えるので、品質向上も見込める。
つまり、テストに必要なテストデータを準備すれば、DBUnitでストアドのテストを自動化することも可能だ。
SQLは色んな書き方があるので、知っておくと便利。
だが、最近のWebアプリ開発では、DBサーバーがボトルネックになる時が多く、DBサーバーのスケールアップに難があるため、アプリケーションサーバーのスケールアップを利用して、DBを単なるデータの格納庫で設計するやり方も見かけるようになった。
KVSのような脱RDB、Hadoopなどの新技術と今後のDOAの進化については、アーキテクチャ設計も絡めてもう一度考え直してみる。
| 固定リンク
「モデリング」カテゴリの記事
- 「システム開発・刷新のためのデータモデル大全」を読み直した感想~親子頻出アンチパターンは初心者モデラーに多い(2024.08.31)
- 「システムアーキテクチャ構築の原理」の感想part2~非機能要件がシステムのアーキテクチャに影響を与える観点をプロセス化する(2024.05.06)
- 「システムアーキテクチャ構築の原理」の感想(2024.05.06)
- ソフトウェア工学の根本問題から最近のソフトウェア設計を考えてみる(2024.03.03)
- アーキテクチャ量子の考え方はソフトウェア工学に物理学アプローチを適用したアイデアではないか(2024.02.12)
コメント