问题标签 [data-consistency]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
84 浏览

oracle - Oracle表之间的数据一致性

我有一个大表 A,它有 PK(C1,C2,C3)和许多其他列,为了使选择更快,使用 PK(C1,C2)创建了一个较小的表 B。所以我们可以通过连接两个表来在 A 中找到一行来进行选择。

但是现在的问题是,如果 B 中的数据损坏导致联合选择什么也不返回,但我们在 A 中仍然有一行,则可能会发生这种情况。

我在这个设计上做错了什么,如何确保这两个表中的数据是一致的?

非常感谢。

0 投票
1 回答
46 浏览

laravel - 为什么此代码有效并且如果子文档不存在,则雄辩地创建子文档?

假设我有一个名为 ParrentObj 的集合和一个名为 ParrentObj 的相应 Eloquent 类:

我很惊讶这行代码是如何正常工作的,因为所有的证据都证明了这一点:

“ParrenObj”是一个 Eloquent 对象,在 Children 字段上有一个 embedsMany 关系。

“Children”也是一个雄辩的对象,在 GrandChildren 字段上具有“embeds many”关系。(到 0 或 n 个“GrandChildren”雄辩的对象)

据我所知,查找的结果是一个雄辩的或集合,并结合结果将是一个查询生成器。当我试图得到这个结果时:

结果是 ParrentObj(雄辩的对象)。正如我所预料的,儿童领域有两个成员(不是一个)。如何雄辩地确定->push('Children.$.GrandChildren', $arr);应该应用在哪些孩子身上?

0 投票
0 回答
22 浏览

php - 何时为 MYSQL 查询使用锁

我想知道是否有必要对数据一致性问题使用锁来实现与 MYSQL 服务器的非持久连接。在对多个用户同时访问的表执行更改时。为了说明更多,我将使用我正在使用的场景。

让我们假设我正在使用 PDO 和手动事务beginTransaction()commit() ,并且我正在做一个简单的INSERT INTO TABLE查询。该表有一个主键,它是自动递增的。我有兴趣在插入后重用插入行的 ID 列,借助lastInsertId();To create another Insert with the same transaction and use the ID as a value in another table

我必须使用表锁来防止数据不稳定吗?如果是这样,这样做的好习惯是什么?

0 投票
1 回答
100 浏览

cassandra - 节点重启后 Elassandra 集群状态不一致 - 一个节点上的数据较少

我已将 4 个节点 Cassandra(RF=3)中的现有数据迁移到 Elassandra,并且在将我的映射后,整个数据都被索引到 Elassandra。索引完成后,所有节点在/_cat/indices?vAPI 中显示一致的结果。但是,一旦我重新启动任何节点,该节点上的数据就会大大减少,索引大小以及记录数都会大大减少。如果我重新启动集群的另一个节点,问题就会转移到该节点,并且前一个节点会自动恢复。有关更多详细信息和详细用例,请参阅我使用 Elassandra 创建的问题。

0 投票
1 回答
31 浏览

c++ - 在查找表中存储命名项目

考虑下面的类

  1. 现在我希望能够通过 id 找到一个人,并更新它的名字。为此,我可以使用std::set<Person, PersonIdCompare>,但如果没有const_cast.

  2. 那么将 Persons 存储在 a 中是否更好std::map<RegistrationId, Person>,这样可以更改记录,尽管这需要将 id 存储两次。

  3. 或者也许我应该使用地图,并从Person班级中删除 id。Person但是,如果我只能访问, 而不是,则我无法获得 id std::pair<RegistrationNumber const, Person>,因此这可能需要传递这些对。

什么选项最有效或最不容易出错。想一想有人为 person id 添加一个 setter 的场景,这会破坏选项 1 和 2,或者将 id 存储为选项 2 的两倍。

0 投票
0 回答
49 浏览

hibernate - 如果两个微服务共享同一个数据库表,如何保持休眠数据的一致性

**我是微服务的新手,我有一个服务 A,服务 B 服务 C 使用相同的数据库来访问服务 C 中的用户详细信息。我们可以使用相同的休眠实体来获取服务 A 和服务中的信息吗B、更新操作会出现不一致。据我所知,有三种解决方案**

  1. 在服务 A 和服务 B 中都有用户表的休眠实体,以便他们可以访问数据
  2. 使用 JDBC 并尝试从单个服务获取数据
  3. 调用服务 C 提供我们需要的信息,以提供他们需要的用户数据。
0 投票
1 回答
164 浏览

r - 网络荟萃分析。与节点拆分的一致性:错误

我正在做一个网络元分析。这是我的数据:

我创建了我的 mtc.network 对象

我想评估与节点拆分模型的一致性(https://doi.org/10.1002/jrsm.1167)。但是 R 显示了这个错误。任何想法?

0 投票
1 回答
113 浏览

testing - Kafka中的消息一致性测试场景

我正在构建一个 POC,其中包含一个部署在 Kubernetes 上的 Kafka 集群和三个从 kafka 读取并写入 jms 的 Spring Boot 应用程序,反之亦然。

我想知道如何确保数据完整性和一致性,例如:如果生产者节点失败,消费者将如何继续阅读消息而不会丢失 msg 一致性。是否有详细的场景来测试此功能。

0 投票
1 回答
314 浏览

amazon-web-services - AWS S3 最终一致性和写后读一致性

帮助我更好地理解这些我无法完全掌握的概念。

谈论 aws S3 一致性模型,我将尝试解释我掌握的内容。

请消除或确认我这些说法。

首先

  • 谈论“写后读”仅与“新作品”/创建以前不存在的对象有关。
  • 谈论“最终一致性”与“修改现有对象”(更新或删除)有关

这些第一个概念是否正确?然后,

  • 最终一致性:在数据完全写入节点之前访问数据的“客户端”可以读取对象的旧版本,因为写入可能仍在进行中,即对象可能尚未被提交。这是在分布式系统中普遍容忍的行为,在这种情况下,这种类型的一致性优于其他选项,即在提交对象时等待某种锁被移除。

  • 写后读一致性:对象立即可供客户端使用,客户端将读取对象的“真实”版本,而不是旧版本,如果我理解得很好,这仅适用于新对象。

如果是这样,为什么这些复制方法如此不同?并产生这种不同的一致性?

“最终一致性”的概念更容易理解,因为您必须考虑将数据传播到不同节点的“延迟”,并且客户端可能在此期间访问并且尚未获得新数据。

但是为什么“写后读”应该是立即的?传播对现有基准的修改或创建新基准,应该具有相同的延迟。我无法理解其中的区别。

你能否告诉我我的主张是否正确,并以不同的方式解释这个概念。

0 投票
1 回答
276 浏览

c# - 如果更改了 IEnumerable 数据源,它会更改结果

给定以下代码:

我得到这个输出:

我知道延迟执行,但这是预期的行为吗?这意味着我应该在不创建新集合的情况下重用 IEnumerable 或在 IEnumerable 上使用的任何数据,因为我可能会更改程序的结果。

这意味着 IEnumerable 也将持有对数据源的引用,即使它们也未被可见代码使用,并且在收集 IEnumerable 本身之前不会被垃圾收集。

我在最近的一个项目中经常使用 IEnumerable,我看到它们越多,我就越不喜欢它们。不要误会我的意思,Linq 做得很好,但我希望它有时返回相同类型的源。