2016-12-18 6 views
0

어제 나는 그렉 젊은 https://www.youtube.com/watch?v=hv2dKtPq0ME&t=24m54s유지하는 데이터 모델 (MySQL과 Neo4j)

에 의해 놀라운 이야기 수개 국어로 데이터를 본 내가 진심으로 주요 지점에 동의하면서, 그것은 현명한 모든 것을 명확 구현하지 않습니다. 동영상의 특정 부분에서 그가 추진하고있는 아이디어는 클라이언트가 자신의 상태를 유지해야한다는 것입니다. 이는 합리적이지만 MySQL에 "마스터"레코드가 있어야하며 그 다음에 Neo4j로 전파됩니다. 사건의 형태?

그렇다면 우리는 SQL에서 그래프 구조를 유지해야 할 것입니다. >. <

답변

1

그는 비디오의 지정된 부분에 미는 아이디어는 클라이언트가 합리적이다하지만이 될 것 MySQL의에서 "마스터"기록이 있어야한다는 것을 의미 않고 자신의 상태의 유지해야한다는 것입니다 이벤트의 형태로 Neo4j에 전파 되었습니까?

짧은 대답 : 예 - 클라이언트 프로세서가 자신의 읽기 위치를 추적하고 업데이트 기록을 요청합니다. 이 업데이트는 Neo4j 인스턴스의 변경 사항으로 변환되어 적용됩니다.

이론적으로 이벤트의 형태로 가져온 업데이트는 실제로 필요하지 않습니다. 전체 기록의 스냅 샷이 작동합니다. 변경 스트림을 사용하면 아직 읽지 않은 것을 걱정하지 않고도 작은 정보를 처리 할 수 ​​있으므로 지금까지 본 내용의 의미가 변경됩니다.

그렇다면 SQL에서 그래프 구조를 유지해야한다는 의미일까요?

아니 그래프 구조, 아니 - 모든 상태의 구조를 생성하는 데 사용됩니다. 읽기 모델은 관련없는 상태를 무시할 수있는보기입니다. 관련 상태를보다 적절한 데이터 구조로 변환 할 수 있지만 기록부에 아직 표시되지 않은 상태는 포함하지 않아야합니다.