Чтобы сохранить данные в мобильном приложении, я пытаюсь решить, использовать ли apollo-cache-persist или локальную базу данных, такую как Sqlite
.
На основе * 1006. * свои документы , Apollo хочет, чтобы их кеш был единственным источником правды для всех данных в клиентском приложении:
В идеале, мы бы хотели, чтобы кеш Apollo был единственным источником правдыдля всех данных в нашем клиентском приложении.
Но может ли apollo-cache-persist
полностью заменить использование локальной базы данных?
Помимо постоянных данных, существуют другие требования, которыеЯ хотел бы знать, поддерживаются ли они apollo-cache-persist
или нет:
- Можно ли получить данные из кэша с помощью сложных операций запросов, таких как объединения SQL?
В качестве примера, скажем, у нас есть 2 объекта: Страна и Штат, и мы хотим получить состояния стран, название которых начинается с буквы «А». В реляционной базе данных мы можем использовать соединения SQL. Но как насчет извлечения тех же данных из кеша? это возможно?
Если происходит критическое изменение схемы, возможно ли сохранить старые данные в кэше?
На странице github на тот же вопрос отвечают, сказав, что
... невозможно перенести или преобразовать данные сохраненного кэша
и затем продемонстрировать в коде, что старые данные должны быть удалены.
Может ли это быть препятствием для замены локальной базы данных на apollo-cache-persist?