2017-12-06 2 views
0

내 데이터 구조는 브랜치가 순수 키이고 리프 만 스키마가 적은 문서 인 트리와 유사합니다."leafs"만 문서 인 스키마가없는 계층 적 데이터베이스

예 :

keyA 
 
    KeyA_1 
 
     KeyA_1A{ 
 
      key: value, 
 
      key: value, 
 
      key: valeu 
 
     } 
 
     KeyA_1B 
 
      KeyA_1B_1{ 
 
       key: value, 
 
       key: value, 
 
       key: value 
 
      } 
 
    KeyA_2 
 
     KeyA_2A{ 
 
      key: value, 
 
      key: value 
 
     } 
 
KeyB 
 
    KeyB_1{ 
 
     key: value, 
 
     key: value, 
 
     key: valeu 
 
    } 
 
    KeyB_2{ 
 
     key: value 
 
    }

나에 대한 권리는 데이터베이스입니다

?

+0

제한 있음? (외래 키) –

+0

리프 사이에 아무런 관계가 없습니다. –

답변

0

여기에 설명 된 데이터 구조가 DB에서 어떻게 보이는지 생각하지 않습니다. 응용 프로그램에서 고려하는 방식입니다.

저장하고 싶다면 쉽게 여행 할 수 있습니다. 다음 필드가있는 각 노드가 노드 (행/문서) 인 노드 목록으로 트리를 저장하는 것이 좋습니다.

  • ID (옵션 JSON) (PK)
  • 키 (당신은 아직도 그것을 필요로하는 경우)
  • 다음 (FK, 널 (NULL))
  • 데이터

티 당신이 선호하는 트리 - 트래버스 기법을 사용하여 next = null을 만날 때까지 나무를 만들고 여행 할 수 있습니다.

DB 자체에 대해, 당신이 선호하는 것을 선택할 수 있습니다 (합리적/비 합리적인, Postgres v9.2 + 또는 MySql v5.7 +는 JSONB/JSON을 가지고 있기 때문에 좋은 해결책이 될 수 있습니다) 귀하의 데이터에 대한 현장 지원

관련 문제