我对Pivotal Gemfire和配置Gemfire来为低延迟和高吞吐量应用程序存储Oracle表数据并不熟悉。
Via有多种方法可以将数据加载到Gemfire缓存中。
有谁知道如果在Oracle post Gemfire缓存加载中发生任何更新,我如何更新数据?
任何帮助,方向,参考资料都会有很大的帮助。
发布于 2015-09-04 03:50:52
通常,您需要设计应用程序,使所有更新都通过GemFire从应用程序流向Oracle。您可以使用GemFire CacheWriter同步更新Oracle数据库,甚至将其包装在(JTA) transaction中,以便只有在成功更新GemFire时才更新Oracle数据库。请参阅更多详细信息here。您甚至可以使用AsyncEventQueues和Listeners异步(写后)执行更新,请参阅here和更一般的here。
您可能有其他非基于GemFire的应用程序直接访问Oracle数据库。在这种情况下,您将不得不依靠外部手段来检测数据库更新并将其提供给GemFire。当然,有很多方法可以做到这一点,例如通过定期检查数据库更新并将其放入GemFire的计划服务。将核心Spring框架的Task Scheduling基础设施与Spring Data JPA (甚至只是Spring's JDBC Abstraction)相结合,将大大简化这项工作。
或者,如果是我,我可能会选择Spring XD,并设置一个"stream“,根据需要将Oracle Database (JDBC) "source”与一些transformations/filters/etc混合在一起,然后设置一个GemFire "sink“。
希望这对你有帮助,祝你好运。
干杯!
https://stackoverflow.com/questions/32369520
复制相似问题