다중값 데이터베이스

MultiValue database

MultiValue 데이터베이스는 NoSQL다차원 데이터베이스의 일종으로, 일반적으로 PICK와 동의어로 간주됩니다.PICK는 원래 PICK 운영체제로 개발된 데이터베이스입니다.

MultiValue 데이터베이스에는 Rocket Software, Revolation, InterSystems, Northgate Information Solutions, ONgroup [1]및 기타 회사의 상용 제품이 포함됩니다.이들 데이터베이스는 모든 Atribute가 단일 값인 것이 아니라 값 목록을 가져올 수 있는 Atribute의 사용을 지원 및 권장하는 기능을 가지고 있다는 점에서 릴레이셔널 데이터베이스와 다릅니다.데이터 모델은 실제로 관계 모델을 미리 작성하지만, 종종 사후 관계형 데이터베이스 범주 내에서 MUMP로 분류됩니다.SQL-DBMS 도구와 달리 대부분의 MultiValue 데이터베이스는 SQL 유무에 관계없이 액세스할 수 있습니다.

역사

Don Nelson은 1960년대 [2]초중반에 MultiValue 데이터 모델을 설계했습니다.TRW의 개발자인 Dick Pick은 1965년 미 육군을 위한 이 모델의 첫 번째 구현 작업에 참여했습니다.Pick은 이 소프트웨어가 군용으로 작성되었기 때문에 공용 도메인에 있는 것으로 간주했다.이는 법원이 [3]제기한 MultiValue 데이터베이스에 관한 첫 번째 분쟁에 불과했습니다.

Ken Simms가 DataB를 작성했습니다.1970년대 중반 S-BASIC으로 알려진 ASIC.Dartmouth BASIC을 기반으로 했지만 데이터 관리 기능이 강화되었습니다.심스는 [4]언어 기능을 만족시키기 위해 언어를 개발하면서 스타트렉을 많이 했다.

MultiValue의 3가지 구현(PICK 버전 R77, Microdata[5] Reality 3.x 및 Prime Information 1.0)은 매우 유사했습니다.특히 모든 사람이 사용할 [6]수 있는 로고를 디자인한 국제 스펙트럼 및 스펙트럼 제조업체 협회에 의해 표준화가 시도되었지만, MultiValue 구현에 대한 표준은 없습니다.그 후, 이러한 맛들은 몇 가지 크로스오버를 거쳤지만.이러한 MultiValue 데이터베이스 개발 흐름은 PICK R83, Microdata Reality 및 Prime [7]Information으로 분류할 수 있습니다.이 차이로 인해 일부 구현에서는 여러 종류의 언어를 지원하는 규정이 있습니다.유사점과 차이점을 문서화하는 시도는 PRDB([8]Post-Relational Database Reference)에서 확인할 수 있습니다.

수년간 마케팅 그룹 및 업계의 다른 그룹은 MultiValue 데이터베이스를 사전 관계형, 사후 관계형, 관계형 및 임베디드형으로 분류했으며, 비평가자들은 종종 MultiValue 데이터베이스를 레거시 데이터베이스로 분류했습니다.이제 NoSQL로 분류할 수 있습니다.JSON XML과 잘 일치하며 SQL 사용 여부와 관계없이 액세스를 허용하는 데이터 모델.

이 데이터 모델이 50년간 [9]지속되고 21세기에도 새로운 데이터베이스 구현이 이루어진다는 합리적인 가설 중 하나는 저렴한 데이터베이스 솔루션을 제공한다는 것입니다.지금까지 업계 벤치마크가 SQL 트랜잭션과 관련되어 있기 때문에 이는 테스트하기 어려운 가설이었습니다.다만, MultiValue 애플리케이션의 기능을 관계형 데이터베이스 프레임워크에 도입하는 시도가 실패했다는 일화는 꽤 있었습니다.

TRW를 시작으로 40년 이상의 구현 역사를 가지고 있지만, 멀티밸류 업계의 대부분은 최신 상태를 유지하고 있으며, 현재 다양한 멀티밸류 구현에서 객체 지향 버전의 Data/B를 사용하고 있습니다.ASIC는 AJAX 프레임워크를 지원합니다.이러한 데이터베이스에서는 SQL을 사용할 필요가 없지만 사용할 수 있는 데이터베이스도 있기 때문에 NoSQL 통합에 적합합니다.실제로 MultiValue 개발자가 nosql 도메인 이름을 최초로 취득한 것은 다른 데이터베이스 제품도 NoSQL로 분류되기 전이었을 가능성이 있습니다.MultiValue는 여러 벤더가 MultiValue 공간에서 경쟁하는 경험 풍부한 데이터 모델입니다.그것은 수년간 지속적으로 개선되어 왔다.

