当前位置: 首页 > 面试题库 >

哪个NoSQL数据库可以为查询结果集提供*更改*流?

衡子安
2023-03-14
问题内容

哪个NoSQL数据库可以提供对查询结果集的 更改 流?

有人可以指出一些例子吗?

首先,我认为没有SQL数据库提供此功能-我正确吗?

我需要能够指定任意的,简单的查询,这些查询在SQL中可能等效为:

SELECT * FROM accounts WHERE balance < 0 and balance > -1000;

我想要一个初始结果集:

id: 100, name: Fred, balance: -10
id: 103, name: Mary, balance: -200

但是然后,我希望一直跟随着一系列的变化,直到停止它们:

meta: remove, id: 100
meta: add,    id: 104, name: Alice, balance: -300
meta: remove, id: 103
meta: modify, id: 104, name: Alice, balance: -400
meta: modify, id: 104, name: Alison, balance: -400
meta: add,    id: 101, name: Clive, balance: -200
meta: modify, id: 104, name: Alison, balance: -100
...

注意:我 不是 在谈论大型结果集的流式传输。我正在寻找变化的软实时流。

另外,如果可能,它需要向外扩展。

谢谢,

克里斯。


问题答案:

尽管已经接受了一个答案,但是还有另一个答案成为您问题下方假设的核心。

与获取数据更改列表有关的业务问题是什么?如果您不仅收到了数据更改列表,还收到了一系列事件,告诉您数据 为什么 以及如何更改,该怎么办?

这个概念是“
CQRS”作为体系结构背后的根本原因之一。基本上,您存储导致数据发生更改的所有事件,例如FundsDeposited,FundsWithdrawn等,并且您可以“重播”这些事件,不仅发现数据随时间的变化,还发现原因。

一旦走上这条路,您就可以将事件存储为流,并且不再局限于少数几个存储引擎。相反,您实际上可以使用任何存储引擎,它将完成工作。



 类似资料:
  • 问题内容: 当用户最初单击按钮时,将运行查询,并将每一行放入JPanel中并添加到显示中,以供用户查看。哪个工作正常。 我的问题是,我希望用户能够根据它们提供的值(通过JTextField)过滤这些结果,并且我希望显示的记录随着JTextField值的更改而更新。每次更改JTextField时都会形成并执行我的查询,但是我找不到更新显示记录的方法。 任何帮助,将不胜感激。 该代码花了一些时间进行编

  • 问题内容: 我想检索并进一步进行一些插入,删除和更新。 如果我想找寻谁住的最好的方法是什么? 制作2个外键并在表中: 或者只是一个外键表和其他外国键表 或像第一个选项一样制作 视图 ? 对于插入,删除和更新数据,它们仍然是最好的表吗?性能没有区别吗?我也很困惑,什么会影响架构的性能? 问题答案: 根据具体情况 进行一些权衡分析。在这种情况下,无法回答您的问题。 我在两个版本中看到的唯一区别是Per

  • 问题内容: 我有一个查询。现在,此查询当然返回一个结果集,我想要的是查询此查询的结果集,例如,我只希望上述查询具有唯一的名称。我应该提一下,我知道我可以在Query1中使用,但这只是一个示例,我的实际情况有些不同,我想知道的是是否可以查询上一个查询的结果集。我正在使用SQL Server 2012。 问题答案: 您可以使用该子句

  • 问题内容: 我有一个数据库,正在运行以下查询: 上面的查询一次返回两个结果集,我不能分别触发两个查询。如何在Java类中一次处理两个结果集? 问题答案: 正确的代码来处理JDBC语句返回的多个: 重要位: 并返回以表明语句的结果只是一个数字,而不是一个。 您需要检查以了解是否还有更多结果。 确保关闭结果集或使用

  • 本文向大家介绍NoSQL数据库,包括了NoSQL数据库的使用技巧和注意事项,需要的朋友参考一下 这些用于大型分布式数据集。关系数据库可以有效地处理一些大数据性能问题,而NoSQL数据库可以轻松解决此类问题。在分析可能存储在云的多个虚拟服务器上的大型非结构化数据时,非常有效。

  • 我正在为我的网站做一个注册页面。我在PHPMyAdmin中维护一个包含7个字段的数据库(id、用户名、密码、电子邮件、活动、代码和日期)。我正在使用代码和活动字段来实现电子邮件激活。注册表单使用post方法获取4个参数(名称、电子邮件、密码和重新键入密码),并将提交按钮的信息传递给PHP代码,以检查用户是否是新的,电子邮件ID是否应该是新的,并在单击提交按钮后检查空字段。PHP代码如下所示: 当我