Нет такого свойства: ToInputStream для класса: Script4 - PullRequest
1 голос
/ 23 марта 2020

У меня есть ситуация, когда я хочу импортировать данные графа в базу данных. У меня есть janusgraph (последняя версия), работающий с cassandra (версия 3) иasticsearch (версия 6.6.0) с использованием Docker. Мне предложили использовать gryo формат. Итак, я пробовал эту команду

graph.io(IoCore.gryo()).reader().create().readGraph(ToInputStream.from("my_graph.kryo"), graph);

, но в итоге обнаружил ошибку

No such property: ToInputStream for class: Script4

Документация, которой я следую, здесь .Пожалуйста, взгляни и введи меня в правильную процедуру. Заранее спасибо!

1 Ответ

4 голосов
/ 23 марта 2020

ToInputStream не является функцией Gremlin или JanusGraph. Я считаю, что это только функция IBM Compose, поэтому, если вы не запускаете JanusGraph на этой указанной c платформе, эта команда не будет работать.

Версии JanusGraph, использующие TinkerPop 3.4.x, будут поддерживать io() step и это предпочтительный способ загрузки файлов gryo (а также graphson и graphml).

Graph graph = ... // setup JanusGraph instance
GraphTraversalSource g = traversal().withGraph(graph); // might use withRemote() here instead depending on how you are connecting I suppose
g.io("graph.kryo").read().iterate()

Обратите внимание, что если вы подключаетесь удаленно - кажется, вы отправляете сценарии в экземпляр Docker с учетом вашей ошибки - тогда убедитесь, что путь к файлу "graph.kryo" доступен для Docker. Вот что приятно в ToInputStream от Compose, поскольку он позволяет вам получать доступ к удаленным источникам.

...