데이터 모델 예시

MultiValue 데이터베이스 시스템의 경우:

  • 데이터베이스 또는 스키마는 "계정"이라고 불립니다.
  • 테이블 또는 컬렉션은 "파일"이라고 불린다
  • 열 또는 필드를 필드 또는 "필드"라고 합니다. "다중값 속성" 및 "하위값 속성"으로 구성되어 동일한 속성에 여러 값을 저장합니다.
  • 행 또는 문서는 "기록" 또는 "항목"이라고 불린다

데이터는 원시 데이터를 저장하는 "파일"과 원시 데이터를 표시하는 형식을 저장하는 "사전"이라는 두 개의 개별 파일을 사용하여 저장됩니다.

예를 들어, "Person"이라는 파일(테이블)이 있다고 가정합니다. 이 파일에는 "eMailAddress"라는 속성이 있습니다.[ eMailAddress ]필드에는 1개의 레코드에 가변 개수의 전자 메일주소 값을 저장할 수 있습니다.목록 [joe@example.com, jdb@example.net, joe_bacde@example.org]은 관련 레코드에 액세스할 때 단일 쿼리를 통해 저장 및 액세스할 수 있습니다.

종래의 관계형 데이터베이스 시스템내에서 같은(1대 다)의 관계를 실현하려면 , 단일의 「Person」레코드에 관련 붙여진 가변수의 전자 메일 주소를 격납하는 추가의 테이블을 작성하는 것이 포함됩니다.그러나 최신 관계형 데이터베이스 시스템은 이 다중값 데이터 모델도 지원합니다.예를 들어 Postgre에서는SQL, 열은 모든 기본 유형의 배열일 수 있습니다.

다중값 데이터BASIC

Java 프로그래밍 언어와 마찬가지로 일반적인 Data/BASIC 컴파일러는 P-코드 또는 바이트코드로 컴파일되어 P-머신에서 실행되지만 jBASE는 [citation needed]예외입니다.MultiValue 데이터베이스 수만큼 다양한 구현(컴파일러)이 있습니다.

PHP 프로그래밍 언어처럼 Data/B는ASIC 언어는 프로그래머의 모든 타이프캐스팅을 수행합니다.

다중값 쿼리 언어

MultiValue 쿼리 언어는 영어, ACCESS, AQL, UniQuery, Retrieve, CMQL로 불리며 여러 MultiValue 구현에 대응하며 여러 가지 점에서 SQL과 다릅니다.각 쿼리는 스키마 내의 1개의 딕셔너리에 대해 발행됩니다.이러한 딕셔너리는 데이터를 표시하기 위한 데이터베이스로의 가상 파일 또는 포털로 이해될 수 있습니다.

LAST_NAME FIRST_NAME E-메일 주소 목록에는 LAST_NAME이 표시됩니다.예: "Van..."

위 문장은 성이 "Van"으로 시작하는 각 사용자의 모든 이메일 주소를 나열합니다.각 개인에 대해 하나의 엔트리가 출력되며, 여러 줄에 여러 개의 전자 메일 주소가 표시됩니다(개인에 대한 다른 데이터는 반복되지 않음).

「 」를 참조해 주세요.

레퍼런스

  1. ^ "ONgroup". www.ongroup.com.
  2. ^ Nelson, Don (1965). "General Information Retrieval Language and System (GIRLS)" (PDF). {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  3. ^ "Microdata Alumni". www.microdata-alumni.org.
  4. ^ Sisk, Jonathan (1987). PICK BASIC: A Programmer's Guide. Tab Books.
  5. ^ "Home". www.northgate-is.com.
  6. ^ "MultiValue Symbol".
  7. ^ Wolthuis, Dawn (2002). "MultiValue Family Tree" (PDF). {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  8. ^ "Post-Relational Database Reference".
  9. ^ Nelson, Don (1964). "Generalized Information Retrieval Language and System (GIRLS)" (PDF). {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)

외부 링크