我有一个将一些行写入 Redshift 的系统。一旦完成(使用 JDBC,因此代码行完成),我们将一个 id 发送到队列,另一个系统获取此 id 并从 Redshift 读取这些行和相关行。
此读数通常发生在同一秒内。问题是,大约 10% 的时间它找不到(显然)刚刚写入的数据。数据肯定在那里。以后再处理这些项目会得到不同的(正确的)结果。
所以,我的问题是 Redshift 能保证即时的数据一致性,还是我们的系统只需要等待才能读取?如果必须等待,要等多久?
我有一个将一些行写入 Redshift 的系统。一旦完成(使用 JDBC,因此代码行完成),我们将一个 id 发送到队列,另一个系统获取此 id 并从 Redshift 读取这些行和相关行。
此读数通常发生在同一秒内。问题是,大约 10% 的时间它找不到(显然)刚刚写入的数据。数据肯定在那里。以后再处理这些项目会得到不同的(正确的)结果。
所以,我的问题是 Redshift 能保证即时的数据一致性,还是我们的系统只需要等待才能读取?如果必须等待,要等多久?