postgres http fdw + plv8 处理数据
2024-09-05 16:26:18
原理很简单就是就有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
最新文章
- 解决eclipse中自带的maven搜索不到非本地第三方包问题
- maven下载速度慢的解决方法(转)
- c# random string
- C#学习笔记---协变和逆变
- AndroidStudio第一个项目HelloWorld
- Java接口回调
- Codeforces Round #324 (Div. 2) C. Marina and Vasya 贪心
- BZOJ_1180_[CROATIAN2009]_OTOCI_(LCT)
- FTP上传下载
- HDU-2188 悼念512汶川大地震遇难同胞——选拔志愿者
- editplus的设置
- BZOJ 3551: [ONTAK2010]Peaks加强版 [Kruskal重构树 dfs序 主席树]
- 论文学习:Fully Convolutional Networks for Semantic Segmentation
- Libgdx 1.6.0发布,跨平台游戏开发框架
- Graphviz
- SpringBoot 添加fastjson
- 算法工程师B
- python 爬虫随机获取User-Agent
- listview item 动画
- jQuery ajax - getJSON() 用法实例