2016-08-22 70 views
1

我正在使用DSE图形加载器将数据从CSV文件加载到DSE图。尝试使用DSE图形加载器加载数据时出现错误 - DSE图未配置为处理查询

我做了以下步骤来加载数据 -

创建的图形:

system.graph('followTopic').create() 

设置别名:

:remote config alias g followTopic.g 

创建以下模式:

schema.propertyKey("id").Text().single().create() 
schema.propertyKey("follower").Text().single().create() 
schema.propertyKey("name").Text().single().create() 
schema.propertyKey("type").Text().single().create() 
schema.propertyKey("followed").Text().single().create() 
schema.propertyKey("timestamp").Timestamp().single().create() 
schema.vertexLabel("record").partitionKey("id").create() 
schema.vertexLabel("user").properties("name").create()` 

映射文件:

// CONFIGURATION 

// Configures the data loader to create the schema 
config create_schema: false, load_new: true, load_threads: 3 

// DATA INPUT 
// Define the data input source (a file which can be specified via command line arguments) 
// inputfiledir is the directory for the input files 

inputfiledir = '/home/adminuser/data/' 
followTopic = File.csv(inputfiledir + "follow.csv").delimiter(',') 

//Specifies what data source to load using which mapper (as defined inline) 

load(followTopic).asVertices { 
    label "record" 
    key "id" 
} 

的我用CSV是:

id,follower,followed,type,timestamp 
1,@20cburns,topic_/best-friend,topic,5/7/2016 11:03:42 PM +00:00 
2,@68,topic_/tears-fall,topic,5/3/2016 2:20:01 AM +00:00 
3,@abba,topic_/best-friend,topic,6/15/2016 4:08:24 PM +00:00 
… 

然后在运行graphloader命令我得到下面提到的错误 -

./graphloader ../followTopinMapping.groovy -filename ../follow.csv -graph followTopic -address localhost 

异常错误消息:

2016-08-22 14:18:00 ERROR DataLoaderImpl:519 - Graph driver attempts exceeded for this operation, logging failure, but no records are present (may have been a schema operation) 
com.datastax.dsegraphloader.exception.TemporaryException:  com.datastax.driver.core.exceptions.InvalidQueryException: DSE Graph not configured to process queries 
at com.datastax.dsegraphloader.impl.loader.driver.DseGraphDriverImpl.executeGraphQuery(DseGraphDriverImpl.java:71) 
at com.datastax.dsegraphloader.impl.loader.driver.DseGraphDriverImpl.executeGraphQuery(DseGraphDriverImpl.java:87) 
at com.datastax.dsegraphloader.impl.loader.driver.DseGraphDriverImpl.getSchema(DseGraphDriverImpl.java:128) 
at com.datastax.dsegraphloader.impl.loader.driver.SafeGraphDriver.lambda$tryGetSchema$14(SafeGraphDriver.java:94) 
at com.datastax.dsegraphloader.impl.loader.DataLoaderImpl.execute(DataLoaderImpl.java:194) 
at com.datastax.dsegraphloader.impl.loader.DataLoaderBuilder.execute(DataLoaderBuilder.java:101) 
at com.datastax.dsegraphloader.cli.Executable.execute(Executable.java:69) 
at com.datastax.dsegraphloader.cli.Executable.main(Executable.java:163) 

关于错误消息“DSE图形没有被配置为处理查询”什么做我需要为DSE格拉夫装载机配置加载数据中DSE图表?

回答

0

得到DataStax的帮助,让这项工作。

其实一些设置已在集群上搞砸了,所以我们就创建了一个新的群集,然后只是做了一个设定,以使在/ etc /默认/ DSE文件 - 这个集群的节点上的DSE图表服务

GRAPH_ENABLED=1 

该更新架构的后 -

schema.propertyKey("id").Text().single().create() 
schema.propertyKey("follower").Text().single().create() 
schema.propertyKey("name").Text().single().create() 
schema.propertyKey("type").Text().single().create() 
schema.propertyKey("followed").Text().single().create() 
schema.propertyKey("timestamp").Timestamp().single().create() 
schema.vertexLabel("record").partitionKey("id").properties("follower", "name", "type", "followed", "timestamp").create() 

另外,关于时间戳应该是一个数字值,它通过DSE Graphloader被成功加载。

完成这些更改后,我可以通过DSE Graphloader成功加载数据。