2016-08-22 4 views
1

DSE 그래프 로더를 사용하여 CSV 파일의 데이터를 DSE 그래프로로드하고 있습니다. DSE 그래프 로더를 사용하여 데이터를로드하는 중 DSE 그래프가 쿼리를 처리하도록 구성되지 않았습니다.

나는 데이터를로드하려면 다음 단계를했다 - 그래프 작성

:

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

설정 별칭 :

:remote config alias g followTopic.g 

는 다음과 같은 스키마를 만들기를 :

,451,515,
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

데이터 작업자가이 작업을 수행 할 수 있도록 도와줍니다. 실제로 일부 설정은 클러스터에 엉망이 된

그래서 우리는 단지는/etc/기본/DSE 파일 -이 클러스터의 노드에서 DSE 그래프 서비스를 활성화하기 만 한 다음 하나의 설정을 새 클러스터를 작성

성공적 DSE Graphloader를 통해로드 할 수 있도록 숫자 값을해야

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() 

또한 대한 타임 스탬프 - 그와 같은 스키마를 업데이트 한 후

GRAPH_ENABLED=1 

.

이 변경 사항을 적용한 후 DSE Graphloader를 통해 데이터를 성공적으로로드 할 수 있습니다.