타임스텐
TimesTen| 개발자 | 오라클 코퍼레이션 |
|---|---|
| 안정된 릴리스 | 18.1.4 |
| 플랫폼 | 크로스 플랫폼 |
| 유형 | 관계형 데이터베이스 관리 시스템 |
| 면허증. | 독자 사양 |
| 웹 사이트 | TimesTen 홈페이지 |
Oracle TimesTen In-Memory Database는 지속성과 고가용성을 갖춘 인메모리 관계형 데이터베이스 관리 시스템입니다.원래 설계 및 구현은 캘리포니아주 팔로알토에 있는 Hewlett-Packard 연구소에서 이루어졌으며, TimesTen은 1996년에 독립된 스타트업으로 분사되어 [1]2005년에 Oracle Corporation에 인수되었다.
TimesTen 데이터베이스는 영속적이며 고가용성이 가능합니다.메모리 내 데이터베이스이기 때문에 매우 낮은 지연 시간과 높은 스루풋을 제공합니다.표준 관계형 데이터베이스 API 및 SQL 및 PL/SQL 언어 등의 인터페이스를 제공합니다.응용 프로그램은 ODBC 및 JDBC와 같은 표준 데이터베이스 API를 사용하여 TimesTen에 액세스합니다.
TimesTen은 독립형 데이터베이스로 사용할 수 있으며 Oracle [2]Database와 같은 다른 관계형 데이터베이스 앞에서 캐시로도 자주 사용됩니다.이는 선불 통신 과금 및 금융 거래와 같은 매우 대용량 OLTP 애플리케이션에서 자주 사용됩니다.또한 매우 큰 웹 사이트 및 위치 기반 서비스와 같은 읽기 집약적인 응용 프로그램에도 사용됩니다.
TimesTen은 단일 머신에서 사용 가능한 RAM보다 훨씬 큰 데이터베이스를 지원하는 아무것도 공유되지 않는 클러스터 시스템(TimesTen 스케일아웃)으로 구성할 수 있으며 확장 가능한 throughput과 고가용성을 제공합니다.또한 데이터베이스(TimesTen Classic)의 복제된 액티브/스탠바이 쌍으로 구성하여 고가용성과 마이크로초 응답 시간을 제공할 수도 있습니다.
TimesTen은 Linux, Solaris 및 AIX에서 실행되며 Windows [3]및 MacOS에서 실행되는 클라이언트 애플리케이션도 지원합니다.
테크놀로지
TimesTen은 매우 빠른 데이터 액세스 시간을 제공하는 인메모리 데이터베이스입니다.그러면 실행 시 모든 데이터가 물리적 메모리(RAM)에 저장됩니다.이를 통해 내부 검색 및 데이터 관리 알고리즘을 단순화할 수 있어 일반 하드웨어에서도 응답 시간이 매우 단축됩니다.TimesTen은 최대 테라바이트 크기의 사용 가능한 RAM을 호스트 머신에서 사용할 수 있습니다. 단일 머신의 RAM보다 훨씬 큰 TimesTen 스케일아웃 데이터베이스를 사용할 수 있습니다.
데이터베이스 개념
TimesTen은 표준 관계형 데이터베이스 개념을 지원합니다.테이블은 행으로 구성되며 행은 특정 데이터 유형의 열로 구성됩니다.데이터는 SQL을 사용하여 조작됩니다.트랜잭션을 통해 적절한 수준의 원자성 및 격리 상태로 데이터를 조작할 수 있습니다.10은 관계형 데이터베이스에서 예상되는 모든 표준 ACID 속성을 지원합니다.
TimesTen에서 지원되는 데이터 유형은 일반적으로 NUMBER, VARCHAR 및 LOB를 포함하여 Oracle Database에서 지원되는 데이터 유형 중 일부입니다.이진 정수 등의 10가지 특정 데이터 유형도 지원됩니다.
응용 프로그램은 ODBC, JDBC, OCI 및 ODPI-C 등의 표준 관계형 API를 사용하여 TimesTen 데이터베이스에 액세스합니다.이를 통해 응용 프로그램을 여러 프로그래밍 언어와 환경으로 작성할 수 있습니다.응용 프로그램은 이러한 API를 사용하여 표준 SQL을 사용하여 데이터에 액세스하고 데이터를 조작합니다.저장 프로시저는 PL/SQL을 사용하여 구현 및 실행할 수도 있습니다.
고집
TimesTen 데이터베이스는 메모리 내 데이터베이스이지만 영속적이며 고가용성이 가능합니다.실행 시 모든 TimesTen 데이터는 RAM에 저장되지만 TimesTen은 데이터베이스의 지속성과 복구 기능을 위해 비휘발성 스토리지를 사용합니다.TimesTen은 체크포인트파일이라고 불리는 데이터베이스의 스냅샷을 로컬파일 시스템에 저장합니다.또한 데이터베이스에 대한 모든 수정 사항도 트랜잭션 로그 파일에 기록됩니다.체크포인트 파일과 트랜잭션로그 파일의 조합을 통해 TimesTen은 시스템 장애 발생 시 데이터베이스를 복구할 수 있습니다.
또, TimesTen 데이터베이스를 복수의 머신에 리플리케이트 할 수 있기 때문에, 고가용성과 디저스터 리커버리를 실현할 수 있습니다.
접속 방법
응용 프로그램은 TCP/IP를 기본 전송으로 사용하는 기존 클라이언트/서버 방식 또는 직접 모드로 TimesTen 데이터베이스에 연결할 수 있습니다.다이렉트 모드에서는 데이터베이스와 같은 머신 상에서 실행되고 있는 애플리케이션이 네트워크 스택 및 컨텍스트스위칭 오버헤드를 회피할 수 있습니다.실행 시 TimesTen 데이터베이스 내의 데이터는 공유 메모리에 저장됩니다.이것에 의해, 애플리케이션 프로세스가 직접 데이터베이스 메모리에 접속해, IPC나 콘텍스트스위치 오버헤드 없이 액세스 할 수 있습니다.두 모드에서 동일한 API와 기능을 사용할 수 있습니다.
캐싱
TimesTen 데이터베이스는 영속적이고 고가용성을 제공할 수 있기 때문에 많은 솔루션에서 유일한 데이터베이스로 사용할 수 있습니다.
그러나 TimesTen 데이터베이스는 Oracle Database와 같은 다른 데이터베이스와 함께 사용되는 경우가 많으며, TimesTen 데이터베이스는 (아마도 더 큰) 기존 데이터베이스의 데이터 서브셋에 대한 캐시 역할을 합니다.
TimesTen은 Oracle Database 소스에서 데이터를 캐시하는 기능을 제공합니다.Oracle Database 캐시를 사용하려면 캐시 그룹이라고 하는 SQL 개체를 하나 이상 정의합니다.캐시 그룹은 하나 이상의 관련 데이터베이스 테이블 집합이며 행 및/또는 열의 하위 집합을 허용합니다.캐시 그룹의 데이터베이스 테이블은 각각 Null이 아닌 일련의 열에 걸쳐 정의된 기본 키 또는 고유한 인덱스를 선언해야 하며 기본 키와 외부 키 제약 조건을 통해 부모-자녀 계층에서 관련되어야 합니다.SQL 술어를 사용하여 캐시할 데이터를 제어할 수 있습니다.
캐시 그룹이 정의되면 캐시 그룹을 "로드"하여 Oracle Database 데이터를 TimesTen에 캐시할 수 있습니다.그런 다음 애플리케이션은 캐시 그룹에서 읽고 쓸 수 있으며, 모든 데이터 수정은 대응하는 Oracle Database 테이블과 동기화됩니다.
Oracle Golden Gate와 같은 다른 솔루션도 TimesTen과 다른 데이터베이스 간에 데이터를 동기화하는 데 사용할 수 있으므로 TimesTen을 다른 데이터베이스 앞에서 매우 빠른 캐시로 사용할 수 있습니다.
전개 모드
TimesTen은 TimesTen Classic과 TimesTen Scaleout이라는 두 가지 방법으로 구성할 수 있습니다.
타임스텐 클래식
TimesTen Classic은 단일 머신에 구현되어 있지만 고가용성을 위해 다른 머신에 복제할 수 있는 인메모리 데이터베이스를 구현합니다.쿼리에는 네트워크 I/O가 필요 없고 모든 데이터가 로컬이기 때문에 TimesTen Classic이 제공하는 데이터베이스는 매우 짧은 지연 시간을 제공합니다.
TimesTen Classic 복제 메커니즘은 두 개 이상의 호스트 간에 데이터베이스 업데이트를 전송하여 고가용성 시스템을 가능하게 합니다.일반적으로 가장 높은 가용성을 위해 액티브-스탠바이 데이터베이스 [4]쌍이 사용됩니다.액티브 및 스탠바이 데이터베이스 외에 여러 서브스크라이버 데이터베이스를 disaster recovery 복사 또는 읽기 전용 팜으로 사용할 수 있도록 설정할 수 있습니다.
TimesTen 스케일아웃
TimesTen 스케일아웃을 사용하면 단일 TimesTen 데이터베이스를 여러 머신에 걸쳐 사용할 수 있습니다.shared-nothing 아키텍처를 사용하여 여러 Times에 걸쳐 데이터를 분산합니다.많은 기계에서 실행 중인 10개의 인스턴스.모든 시스템이 데이터베이스의 모든 데이터를 쿼리하고 수정할 수 있으며 모든 데이터베이스 ACID 속성이 완전히 지원됩니다.고가용성을 위해 여러 데이터 복사본이 보관됩니다.TimesTen 스케일아웃에 의해 제공되는 데이터베이스는 단일 머신에서 사용 가능한 RAM 용량보다 클 수 있으며, 추가 머신의 증가에 따라 데이터베이스 스루풋을 확장할 수 있습니다.
일반적인 용도
- 통신 과금 및 통화 처리
- 금융 서비스 증권 거래
- 대규모 웹사이트에서 확장 가능한 데이터베이스 서비스
- 위치 기반 서비스
역사
TimesTen은 Marie-Anne Neimat,[5] Sherry Listgarten, Kurt Shoens 및 Kevin Wilkerson에 의해 HP 연구소에서 "Smallbase"라는 이름으로 설립되었습니다.HP에서 Jean-René Bouvier는 Smallbase를 HP OpenCall에 포함하기로 결정했습니다.이 OpenCall은 1995년에 이 제품을 최초로 상업적으로 사용하였습니다.1996년 Jim Groff CEO가 이끄는 캘리포니아 마운틴 뷰에 본사를 둔 별도의 벤처 캐피털 자금 지원 스타트업 회사로 분사되었습니다.이 제품은 패킷 교환과 같은 애플리케이션에서 밀리초 또는 마이크로초의 응답 시간이 필요했기 때문에 통신 장비에서 인기를 끌게 되었습니다.이 회사는 직원 수가 90명이었고 2005년 [6]오라클에 인수되었을 때 수익을 올렸다.인수 후 많은 Oracle 데이터베이스 기능이 Times에 추가되었습니다.PL/SQL 지원, Oracle SQL Developer 및 Oracle Enterprise Manager와의 통합 등 10가지 기능 제공TimesTen 스케일아웃은 2018년에 추가되었습니다.
레퍼런스
- ^ "Oracle acquires TimesTen database software". Computerworld.
{{cite web}}: CS1 maint :url-status (링크) - ^ "Oracle TimesTen Application-Tier Database Cache Overview". Oracle.
{{cite web}}: CS1 maint :url-status (링크) - ^ "TimesTen Supported Platforms (from TimesTen FAQ)".
{{cite web}}: CS1 maint :url-status (링크) - ^ "TimesTen In-Memory Database Replication Guide". Oracle Corporation.
{{cite web}}: CS1 maint :url-status (링크) - ^ "2004 Fast 50 Winner - Marie-Anne Niemat". Fast Company. December 2003.
- ^ "Oracle Acquires TimesTen for Real-Time Database". The Unix Guardian. Archived from the original on 2012-01-26.