[pgsql-jp: 36645] Re: 異なるデータベース間のテーブル結合

Toshihiro Kurai tkurai @ taiyo-st.co.jp
2006年 1月 19日 (木) 17:48:24 JST


倉井と申します。

更新系の処理でもdblinkを利用することは可能です。
しかし、リモート側の処理に関してはローカルの
トランザクション管理の対象となりません
(リモート側は常にコミットされるイメージ)

このため、更新系のトランザクションの中で
利用するときは注意が必要です。
(ローカル側のロールバックがリモート側に反映されないためです)

ということから自分は更新系処理に関しては
トランザクションを考慮しないとき意外では
dblinkを利用していません。

適切な答えになっているかどうか・・・。

yamasiy wrote:
> 山下です。
> 
> 申し訳ありませんが割り込みさせてください。
> contribのdblinkについて、参照系のみでなく、
> やり方次第では更新系でも利用可能なのでしょうか?
> 
> 
> --- Toshihiro Kurai <tkurai @ taiyo-st.co.jp> からのメッセ
> ージ:
> > 倉井と申します。
> > 
> > contribにあるdblinkを使用してはいかがでしょうか?
> > 
> > 更新系の処理ではトランザクションの一貫性が実現出来ない
> ため
> > 使用するには躊躇いがありますが、参照系の処理ではなかな
> か使えると
> > 思います。
> > 
> > ご参考になれば・・・。
> > 
> > 
> > 
> > > 加納と申します。
> > >
> > >
> > >
> > 1台のサーバ内にある異なるデータベース間でのテーブル共
> 有について
> > > 悩んでおります。ご助言など頂けますと幸いです。
> > > よろしくお願いいたします。
> > >
> > >
> > >
> > >
> > 現在perlとpostgresを連携させて、簡単な情報共有システム
> を運用しています。
> > >
> > > 構成は、1つのデータベースの中に
> > > ・社員テーブル
> > > ・店舗テーブル
> > > ・その他情報のテーブル
> > >
> > があり、情報を引き出す際にテーブル結合を頻繁に利用して
> おります。
> > >
> > >
> > >
> > 先日、クライアントよりその情報共有システムに新たに在庫
> 管理のシステムを
> > > 追加して欲しいとの要望があったのですが・・・
> > > ・社員、店舗情報は2つのシステムで共有する
> > > という方向で話が進んでおります。
> > >
> > >
> > 在庫情報はある程度のデータ量となりそうなので、別のデー
> タベースと
> > >
> > した方がいいかと思ったのですが、その場合、既存の社員や
> 店舗の情報と
> > > どのように結合させようかと悩んでおります。
> > >
> > postgresではデータベース間のテーブル結合はSQLレベルで
> はできない、
> > > ということはマニュアル等で見たのですが。
> > >
> > >
> > > 色々調べたのですが、解決法としては
> > > 1) データベースを分けない
> > > 2) perlスクリプトレベルで擬似的に結合させる
> > >
> > > ということしか導けません・・・。
> > >
> > >
> > >
> > 何かいい知恵などございましたらよろしくお願いいたします
>> > >
> > >
> > > perl5.6.1
> > > postgres7.3.9
> > 
> > 



pgsql-jp メーリングリストの案内