OLTP(온라인 트랜잭션 처리)는 온라인 뱅킹, 쇼핑, 주문 입력 또는 텍스트 메시지 전송 등 동시에 발생하는 다수의 트랜잭션을 실행하는 데이터 처리 유형입니다. 이러한 트랜잭션은 전통적으로 경제 또는 재무 트랜잭션이라고 칭하며, 기업이 회계 또는 보고 목적으로 언제든 정보에 액세스할 수 있도록 기록 및 보호됩니다.
과거에 OLTP는 화폐, 제품, 정보, 서비스 요청 등 일종의 교환이 이루어지는 실제 상호작용에만 한정적으로 적용되었습니다. 하지만 이와 같은 맥락에서의 트랜잭션의 정의는 지난 몇 년간 확대되었고, 특히 인터넷의 등장으로 인해 모든 웹 연결 센서를 통한 전 세계 모든 곳에서 발생하는 모든 종류의 디지털 상호작용 또는 비즈니스 거래를 포함하게 되었습니다. 또한 웹페이지에서 pdf 다운로드하기, 특정 비디오 시청하기등 모든 종류의 행동과 비즈니스가 고객에게 더 나은 서비스를 제공하기 위해 기록하는 소셜 채널 자동 유지관리 트리거 또는 댓글 등 모든 종류의 상호작용을 포함합니다.
트랜잭션의 주요 정의(경제 또는 재무)는 여전히 대부분의 OLTP 시스템의 근간으로 남아있습니다. 그래서 온라인 트랜잭션 처리는 보통 데이터 스토어 내의 소규모 데이터 삽입, 업데이트 및/또는 삭제를 통해 해당 트랜잭션을 수집, 관리 및 보호하는 작업을 포함합니다. 일반적으로 웹, 모바일 또는 기업 애플리케이션은 고객, 공급업체 또는 파트너와의 모든 상호 작용 또는 거래를 추적하고, 이를 OLTP 데이터베이스에 업데이트합니다. 데이터베이스에 저장된 이 트랜잭션 데이터는 기업에 핵심적이며, 보고서 작성용으로 사용되고, 데이터 중심의 의사결정에 활용하기 위해 분석됩니다.
Retraced, Archaeological Park of Pompeii, Jasci, Siemens 등 기업들이 클라우드에서 트랜잭션 처리 워크로드를 성공적으로 구축할 수 있었던 이유에 대해 읽어보세요.
기업은 보통 OLTP 및 OLAP 이렇게 두 가지 유형의 데이터 처리 기능을 보유합니다.
두 시스템은 이름이 비슷하고, 둘 모두 온라인 데이터 처리 시스템이긴 하지만 이 두 시스템 사이에는 극명한 차이가 존재합니다.
OLTP는 여러 사람이 다수의 트랜잭션을 실시간으로 실행할 수 있게 해주는 반면, OLAP(온라인 분석 처리)는 일반적으로 분석을 목적으로 데이터베이스 내의 트랜잭션(레코드라고도 불림)을 질의하는 작업을 포함합니다. OLAP는 기업이 트랜잭션 데이터로부터 더 많은 인사이트를 추출하여 양질의 정보를 기반으로 한 의사결정을 내리는 데 활용할 수 있게 해줍니다.
아래 표는 OLTP 시스템과 OLAP 시스템을 특징을 비교한 것입니다.
OLTP 시스템 |
OLAP 시스템 |
다수의 사용자에 의한 대량의 데이터베이스 트랜잭션을 실시간으로 실행할 수 있도록 지원 |
일반적으로 분석을 목적으로 데이터베이스 내 다수의 레코드(또는 모든 레코드)에 대한 질의 작업 포함 |
빛의 속도에 가까운 빠른 응답시간 필요 |
OLTP에 대비 엄청나게 느린 응답시간 필요 |
적은 양의 데이터를 자주 수정하고, 일반적으로 읽기 및 쓰기 작업 간 균형이 유지됨 |
데이터를 전혀 수정하지 않음. 일반적으로 읽기 집약적인 작업 |
인덱스화된 데이터를 사용해 응답 시간 개선 |
대량의 레코드에 손쉽게 액세스할 수 있도록 컬럼 형식으로 데이터 저장 |
데이터베이스에 대한 빈번한 또는 동시 백업 필요 |
훨씬 적은 빈도의 데이터베이스 백업 필요 |
상대적으로 적은 스토리지 공간 필요 |
대량의 기록 데이터를 저장하기 때문에 일반적으로 상당한 양의 스토리지 공간 필요 |
일반적으로 하나 또는 몇 개의 레코드를 포함하는 단순한 쿼리 실행 |
다수의 레코드를 포함하는 복잡한 쿼리 실행 |
종합하자면, OLTP가 온라인 데이터 수정 시스템이라면 OLAP는 분석을 목적으로 대량의 데이터를 검색하는 데 사용되는 다차원 온라인 기록 데이터 저장소 시스템입니다. OLAP는 일반적으로 하나 이상의 OLTP 시스템에서 수집한 데이터에 대한 분석을 제공합니다.
트랜잭션 데이터를 사용하는 OLTP 시스템의 가장 일반적인 구조는 프레젠테이션 계층, 비즈니스 논리 계층 및 데이터 저장소 계층으로 구성된 3계층 구조입니다. 프리젠테이션 계층은 트랜잭션이 인적 상호 작용을 통해 시작되거나 시스템에 의해 생성되는 프론트 엔드를 말합니다. 논리 계층은 트랜잭션을 검증하고 트랜잭션을 완료하는 데 필요한 모든 데이터를 확인하는 규칙들로 구성됩니다. 데이터 저장소 계층은 트랜잭션 및 이와 관련된 모든 데이터를 저장합니다.
온라인 트랜잭션 처리 시스템의 주요 특징은 다음과 같습니다:
관계형 데이터베이스는 트랜잭션 애플리케이션을 위해 특별히 제작되었습니다. 대용량 트랜잭션을 저장하고 처리하는 데 필요한 모든 필수 요소를 수용하는 동시에, 풍부한 트랜잭션 데이터로부터 더 많은 가치를 추출하기 위해 새로운 기능 및 성능이 지속적으로 업데이트됩니다. 관계형 데이터베이스는 처음부터 최고 수준의 가용성과 최고 속도의 성능을 제공하도록 설계되었습니다. 동시성을 제공하고 ACID를 준수하기 때문에 데이터가 정확하고, 항상 이용 가능하며, 손쉬운 접근이 가능합니다. 관계형 데이터베이스는 데이터 사이의 관계를 추출한 뒤 데이터를 테이블에 저장합니다. 이를 통해 SSOT가 보장되기 때문에 모든 애플리케이션에서 데이터를 사용할 수 있죠.
전 세계 모든 곳에서 모든 소스 또는 기기로부터 발생하는 특성 때문에 트랜잭션이 점점 복잡해지는 반면, 전통적인 관계형 데이터베이스는 오늘날의 트랜잭션 워크플로의 니즈를 충족할 만큼 충분히 발전하지 못했습니다. 관계형 데이터베이스는 오늘날의 트랜잭션, 이기종 데이터, 전 세계적인 규모, 무엇보다도 혼합 워크로드 실행을 위해 진화해야 했죠. 관계형 데이터베이스는 관계형 데이터뿐 아니라 xml, html, JSON, Apache Avro and Parquet, 고유한 형식의 문서 등을 대단한 변환 없이 저장 및 처리하는 멀티모드 데이터베이스로 변환되었습니다. 관계형 데이터베이스는 또한 클러스터링, 샤딩 등 더 많은 기능을 추가하여 전 세계적으로 배포되고 무한히 확장될 수 있어야 했습니다. 그래야 점점 증가하는 데이터를 저장 및 처리하고, 클라우드에서 보다 저렴한 스토리지를 활용할 수 있게 되기 때문이죠. 인메모리, 고급 분석, 시각화, 트랜잭션 이벤트 대기열 등 다른 기능들과 함께 이 데이터베이스들은 이제 다양한 워크로드를 실행할 수 있습니다(트랜잭션 데이터에서 분석 실행, 스트리밍 데이터 처리(사물인터넷) 또는 공간 및 그래프 분석 실행 등).
클라우드에 내장된 모던 관계형 데이터베이스는 데이터베이스의 다양한 관리 및 운영 측면을 자동화함으로써 사용자가 손쉽게 프로비저닝 및 사용할 수 있게 해줍니다. 또한 자동화된 프로비저닝, 보안, 복구, 백업 및 확장을 제공하기 때문에 DBA 및 IT 팀은 프로비저닝을 유지 관리하는 데 드는 시간을 크게 줄일 수 있죠. 또한 데이터 양, 동시 사용자 수 또는 쿼리의 복잡성과 관계없이 데이터베이스 쿼리 성능이 일관되게 유지되도록 데이터를 자동으로 튜닝 및 인덱스화하는 인텔리전스를 갖추고 있습니다. 또한 이러한 클라우드 데이터베이스에는 셀프 서비스 기능 및 REST API가 포함되어 있어 개발자와 분석가가 데이터에 쉽게 액세스하고, 사용할 수 있습니다. 그 결과 애플리케이션 개발이 간소화되어 개발자들이 새로운 기능 및 사용자 정의 기능을 애플리케이션에 손쉽게 구축할 수 있게 됩니다. 또한 분석 과정도 간소화되어 분석가 및 데이터 과학자들이 인사이트 추출에 데이터를 손쉽게 사용할 수 있죠.
IT 부서가 비즈니스의 속도를 따라가는 데 어려움을 겪고 있다면, 운영 데이터베이스를 선택할 때 즉각적인 데이터 니즈와 장기적인 데이터 요구사항을 모두 고려하는 게 중요합니다. 트랜잭션 저장, 기록 시스템 유지, 콘텐츠 관리를 위해서는 높은 동시성, 높은 처리량, 낮은 대기시간과 고가용성, 데이터 보호, 재해 복구 등 미션 크리티컬 특성을 갖춘 데이터베이스가 필요합니다. 워크로드는 하루, 한 주, 일 년 내내 변동될 가능성이 높기 때문에, 데이터베이스에 자동 스케일 기능이 탑재되어 있으면 비용을 크게 줄일 수 있습니다. 또한 특수 목적으로 구축된 데이터베이스를 사용할 것인지, 범용 목적의 데이터베이스를 사용할 것인지도 결정해야 할 수 있습니다. 특정 유형의 데이터용 데이터베이스가 필요한 경우, 특수 목적으로 구축된 데이터베이스가 적합할 것입니다. 하지만 이를 위해 귀사에 필요한 다른 특성들을 포기해서는 안 됩니다. 애플리케이션 계층에 이와 같은 특성들을 추후에 구축하려면 비용과 리소스가 많이 들기 때문이죠. 또한 귀사의 데이터 니즈가 늘어나거나, 애플리케이션의 기능을 확장하고 싶을 때 단일 목적의 또는 모든 용도에 걸맞은 데이터베이스를 추가하는 것은 데이터 사일로를 야기하여 데이터 관리 문제를 증폭시킬 뿐입니다. 수집 요구사항, 컴퓨트 요구사항 하향 조정, 크기 제한 등 귀사의 특정 워크로드에 필요한 다른 기능들 역시 고려해야 합니다.
셀프 서비스 기능을 갖춘 미래형 클라우드 데이터베이스를 선택하면 모든 데이터 관리가 자동화됩니다. 덕분에 귀사의 데이터 소비자(개발자, 분석가, 데이터 엔지니어, 데이터 과학자, DBA)들이 데이터를 더욱 효과적으로 활용할 수 있고, 애플리케이션 개발 속도를 높일 수 있죠.
링크를 통해 클라우드 OLTP 데이터베이스 서비스인 Oracle Autonomous Transaction Processing Database에 대해 더 자세히 살펴보세요. 무료 체험도 가능합니다.
구매를 고려하고 계십니까?
영업팀에 전화영업 팀과 채팅계정/구독, 프로모션 문제
채팅 시작기술 지원 또는 기타 지원 요청이 필요하십니까?
지원 옵션 보기