나는 타이탄에게 새로운 것을 알았습니다. 그리고 그걸 연구하기 시작했을 때, 그레맥과 씽크 패드와 같은 새로운 것들이 너무 많아서 혼란 스러웠습니다. rexter 등.타이탄 카탄드라를 백엔드로 사용 : 자바로 그래프를 생성, 저장 및 트래킹하기
내가 원한 것은 카산드라를 백엔드로하여 타이탄을 사용하는 자바의 예다. 그래프를 만들고, 카산드라에 저장하고, 다시 검색하고, 트래버스합니다. 아주 간단한 것도 많은 도움이 될 것입니다.
내가 실행 한 java에서 기본 예제가 있습니다. 나는이 프로그램을 실행할 때
BaseConfiguration baseConfiguration = new BaseConfiguration();
baseConfiguration.setProperty("storage.backend", "cassandra");
baseConfiguration.setProperty("storage.hostname", "192.168.3.82");
TitanGraph titanGraph = TitanFactory.open(baseConfiguration);
Vertex rash = titanGraph.addVertex(null);
rash.setProperty("userId", 1);
rash.setProperty("username", "rash");
rash.setProperty("firstName", "Rahul");
rash.setProperty("lastName", "Chaudhary");
rash.setProperty("birthday", 101);
Vertex honey = titanGraph.addVertex(null);
honey.setProperty("userId", 2);
honey.setProperty("username", "honey");
honey.setProperty("firstName", "Honey");
honey.setProperty("lastName", "Anant");
honey.setProperty("birthday", 201);
Edge frnd = titanGraph.addEdge(null, rash, honey, "FRIEND");
frnd.setProperty("since", 2011);
titanGraph.shutdown();
그래서, 나는 카산드라 로그를 관찰하고 그것은 키 스페이스라는 이름의 타이탄 다음과 같은 테이블 생성 :
- titan_ids을
- edgestore
- graphindex
- system_properties
- 시스템 로그
- txlog
- edgestore_lock_
- graphindex_lock_
- system_properties_lock_
나는이 테이블에 사용되는 모르는 그들이 어떻게 데이터를 저장한다.
두 개의 꼭지점과 가장자리 사이의 가장자리를 그래프로 만드는 프로그램을 실행 한 후. 나는 테이블을 쿼리하고 각각의 테이블에서 16 진수 값을 발견했다.
나는 다음과 같은 질문을했다 :
그래프는 카산드라에 저장되는 방법?
이제이 그래프에서 'x'가 카산드라에 저장되어 있다고 가정 해 보겠습니다. 다른 그래프 'y'를 작성하여 저장했다고 가정 해보십시오. 특정 그래프를 검색하고 트래버스 할 수있는 방법은 무엇입니까? 왜냐하면 일반적인 cql 쿼리에서 테이블과 컬럼이 쿼리한다는 것을 알기 때문입니다. 어떻게 'x'와 'y'를 구분할 것인가?
Java에서 샘플 코드를 게시하여 샘플 CSV 데이터를 사용하여 그래프를 만들 수 있도록 도와 줄 수 있습니까? 카산드라 (Cassandra)에 저장하고 동일한 그래프의 일부 트래버스 예제를 저장하십시오. 이해할 수있는 그러한 예제가 없기 때문에 많은 도움이 될 것입니다.
Titan이 정말로 필요합니까? Datastax는 Cassandra에 관한 그래프를 가지고 있습니다. http://www.datastax.com/dse-graph-campaign/index.html –
@ cricket_007 DSE는 내가 믿는 상용 제품입니다. 그래서 DSE를 위해 돈을 절약 할 수 없다면 titan을 사용하는 것이 좋은 대안입니다. [JanusGraph] (https://github.com/JanusGraph/janusgraph)도 좋은 무료 대안입니다. –
@FilipeTeixeira –