현재 알려진 객체 관계형 데이터베이스 관리 시스템포스트그레SQL(간단히 전화함토토 베이95)는에서 파생됩니다.포스트그레스다음에 작성된 패키지 버클리 캘리포니아 대학. 10년이 넘는 경력으로 그 뒤에 개발,토토 베이QL가장 발전된 오픈 소스입니다. 어디서든지 데이터베이스 사용 가능, 다중 버전 동시성 제공 거의 모든 SQL 구성을 지원하는 제어(포함) 하위 선택, 트랜잭션, 사용자 정의 유형 및 함수) 광범위한 언어 바인딩을 사용할 수 있습니다(포함). C, C++, 자바, Perl, Tcl 및 Python).
구현포스트그레스 DBMS1986년에 시작되었습니다. 초기 개념 시스템에 대한 설명은디자인포스트그레스및 정의 초기 데이터 모델은 다음에서 나타났습니다.그포스트그레스데이터 모델. 당시 규칙 시스템의 설계는 다음과 같습니다. 설명됨의 디자인포스트그레스규칙 시스템. 스토리지의 이론적 근거와 아키텍처 관리자가 자세히 설명했습니다.디자인포스트그레스스토리지 시스템.
포스트그레스을 겪었습니다 그 이후로 몇 가지 주요 릴리스가 출시되었습니다. 첫 번째"데모웨어"시스템은 1987년에 작동되었으며 1988년에 상영되었습니다.ACM-SIGMOD회의. 버전 1, 설명됨 에서구현포스트그레스, 일부에게 출시되었습니다. 1989년 6월 외부 사용자. 첫 번째 규칙 시스템(에 대한 해설포스트그레스규칙 시스템), 규칙 시스템이 재설계되었습니다(규칙, 절차, 캐싱 및 보기에 대해 데이터베이스 시스템) 및 버전 2는 1990년 6월에 출시되었습니다. 새로운 규칙 시스템으로. 버전 3은 1991년에 등장하여 추가되었습니다. 여러 스토리지 관리자 지원, 향상된 쿼리 실행자 및 재작성 재작성 규칙 시스템. 대부분의 경우 부분, 후속 릴리스까지토토 베이95(아래 참조)에 집중함 이식성과 신뢰성.
포스트그레스다음에 사용되었습니다. 다양한 연구 및 생산 애플리케이션을 구현합니다. 여기에는 재무 데이터 분석 시스템, 제트 엔진이 포함됩니다. 성능 모니터링 패키지, 소행성 추적 데이터베이스, 의료 정보 데이터베이스 및 여러 지리적 정보 시스템.포스트그레스또한 여러 곳에서 교육 도구로 사용되었습니다. 대학. 마지막으로 Illustra Information Technologies(나중에 로 병합됨인포믹스입니다. 현재 소유자는IBM.) 코드를 집어 상용화했습니다.포스트그레스기본이 됨 의 데이터 관리자세쿼이아 2000과학 컴퓨팅 프로젝트 말기 1992.
외부 사용자 커뮤니티의 규모가 거의 두 배로 늘어났습니다. 1993년 동안. 프로토타입 코드와 지원이 많은 양을 차지하고 있었습니다. 데이터베이스 연구에 투자했어야 할 시간입니다. 에 이러한 지원 부담을 줄이기 위한 노력, Berkeley포스트그레스프로젝트가 공식적으로 종료되었습니다. 버전 4.2.
1994년에 Andrew Yu와 Jolly Chen이 SQL 언어를 추가했습니다. 통역사에게포스트그레스. 토토 베이95이후 세상에서 자신의 길을 찾기 위해 웹에 출시되었습니다. 원본의 오픈 소스 후손포스트그레스버클리 코드.
토토 베이95코드는 다음과 같습니다 완전히 ANSI C이고 크기가 25% 줄었습니다. 많은 내부 성능과 유지 관리가 향상되었습니다.토토 베이95릴리스 1.0.x는 약 30-50% 실행되었습니다. 위스콘신 벤치마크에서는 다음과 비교하여 더 빠릅니다.포스트그레스, 버전 4.2. 버그 외에도 수정 사항은 다음과 같습니다. 주요 개선 사항은 다음과 같습니다.
쿼리 언어 PostQUEL이 다음으로 대체되었습니다.SQL(다음에서 구현됨 서버). 하위 쿼리는 다음까지 지원되지 않았습니다.토토 베이QL(아래 참조) 그러나 그들은 할 수 있었습니다 흉내를 내다토토 베이95사용자 정의 포함SQL함수. 집계가 다시 구현되었습니다. 에 대한 지원 GROUP BY 쿼리 절도 추가되었습니다.libpq인터페이스는 계속 사용할 수 있습니다.C프로그램.
모니터 프로그램 외에 새로운 프로그램 (psql)가 제공되었습니다. 다음을 사용하는 대화형 SQL 쿼리GNU Readline.
새로운 프런트엔드 라이브러리,libpgtcl, 지원됨Tcl기반 클라이언트. 샘플 셸,pgtclsh, 새로운 Tcl 명령 제공 인터페이스로Tcl프로그램 와 함께토토 베이95백엔드.
대형 개체 인터페이스가 전면 개편되었습니다. 반전 큰 개체는 큰 개체를 저장하는 유일한 메커니즘이었습니다. 객체. (반전 파일 시스템이 제거되었습니다.)
인스턴스 수준 규칙 시스템이 제거되었습니다. 규칙은 다음과 같습니다 재작성 규칙으로 계속 사용할 수 있습니다.
레귤러를 소개하는 짧은 튜토리얼SQL다음의 기능 및 기능토토 베이95배포되었습니다 소스 코드 포함
GNU만들다(대신에BSDmake)가 다음 용도로 사용되었습니다. 빌드. 또한,포스트그레스95다음으로 컴파일될 수 있습니다. 패치되지 않음GCC(데이터 복식 정렬이 수정되었습니다.)
1996년에 이름이 분명해졌습니다."토토 베이95"시간의 시험을 견디지 못할 것입니다. 우리는 새로운 이름을 선택했습니다.토토 베이QL, 관계를 반영하기 위해 원본 사이포스트그레스및 최신 버전SQL능력. 동시에 우리는 설정했습니다. 버전 번호를 6.0부터 시작하여 번호를 다시 붙입니다. Berkeley가 원래 시작한 시퀀스로포스트그레스프로젝트.
개발 중 강조점토토 베이95식별 중이었고 백엔드 코드의 기존 문제를 이해합니다. 와 함께포스트그레SQL, 강조점은 기능을 강화하는 쪽으로 전환했지만, 모든 분야에서 계속됩니다.
주요 개선 사항토토 베이QL포함:
테이블 수준 잠금이 다중 버전으로 대체되었습니다. 동시성 제어를 통해 독자는 계속해서 작업을 수행할 수 있습니다. 작성자 활동 중에 일관된 데이터를 읽고 이를 가능하게 합니다. 핫 백업pg_dump데이터베이스에서 쿼리를 계속 사용할 수 있는 동안.
하위 선택을 포함한 중요한 백엔드 기능, 기본값, 제약 조건 및 트리거가 변경되었습니다. 구현되었습니다.
추가SQL92호환 언어 기능에는 기본 키, 인용된 식별자를 포함하여 추가되었습니다. 리터럴 문자열 유형 강제 변환, 유형 캐스팅, 바이너리 및 16진수 입력입니다.
새 기능을 포함하여 내장 유형이 개선되었습니다. 광범위한 날짜/시간 유형 및 추가 기하학적 유형 지원합니다.
전체 백엔드 코드 속도가 다음과 같이 향상되었습니다. 약 20-40%이며 백엔드 시작 시간은 버전 6.0 출시 이후 80% 감소했습니다.