【发布时间】:2020-05-31 19:40:40
【问题描述】:
我们有多个数据源,在不同的表中有超过 10 亿条记录,其中大部分是 Oracle SQL 数据源以及少数 NoSQL 解决方案。主要字段在不同来源中具有不同的名称。 SQL 查询只能连接特定数据源中的表。在每个 API 中编写 REST API 和拼接数据是不可能的,因为我们的查询是动态的并且可能会随着时间而改变。
我们如何解决这个问题,GraphQL 服务器可以帮助我们拼接多个数据源并以不同的条件查询每个数据源吗?
我们寻求的是一种查询语言,它可以跨数据源进行查询,根据某些条件(例如连接查询)将它们拼接在一起,然后返回结果集。
Table 1(Oracle SQL server 1):-
|username | age | tenant |
abc 56 US
xyz 32 IN
Table 2 (Oracle SQL server 2):-
|userid | config | duration |
abc {..json.} 2100s
the query could be like:-
select * from table1, table2 where table1.userid=table2.username and duration>2000s
【问题讨论】:
标签: sql node.js spring neo4j graphql