2015-09-06 2 views
0

Im toataly новый с TitanDB. Im использовать его с Кассандрой & Java:Загрузить график Titan с Gremlin

Файл конфигурации:

storage.backend=cassandra 
[email protected][email protected] 

Java код:

TitanGraph tg = TitanFactory.open(/*the configuration above*/); 
if (tg.isOpen()) { 
    TitanManagement tm = tg.getManagementSystem(); 
    PropertyKey key = tm.getPropertyKey(name); 
    /* The rest of the nice working code */ 
} 

код Java работает отлично, я могу запросить график, сделать CRUD операции и т.д. ..

Теперь я хочу запросить график без использования JAVA. Сначала я попытался с помощью cqlsh там я увидел это:

Keyspace titan 
-------------- 
edgestore  graphindex  system_properties  systemlog txlog 
edgestore_lock_ graphindex_lock_ system_properties_lock_ titan_ids 

после копания в ней я понял, что мне нужно использовать инструмент как gremlin для запроса TitanDB правильно. Но когда я Тринг для подключения TitanDB через гномы я получаю сообщение:

gremlin> TitanFactory.open("cassandra.local") 
No such property: TitanFactory for class: groovysh_evaluate 
Display stack trace? [yN] y 
groovy.lang.MissingPropertyException: No such property: TitanFactory for class: groovysh_evaluate 
     at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:50) 
     at org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty(PogoGetPropertySite.java:49) 
     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGroovyObjectGetProperty(AbstractCallSite.java:231) 
     at groovysh_evaluate.run(groovysh_evaluate:51) 
     at groovysh_evaluate$run.call(Unknown Source) 
     at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) 
     at groovysh_evaluate$run.call(Unknown Source) 
     at org.codehaus.groovy.tools.shell.Interpreter.evaluate(Interpreter.groovy:67) 
     at org.codehaus.groovy.tools.shell.Interpreter$evaluate.call(Unknown Source) 
     at org.codehaus.groovy.tools.shell.Groovysh.execute(Groovysh.groovy:152) 
     at org.codehaus.groovy.tools.shell.Shell.leftShift(Shell.groovy:114) 
     at org.codehaus.groovy.tools.shell.Shell$leftShift$0.call(Unknown Source) 
     at org.codehaus.groovy.tools.shell.ShellRunner.work(ShellRunner.groovy:88) 
     at org.codehaus.groovy.tools.shell.InteractiveShellRunner.super$2$work(InteractiveShellRunner.groovy) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:497) 
     at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
     at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) 
     at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1079) 
     at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:128) 
     at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuper0(ScriptBytecodeAdapter.java:148) 
     at org.codehaus.groovy.tools.shell.InteractiveShellRunner.work(InteractiveShellRunner.groovy:100) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:497) 
     at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:272) 
     at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:52) 
     at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:137) 
     at org.codehaus.groovy.tools.shell.ShellRunner.run(ShellRunner.groovy:57) 
     at org.codehaus.groovy.tools.shell.InteractiveShellRunner.super$2$run(InteractiveShellRunner.groovy) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:497) 
     at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
     at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) 
     at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1079) 
     at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:128) 
     at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuper0(ScriptBytecodeAdapter.java:148) 
     at org.codehaus.groovy.tools.shell.InteractiveShellRunner.run(InteractiveShellRunner.groovy:66) 
     at com.tinkerpop.gremlin.groovy.console.Console.<init>(Console.java:60) 
     at com.tinkerpop.gremlin.groovy.console.Console.main(Console.java:102) 

Мой вопрос: Как я могу получить Gremlin знать TitanFactory - и, наконец, как я могу работать с гном на мой существующий TitanDB v. 0.5.4?

Спасибо.

ответ

3

Если вы загрузили Gremlin 2.x с сайта TinkerPop, я ожидал бы увидеть вашу ошибку, потому что у нее нет библиотек Titan в пути к классам.

Вы должны получить Titan 0.5.4 от thinkaurelius и следовать документации Gremlin Shell.

http://s3.thinkaurelius.com/docs/titan/0.5.4/getting-started.html#_downloading_titan_and_running_the_gremlin_shell

+0

Thanks man !!! Это было слишком просто - не знаю, как я это пропустил ... – yossico