Я новичок в Apache Ignite и смог запустить хранилище с Cassandra с использованием Java. Возможно ли сделать то же самое с помощью Ignite C++? Если да, то как выполняется сериализация объектов семейства столбцов Cassandra с помощью класса C++?
Постоянное хранилище с Ignite C++
comment
Вы проверили это apacheignite-mix.readme.io/ v1.9/документы/
- person Ashraful Islam   schedule 14.05.2017
comment
Да, но не так много на Ignite C++.
- person kjk   schedule 15.05.2017
Ответы (1)
Ignite хранит данные в двоичном формате [1], а хранилище кеша работает с двоичным объектом, а не с вашими классами. Поэтому нет никакой разницы, были ли данные получены из Java, C++ или .NET. Вы можете использовать функцию сохранения без изменений.
[1] https://apacheignite.readme.io/docs/binary-marshaller
person
Valentin Kulichenko
schedule
15.05.2017
Большое спасибо. Постоянный кеш работал из моей кодовой базы C++. Но мне все еще нужен POJO для этого. Есть ли способ избежать POJO и использовать класс С++?
- person kjk; 21.05.2017
Да, на данный момент Cassandra требует классов POJO, если вы используете стратегию POJO. Однако вы можете сохранять объекты как BLOB, в этом случае классы не требуются.
- person Valentin Kulichenko; 22.05.2017
Есть ли какие-нибудь примеры для Ignite C++ с Cassandra для постоянства? Может ли кто-нибудь добавить его в git. Спасибо.
- person kjk; 25.05.2017
Нет никакой разницы между C++ и Java с точки зрения конфигурации постоянства. Если вы используете стратегию
BLOB
, вам даже не нужны классы Java. В случае стратегии POJO
вам потребуется создать классы POJO на Java, которые соответствуют классам вашей модели данных на C++.
- person Valentin Kulichenko; 29.05.2017
Итак, как мы можем сопоставить поля Cassandra для запуска кэша, я имею в виду запуск C++?
- person kjk; 29.05.2017
Кэш внутренне по-прежнему работает на Java и даже не знает, что вы судитесь с C++ :) Так что конфигурация Cassandra предоставляется точно так же, как описано в документации. Единственное дополнительное требование, которое существует сейчас (и будет удалено в будущем, BTW), — это создание классов моделей Java, соответствующих классам моделей C++ (тем, которые вы хотите сохранить в Cassandra). Двоичный протокол Ignite поддерживает совместимость по умолчанию, вы можете прочитать здесь, например: apacheignite-cpp .readme.io/docs/cross-platform-interoperability
- person Valentin Kulichenko; 29.05.2017