というタイトルですが、具体的には "Rustで拡張ライブラリ全体を書いた" のではなく "Cで拡張ライブラリの本体を書いてその中からRustのライブラリを呼んで、非同期でRust側からの結果を取得" してます。 ちなみに、Foreign Data Wrapper (FDW) とは、PostgreSQL管理外のデータソースにIOできるPostgreSQLのテーブルの一種です。今回の場合 "Treasure DataというSaaSに裏でクエリーを投げて結果を取得するFDW" となります。 github.com なぜこんなことをやろうかと思ったか? もともとはMulticornという "Pythonで外部データソースにアクセスできる処理を書けるFDWフレームワーク" を用いて GitHub - komamitsu/td-fdw: Multicorn based PostgreSQL Foreig
![Rustを使ってPostgreSQLの拡張ライブラリ (FDW) を書いてみた話 - komamitsu.log](https://cdn-ak-scissors.b.st-hatena.com/image/square/f52d052c2ee4ad285a763cf2bf63adc521d17f7e/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fk%2Fkomamitsu%2F20161212%2F20161212004619.jpg)