Apache Ignite как прозрачный кеш для таблиц Postgresql

Можно ли использовать Apache Ignite в качестве прозрачного кеша для нескольких таблиц в СУБД PostgreSQL и запрашивать этот кеш с помощью Ignite SQL?

Например так:

Приложение (через SQL) ---> Apache Ignite (если данные не загружены) ---> Postgresql

Я новичок в Ignite и не могу понять, как это сделать, или это вообще возможно.


person JohnGray    schedule 05.12.2017    source источник


Ответы (2)


SQL Ignite работает только с данными в памяти, поэтому вам необходимо заранее загрузить данные в кеши. Другими словами, сквозное чтение не работает для SQL-запросов.
Начиная с версии 2.1 Ignite предоставляет свой собственный постоянное хранилище, которое позволяет запускать SQL-запросы к данным как в памяти, так и на диске.

person alexmagnus    schedule 05.12.2017

Это будет работать, если вы предварительно загрузите данные в кеш перед запросом.

Вы можете сделать это, настроив CacheStore и вызвав IgniteCache # loadCache (). Вот документация: https://apacheignite.readme.io/v2.3/docs/3rd-party-store#cachestore

Другой вариант - включить readThrough и используйте API кеширования. К сожалению, эта опция не влияет на Ignite SQL и работает только для API кеширования.

person Denis    schedule 05.12.2017