데이터베이스에서 키/값 테이블을 디자인해야하며이를 수행하는 가장 좋은 방법에 대한 지침을 찾고 있습니다. 기본적으로, 명명 된 속성의 동적 집합에 값을 연결하고이를 외부 키에 적용 할 수 있어야합니다. 데이터베이스 테이블의 키/값 쌍
내가 지원할 수 있어야 할 필요가있는 작업
은 다음과 같습니다- 는
- 열거 현재 활성 키를 모두
- 이 모든 결정 항목 그룹에 키/값 쌍을 적용 주어진 키에 대한 값을 가진 항목
- 주어진 키와 연관된 값이 몇 가지 기준과 일치하는 모든 항목을 결정합니다.
은이 작업을 수행하는 가장 간단한 방법은 테이블을 정의하는 것 같다 :
CREATE TABLE KeyValue (
id int,
Key varchar...,
Value varchar...
);
그것은 내가 어떤 키를 제공하기 때문에 키 열에서 많은 데이터를 복제 될 가능성이 나는 것 같다 많은 수의 문서에 대해 정의 될 수 있습니다. Key varchar를 다른 테이블로 정수 조회로 바꾸면이 문제를 완화하고 (활성 키를 모두 열거하는 것이 훨씬 효율적으로 처리됩니다.) 조회 테이블을 유지 관리하는 문제가 있습니다. 속성을 정의하고 키/값이 지워질 때마다 항목을 제거 할 수 있습니다).
이 작업을 수행하는 가장 좋은 방법은 무엇입니까?
충돌 가능성이 거의 0입니다. 충돌을 일으킬 수있는 슈퍼 악마가 필요합니다. SHA256을 사용할 수 있을지 걱정됩니다. –
DC++에서 개인적으로 해시 충돌 (TTH)을 보았습니다. 불가능하지 않다. – erikkallen