问题标签 [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 回答
367 浏览

c - 如何在嵌入式 C 代码库中查找与数据一致性相关的问题?

让我解释一下我所说的数据一致性问题。以以下场景为例

显然,这些变量是 16 位的,但如果使用 8 位 CPU 和这段代码,读或写操作将不是原子的。从而可能在两者之间发生中断并更改值。这是可能导致数据不一致的一种情况。

这是另一个例子,

在上面的摘录代码中,如果一个中断在 if 语句之后但在 switch 语句之前将 x 的值从 8 更改为 5,我们会以默认情况结束,而不是情况 8。

请注意,我正在寻找检测此类情况的方法(但不是解决方案)

是否有任何工具可以检测嵌入式 C 中的此类问题?

0 投票
1 回答
178 浏览

database - 如何在 oracle 11g 中对具有对另一个表的外键引用的所有表启用触发器?

在数据库中,我有一个基表,命名为Organization大多数表都有外键。假设这低于 ERD:

数据库 ERD

如您所见,Organization表有一个名为is_enabled. 现在如果我想禁用Organization,我应该设置is_enabled1。这很简单,但问题是如果我想阻止所有其他过程和函数使用 disabled Organization,我应该trigger在所有具有表外键引用的Organization表上定义,这种方式很糟糕。

有没有另一种方法可以防止所有对象使用 disabled Organizations?也用于插入或更新数据,例如,如果我有一个Organization带有org1的标题,并且如果它有一个Department带有dep1的名称,在我禁用org1之后,我无法更新dep1名称,并且所有具有引用的表都存在此问题到Organization.

0 投票
1 回答
159 浏览

cassandra - NOSQL 中跨节点的数据一致性

这是一个设计级别的问题,

我有一个节点设置,如节点 N1、N2 和 N3,我的应用程序和数据库(目前认为是 Cassandra)在所有 3 个节点中运行。

我需要为以下场景提供数据一致性,有人可以提供答案吗?

  • 线程 (T1) 尝试编辑节点 N1 中的数据
  • 线程 (T2) 尝试从节点 N2 编辑相同的数据
  • 只有一次写入应该成功

在这种情况下,Cassandra 会发生什么?

有没有办法通过应用程序/ Cassandra 数据库提供并发?或者任何算法?

除了卡桑德拉的 LWT。

0 投票
1 回答
123 浏览

r - R中网络对象和Igraph对象之间的不一致

我正在使用R中的SNA(statnet 套件)和igraph开始描述性网络分析。我想知道使用哪个套件来研究我的网络的不同属性,因为它们的功能略有不同,这使得它们不能完全互换。

不幸的是,我注意到 2 包返回不同的结果(例如,SNA 识别的最大 clique 大小为 8,而 igraph 达到 17!。我从同一个边缘列表开始构建两个对象,存储为数据框。我可以使用 intergraph 得出相同的结论,但我如何定义哪个包创建了正确的网络?

编辑

我被要求提供可重现的例子。提供数据将毫无用处,因为我无法为它们创建有意义的子样本。不幸的是,它们是私人数据,我无法传播它们。只是为了给出一个想法,下面我提供了我的data.frame的头部,其中包含在代码'fdi.edge.2003'中命名的edgelist,属于'data.frame'类

下面,我正在使用的代码

这只是一个例子。在计算集团人口普查时出现了其他更相关的问题:根据“网络”类对象,我得到了大小为 8 的最大集团。相反,使用“igraph”,我得到了 17 的最大集团!

关于发生了什么的任何想法?

0 投票
1 回答
37 浏览

cassandra - 复制集如何从 Cassandra 的协调器请求中获取请求并对其进行响应?

假设来自协调器的请求到达集合。如果其中一个成员接受并请求此请求,您是否不需要其他成员接受此请求并做出响应?

如果一个成员收到一个申请,例如写请求,并且RF等于3,那么收到请求的成员是否将数据复制给其他两个成员?

再说一次,如果 CL 等于法定人数,如何回答这个问题?

在那种情况下,不需要CL!

0 投票
1 回答
227 浏览

sql - Oracle中对读一致性描述的一些混淆

以下是 Oracle 概念指南中读取一致性的简短介绍。

什么是sql语句,只有一条sql?还是 Pl/SQL 或存储过程?任何人都可以帮我提供一个相反的例子,可以表明阅读不一致?

0 投票
1 回答
172 浏览

owl - owl swrl 事实一致性检查规则当且仅当

是否可以使用 swrl 规则进行事实一致性检查?

如果我们有:

新的事实由此产生。

但相反,我拥有的是一组事实(一些一致的事实并非如此)。

可以使用 swrl 或替代技术来突出我的事实表中的这些不一致吗?

谢谢

0 投票
1 回答
222 浏览

sql-server - SQL Server 自动索引调整功能是否会删除唯一索引?

我想知道 SQL Server 2017(或 SQL Azure)自动索引调整功能是否会删除表上的任何唯一索引,因为这对数据一致性非常不利。

0 投票
0 回答
44 浏览

security - Is it possible to perform atomic file replacement in root-owned directory (SUID program security concerns?)

To ensure consistency on power outage, files can be updated as follows (pseudocode):

Now the thing is, if the files are in a folder root-owned, that rename operation gets a permission denied:

while:

works (but it's not as safe when it comes to consistency on power loss).

So I'm thinking about writing a small SUID program rename_suid that will just check that the source & target files have the proper ownership, so the replacement can be performed.

Here's a proposed implementation:

The question is... am I missing something:

  • Is there another solution to the problem?
  • If not, does a similar tool exist?
  • If such this tool is the only solution, could it, by its principle of operation, cause unforeseen security issues?
  • Any (security) problem with the proposed implementation?

Thanks,

0 投票
1 回答
321 浏览

mongodb - 在 MongoDB 3.6 之前阅读您自己的写入一致性

我正在阅读 mongdb 的文档,并且试图了解在引入 Mongo 3.6 的因果一致性会话之前“读取您自己的写入”一致性所必需的内容。

根据此页面:https ://docs.mongodb.com/manual/reference/read-concern-majority/#read-your-own-writes

在 MongoDB 3.6 之前,您必须使用 { w: "majority" } 写入关注点发出写入操作,然后对读取操作使用“多数”或“线性化”读取关注点,以确保单个线程可以读取自己的写入.

但是,在他们在上面同一页面(https://docs.mongodb.com/manual/reference/read-concern-majority/#example)上提供的示例中,似乎有信息不同意这一点。具体来说,他们有一个图表(我在下面复制了):

Mongo DB Read Concern 示例图

在该图中,在时间 t3,写入被确认。在收到写入确认后,majority在 t4 对任一辅助节点的读取关注将返回旧值,这与第一个声明相矛盾,即只要您使用majority写入 + 读取关注点,“单个线程可以读取自己的写入”。

如果该声明被修改为“从具有多数或可线性化关注的主要内容中读取”,我认为这将成为现实……但是,我想知道我是否误解了某些东西。

有人可以提供以下方面的见解:

a) 本文档的含义,以及

b) 如何在 3.6 的因果会话之前获得 read-your-own-writes 语义?

谢谢!