postgres http fdw + plv8 處理數據


原理很簡單就是就有http fdw 獲取數據,然后結合plv8 處理json 數據

環境准備

  • docker-compose 文件
version: "3"
services: 
  pgspider-fdw:
    image: dalongrong/pgspider:gzip-http-plv8
    ports: 
    - "5432:5432"
    environment: 
    - "POSTGRES_PASSWORD=dalong"
  • 啟動
docker-compose up -d

使用

  • 創建擴展
create extension plv8;
create extension http;
  • 集成查詢
// 創建數據類型
CREATE TYPE rec AS (origin text);
// 創建函數
CREATE or replace FUNCTION apps() RETURNS SETOF rec AS
$$
    var ip = plv8.execute(`select content FROM http_get('http://httpbin.org/ip')`);
    return [{"origin": JSON.parse(ip[0].content).origin}]
$$
LANGUAGE plv8;
// 數據查詢
select * from apps();
  • 效果

 

 

說明

以上是一個簡單的集成使用,實際上結合plv8 以及http fdw 我們可以開發靈活的系統

參考資料

https://github.com/plv8/plv8
https://github.com/pramsey/pgsql-http
https://www.cnblogs.com/rongfengliang/p/12372879.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM