- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 FaunaDB,我想将其作为文档存储进行交互。我有一个 api:
在 Postgres 中,为了保证一致性,我会简单地使用一个 where 子句。由于 Fauna 是分布式的,我假设等价物更细微,例如,我的理解是 CosmosDB 写入惯用地发送读取的 eTag 以检查以保证一致性。
最佳答案
在 fauna 中,所有写入事务都以严格的可序列化隔离通过事务管道运行。因此,我们需要在我们的两个事务中保持所需的不变性,就是确保我们将写入与读取联系起来,以检查在我们自己的代码中四处乱窜时文档是否未更新。让 $ref
成为我们拥有神奇知识的一些 ref。让 $ts
成为我们原始读取事务期间 Select("ts", Get($ref))
的结果。让 $expr
成为我们想要将文档更新到的任何内容。然后:
If(Equals(Select("ts", Get($ref)), $ts), Update($ref, $expr), Abort("try again"))
当然,您可能想做一些更聪明的事情:返回更新后的文档失败可能是一个更好的主意。具体如何构建取决于您,但是
{error: "ts out of date", updated: Get($ref)}
效果会很好,您只需要对生成的对象进行一些案例分析,看看您是否有文档或失败。您甚至可以花点心思将读取的实例移动到 Let
中,但运行时特性大致相同(读取在 eval 期间缓存在本地,我们不会执行两次)。
关于consistency - 覆盖过去读取的文档时保证 FaunaDB 的一致性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57012214/
想知道是否faunadb支持实时,这是一件大事firebase支持? 我注意到 faunadb支持 graphql但没有 subscription支持的。 对不起,如果这个问题很幼稚? 最佳答案 截至
有没有办法统计 FaunaDB 集合中的所有文档? 假设我有一个 users集合,我定义了一个 all_users指数。计算 users 中所有文档的最佳方法是什么?在数据库中收集? 更新:扩展下面@
是否可以通过 fauna-shell 或 fauna-java API 获取 FaunaDB 类模式或字段? 我期待给定类或实例的字段及其数据类型 最佳答案 Fauna 没有将模式强制融入其中,因此了
我找不到任何有关如何在 FaunaDB 中执行此类查询的信息。我只需要从文档中选择特定字段,而不是所有字段。我可以使用 Select 函数选择一个字段,如下所示: serverClient.query
我有一个 FaunaDB 数据库“RaspberryPi”及其子数据库“00000000790f4c7c”,如下所示: 那么如何打开子数据库“00000000790f4c7c”? 我尝试打开 0000
尝试更新文档(如果存在),否则创建具有相同数据的文档。我还需要使用 Index 而不是直接的 Ref 来做到这一点。 在我确定它已经存在的情况下,使用它来更新。但是在这种情况下,由于无法确定 Ref
FaunaDB的documentation涵盖了如何更新文档,但他们的示例假定我将拥有 id进入 Ref : Ref(schema_ref, id) client.query( q.Update(
我试图增进对FaunaDB的理解。 我有一个包含如下记录的集合: { "ref": Ref(Collection("regions"), "261442015390073344"), "ts"
在类中(在数据库中)拥有现有数据......我无法创建索引(类型为“all”)并返回在创建新索引之前插入的数据。 我试图以编程方式(python)和通过网络界面来完成。 我希望能够在创建新索引时恢复预
任何人都知道如何创建一个索引,其中术语是一个 ref 并且可以通过数组中的嵌套对象进行搜索? 在“对话”集合中,我保存了以下示例数据: { "created": Time("2019-09-29T
我不知道如何简单地获取使用 faunadb 创建的最后一个实例的 ref(id)。 我需要把它放在一个网址中。 我用它来创建我的实例: /* code from functions/todos-cre
我有一个 FaunaDB,我想将其作为文档存储进行交互。我有一个 api: 从 FaunaDB 读取整个文档 根据对 api 的输入任意改变该数据 写回变异的同时保证数据没有被变异 如果尝试写入时读取
我正在构建一个包含一些相互关联的集合(任务、组和用于存储任务 ID 和顺序的列)的待办事项列表。这些中的每一个都需要缩小到登录用户的范围,所以我有索引来获取_by_owner(所有者是术语)。 我想确
我有一个类“posts”,它有 10 个实例。如何在不使用分页方法的情况下使用 fauna-java 库获取并列出此类中的所有实例? 我试过如下的东西 client.query(Get(Class("
FaunaDB 允许我按各个字段索引数据项,并通过索引分页,但我看不到选择随机项的方法。 最佳答案 在任何数据库中,大规模地选择随机项目都是困难的。根据您的要求,有两种主要技术可供选择。 为您的查询定
我有一个包含时间类型字段的集合。我需要能够按年或月-年组合查询此集合。 我曾尝试在网站本身上使用索引创建工具,例如 Year(data.expDate)和 Month(data.expDate)在条款
作为 FaunaDB documentation ,好像没有dart API,也没有REST API。另外,我在 Flutter Packages 中找不到 FaunaDB 包。 . 有没有办法在fl
我正在从 faunadb 获取文档,我希望他们的 ID 包含在我发送给客户端的有效负载中。 这就是我获取文档并将其数据作为集合返回的方式 serverClient.query( q.Map(
也许我还没有掌握GraphQL,但是我想更新数据库中的一条复杂记录。我找不到解释这个的文档,它没有使用一个简单的例子。我正在使用 FaunaDB 并尝试在 GraphQL playground 中测试
例如,假设我们有一个包含数十万份客户文档的集合,其中包含 3 个字段:name、monthly_salary 和 age。 如何查询monthly_salary大于2000,age大于30的文档? 在
我是一名优秀的程序员,十分优秀!