【问题标题】:Firestore: How to exempt a field from being indexed via java codeFirestore:如何使字段免于通过 Java 代码编制索引
【发布时间】:2021-12-07 04:56:04
【问题描述】:

我想将我的字段存储在 Firestore 中,但将它们排除在索引之外,这也是通过 java 编码我们而不是通过 Firestore 控制台。

可以使用 Java 客户端 Firestore 库吗? 如果可以,请您提出一种方法。

【问题讨论】:

  • “将它们排除在索引之外”是什么意思?你到底想达到什么目标?
  • Firestore 默认为每个字段创建索引,我的目标是排除某些字段被 firestore 索引
  • 您为什么要这样做?你有什么顾虑?
  • 我只是想存储那些字段,从不根据这些字段查询并节省成本

标签: java firebase google-cloud-platform google-cloud-firestore


【解决方案1】:

不幸的是,您不能在 Java 代码中以编程方式执行此操作。根据single-field index exemption的官方文档:

您可以通过创建单字段索引豁免来从 automatic indexing 设置中豁免字段。索引豁免会覆盖数据库范围的自动索引设置。豁免可以启用单字段索引,否则您的自动索引设置会禁用或禁用自动索引设置会启用的单字段索引。对于豁免可能有用的情况,请参阅indexing best practices

因此,这可以Firebase Console 中完成,方法是访问 Firestore 数据库并选择 Indexes 选项卡。在页面底部,您会看到一个名为“添加豁免”的蓝色按钮:

【讨论】:

  • 谢谢 Alex 可以通过 firestore CLI 完成还是只能选择控制台
  • 据我所知,只能在控制台中完成。另请注意,有a limit of 200 index exemptions。所以请注意这个限制。
  • 嘿内哈。我可以帮助您了解其他信息吗?如果您认为我的回答对您有所帮助,请考虑通过单击左侧投票箭头下方的复选标记(✔️)来接受它。应将颜色更改为绿色。我真的很感激。谢谢!
猜你喜欢
  • 2019-07-03
  • 1970-01-01
  • 1970-01-01
  • 2020-06-25
  • 2020-07-24
  • 2019-07-08
  • 1970-01-01
  • 1970-01-01
  • 2012-12-12
相关资源
最近更新 更多