PostgreSQLの再帰SQL
PostgreSQLでも再帰SQLが使えると聞いたのでメモ。
【元ネタ】
住友電気工業株式会社におけるオープンソースソフトウェアの積極的な導入 ? Let's Postgres
再帰SQL | 最近、開発に縁が無くなってきた技術者のきねづか
再帰SQLの使い道は、階層構造を持つテーブルやデータの検索。
よくある例は、ツリー構造にカテゴライズされた商品の検索や、製造業の生産管理システムで部品や品目を検索する時だろう。
この業務ロジックをアプリケーションで書くのは結構苦労する。
ストアドやSQLで複雑な業務ロジックを隠蔽化できるならば、アプリ側はストアドをコールするだけでいい。
そして、DBサーバー側でストアドを実行するので、業務処理の高速化も期待できる。
また、DBUnitを使えばストアドの単体テストにも使えるので、品質向上も見込める。
つまり、テストに必要なテストデータを準備すれば、DBUnitでストアドのテストを自動化することも可能だ。
SQLは色んな書き方があるので、知っておくと便利。
だが、最近のWebアプリ開発では、DBサーバーがボトルネックになる時が多く、DBサーバーのスケールアップに難があるため、アプリケーションサーバーのスケールアップを利用して、DBを単なるデータの格納庫で設計するやり方も見かけるようになった。
KVSのような脱RDB、Hadoopなどの新技術と今後のDOAの進化については、アーキテクチャ設計も絡めてもう一度考え直してみる。
| 固定リンク
「モデリング」カテゴリの記事
- 組込みソフトウェア開発でUMLを使う手法を説明した書籍のリンク(2022.06.17)
- 超高速開発でアジャイル開発を実現する話に違和感がある(2022.05.06)
- 事業活動のシステム化は非差別化しない汎用ドメインや支援ドメインに注力すべき(2022.04.13)
- 「大国政治の悲劇」の感想~現代はパワーポリティクスの歴史に戻ったみたいだ(2022.03.25)
- マイクロサービスはアトミックな操作で閉じるべきシステム分割論に基づいたアーキテクチャなのか(2022.03.20)
コメント