[pgsql-jp: 27622] Re: データベース間のリレーションの図り方
Satoshi Nagayasu
snaga @ snaga.org
2002年 10月 12日 (土) 21:53:40 JST
永安です。
ねむい。。。
> dblinkのような仕掛けを使う限り,そういうことはあり得ないのではないでしょ
> うか.
>
> SELECT dblink("dbname=test host=hoge", "BEGIN");
>
> ってやると,dblinkの中でlibpqがhogeにコネクトしてBEGINを実行し,BEGIN
> が完了するまでブロックするので,dblinkから戻ってきたときにはリモートで
> BEGINが必ず終わっていますよね.あ,そういうことではない?
多分そういうことだと思うんですが、自分でも確信があって言ってるわけじゃな
いので、だんだん分からなくなってきました。。。また今度考えてみます。
> > http://www.atmarkit.co.jp/fnetwork/tokusyuu/01sql99/sql99_3d.html
> > これの「SQL/MED」のあたりです。
> なるほど.このURLはちょっと説明が大ざっぱすぎて良く分かりませんが,オ
> プティマイザの問題はどうするんでしょうかね.そこまでは考えてないのかな.
んー、考えてないってことはないとは思いますが、考えてもどうにもならないか
も、とかじゃないでしょうか。多分。「とりあえずつながらないと…」みたいな。
あと、SQL文そのもののイメージとしては、
http://otn.oracle.co.jp/products/oracle9i/daily/002.html
あたりでしょうか。
> オプティマイザの問題を考慮しなくて良いのなら,dblink程度で十分実現でき
> そうな機能のように見えました.それどころか,dblinkなら,周辺機器から上
> がってくる情報のようなものさえテーブルに見せかけるようなこともできます.
> 個人的にはこっちの方が面白そう.
多分実装の方法によるとは思うんですけど、外部リソースへのインターフェース
を持つ共有オブジェクトを、CREATE FUNCTIONみたいに登録できるようにするこ
とはできると思います。CREATE TABLEの拡張的に。
CREATE TABLE ほげほげ ORGANIZATION EXTERNAL USING '$libdir/oci.so';
みたいな(ざっくりはしょって例示してますが)。
それができるようになると、OracleのOCIだろうが、MySQLだろうが、:-)
CSVファイルだろうが計測器だろうが、シームレスにデータを取れるように
なりますよね。
# なんかむちゃくちゃ勝手なこと言ってますけど。:-D
そのAPIを標準化するのがSQL/MEDってことなんじゃないかと思うです。もっとも、
どのレイヤーで標準化するのか理解してないのですが。
--
NAGAYASU Satoshi <snaga @ snaga.org>
pgsql-jp メーリングリストの案内