加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

优化graphql数据库查询

发布时间:2020-12-12 06:30:07 所属栏目:MsSql教程 来源:网络整理
导读:让我们说我们有以下graphql架构: type Author : Object { id: ID! name: String,books: [Book]}type Book : Object { id: ID! title: String authorId: Int author: Author} 然后进行如下查询: { books: { id title author { id name } }} 例如,如果我们有1
让我们说我们有以下graphql架构:
type Author : Object {  
  id: ID!
  name: String,books: [Book]
}

type Book : Object {  
  id: ID!
  title: String
  authorId: Int
  author: Author
}

然后进行如下查询:

{
    books: {
        id 
        title
        author { id name }
    }
}

例如,如果我们有10本书,那么我们最终会得到10个作者查询,因为将为每个读取的书调用resolve函数:

select id,name from author where id = 123

除此之外,我们可以将所有作者查询作为单个查询执行:

select id,name from author where id in (123,456,789,1011)

是否有一些工作解决方案,最佳实践,技术或某些有助于实现这一目标的东西?

解决方法

Dataloader是你的答案,它具有批处理功能,这意味着它将排队所有ID.只有一旦它准备好它将作为批次拉动它
演示可以在这里找到:
https://youtu.be/UBGzsb2UkeY(特别是最后5分钟)
Algorithem解释可以在这里找到:
https://youtu.be/OQTnXNCDywA

请享用 :)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读