关于 java:Apache Ignite 作为 Postgresql 表的透明缓存

Apache Ignite as transparent cache for Postgresql tables

是否可以使用 Apache Ignite 作为 PostgreSQL RDBMS 中多个表的透明缓存并使用 Ignite SQL 查询该缓存?

例如像这样:

应用程序(通过 SQL)---> Apache Ignite(如果没有加载数据)---> Postgresql

我是 Ignite 的新手,不知道该怎么做,甚至有可能。


Ignite 的 SQL 仅对内存中的数据起作用,因此您需要事先将数据加载到缓存中。换句话说,通读对 SQL 查询不起作用。
从 2.1 版开始,Ignite 提供其自定义持久存储,允许对内存和磁盘中的数据运行 SQL 查询。


如果您在查询之前将数据预加载到缓存中,它将起作用。

您可以通过配置 CacheStore 并调用 IgniteCache#loadCache() 来实现。这是文档:https://apacheignite.readme.io/v2.3/docs/3rd-party-store#cachestore

另一个选项是启用 readThrough 参数并使用缓存 API。不幸的是,此选项对 Ignite SQL 没有影响,并且仅适用于缓存 API。