키-밸류 데이터베이스
Key–value database
키-값 데이터베이스(key-value database) 또는 키-값 저장소는 관련 어레이를 저장, 검색 및 관리하기 위해 설계된 데이터 스토리지 패러다임이며, 오늘날 사전 또는 해시 테이블로 더 일반적으로 알려져 있습니다.사전에는 개체 또는 레코드의 집합이 포함되어 있으며, 개체 또는 레코드는 각각 데이터를 포함하는 여러 개의 다른 필드를 가지고 있습니다.이러한 레코드는 레코드를 일의로 식별하는 키를 사용하여 저장 및 취득되며 데이터베이스 내의 데이터를 찾는 데 사용됩니다.
Key-Value 데이터베이스는 더 잘 알려진 Relational Database(RDB; 관계형 데이터베이스)와는 매우 다른 방식으로 작동합니다.RDB는 데이터 유형이 잘 정의된 필드를 포함하는 일련의 테이블로 데이터베이스의 데이터 구조를 미리 정의합니다.데이터 유형을 데이터베이스 프로그램에 노출하면 여러 가지 최적화를 적용할 수 있습니다.이와는 대조적으로, 키-값 시스템은 데이터를 불투명한 단일 집합으로 취급하며, 각 기록마다 다른 필드를 가질 수 있습니다.이는 상당한 유연성을 제공하며 객체 지향 프로그래밍과 같은 현대적인 개념을 보다 밀접하게 따릅니다.대부분의 RDB와 같이 옵션 값은 플레이스 홀더나 입력 파라미터로 표시되지 않기 때문에 키 값 데이터베이스는 동일한 데이터베이스를 저장하기 위해 사용하는 메모리가 훨씬 적기 때문에 [citation needed]특정 워크로드에서 성능이 크게 향상될 수 있습니다.
성능, 표준화 부족 및 기타 문제로 인해 수년간 키와 가치 시스템이 틈새 용도로 제한되었지만, 2010년 이후 클라우드 컴퓨팅으로 빠르게 전환되면서 광범위한 NoSQL 운동의 일부로 부흥하게 되었습니다.ArangoDB와 [1]같은 일부 그래프 데이터베이스도 내부적으로 핵심 가치 데이터베이스이며, 일급 데이터 유형으로서 레코드 간의 관계(점수) 개념을 추가한다.
종류들
키-값 데이터베이스는 궁극적인 일관성부터 직렬화까지 다양한 일관성 모델을 사용할 수 있습니다.일부에서는 키 순서를 지원합니다.
메모리(RAM)에 데이터를 보관 유지하는 기업이 있는가 하면 솔리드 스테이트 드라이브 또는 회전 디스크를 사용하는 기업도 있습니다.
모든 엔티티(레코드)는 키와 값의 페어 세트입니다.키에는 순서 목록으로 지정된 여러 구성 요소가 있습니다.메이저 키는 레코드를 식별하고 키의 주요 컴포넌트로 구성됩니다.이후의 컴포넌트는 마이너키라고 불립니다이 조직은 파일 시스템의 디렉토리 경로 지정과 유사합니다(예: /Major/minor1/minor2/).키와 값 쌍의 "값" 부분은 단순히 임의의 [2]길이의 바이트 문자열입니다.
Unix 시스템은 원래 Ken Thompson에 의해 작성된 1979년 라이브러리인 dbm(데이터베이스 매니저)을 제공합니다.또, Microsoft Windows 에 이식되어 Perl for Win32 등의 프로그래밍 언어를 통해서도 제공됩니다.dbm은 단일 키(프라이머리 키)를 사용하여 임의 데이터의 연관 배열을 관리합니다.최신 구현에는 sdbm, GNU dbm 및 Berkeley DB가 포함됩니다.dbm은 NoSQL의 개념보다 앞서서 현대의 담론에서는 거의 언급되지 않지만 많은 소프트웨어에서 사용되고 있습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "Storage Engines". ArangoDB. Retrieved 16 November 2020.
- ^ Oracle NoSQL 데이터베이스.