Neo4j, SDN5 и индекс над полем объекта

У меня есть следующая сущность узла SDN5:

@NodeEntity
public class Value {

    @Index(unique = false)
    private Object value;

}

Как видите, я определил value как Object и поместил индекс по этому.

Согласно бизнес-логике моего приложения, я помещаю различные типы Java в Value.value лайк String, Long, Double, Integer и т.д. Учитывая это, мне интересно, будет ли индекс Neo4j эффективно работать там? Есть ли здесь какой-то смысл? Пожалуйста, объясни.

2 ответа

Я ничего не могу сказать вам о производительности, но технически это возможно сделать.

Одна идея, которая пришла мне в голову, чтобы избежать смешанных типов в базе данных, состоит в том, чтобы использовать конвертер для свойства, которое не делает ничего, кроме .toString() и обратно (может быть уродливым кодом для преобразования обратно в Java и отбрасывать некоторые типы, например, в разнице не будет Double а также Float).

Значения свойств могут быть только примитивных типов или массивов для свойства узла.

Другие вопросы по тегам