在我之前关于此门户的问题中,我询问了有关在 SQL Server 和基于键值的数据存储库之间同步数据的一些见解。
代替相同的问题(从 SQL 到 HBase 或任何其他数据库的单向实时同步),我需要注意一些性能和延迟考虑,并且没有找到一种非常简单的方法来做到这一点。
我们有多个 SQL 2008 数据分片,其中数据从各种来源更新并由多个进程同时处理(并且 UI 从相同分片读取)。
目标是在任何时间点获取选定表中的所有更新,并以几乎实时的方式将它们传输到其他数据源。
SQL 分片的变化量将保持在 100-500 MB 范围内(如果我们保持 1 分钟的频率)。我们不想对 SQL 服务器进行重大更改,因为我们会在迁移完整系统后丢弃它。
不幸的是,我们的数据访问层在各个层都搞砸了。否则,这将是从两个方向分叉更新的最佳方式。
触发器会减慢分片的速度并使它们处于无响应状态。
不确定 SQL Server 2008 是否具有类似于 SQL Server 2005通知服务的功能,以及它的效果如何。
任何其他创新解决方案都会大有帮助。
这里我的问题不是将数据从关系形式转换为键值形式(这很容易),而是如何在不影响用户体验的情况下实时获取 SQL Server 更新(可以承受 1-2 分钟的延迟) .