是否可以使用 Windows Azure 表存储服务进行条件插入?
基本上,我想做的是将新行/实体插入到表存储服务的分区中,当且仅当自上次查看以来该分区中没有任何更改时。
如果您想知道,我想到了事件溯源,但我认为这个问题比这更笼统。
基本上我想读取部分或整个分区并根据数据内容做出决定。为了确保自加载数据以来分区中没有任何变化,插入应该表现得像正常的乐观并发:只有在分区中没有任何变化时插入才应该成功 - 没有添加、更新或删除行。
通常在 REST 服务中,我希望使用 ETag 来控制并发,但据我所知,分区没有 ETag。
我能想出的最佳解决方案是为包含时间戳/ETag 的表中的每个分区维护一个单行/实体,然后将所有插入作为包含插入的批次的一部分以及对此的条件更新时间戳实体'。但是,这听起来有点麻烦和脆弱。
Azure 表存储服务可以做到这一点吗?