OLAP ve OLTP Karşılaştırması: İşlemsel Sistem ile Analitik Sistemin Ayrımı
Karşılaştırma

OLAP ve OLTP Karşılaştırması: İşlemsel Sistem ile Analitik Sistemin Ayrımı

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 5 dk okuma

OLTP günlük işlemleri anında ve tutarlı kaydeder, OLAP biriken veriyi analiz ve raporlama için düzenler. Veri modeli, iş yükü ve mimari farklarını görün.

Ortak zemin ve temel ayrım

OLTP (online transaction processing, çevrim içi işlem işleme) ve OLAP (online analytical processing, çevrim içi analitik işleme), kurumun verisini saklayan ve sorgulayan sistemlerin temel iş yükü türlerini anlatır. Her ikisi de genellikle SQL ile sorgulanır, tablolarla çalışır ve aynı iş olaylarını, yani siparişleri, ödemeleri, stok hareketlerini konu alır.

Microsoft'un mimari kılavuzu OLTP'yi, iş etkileşimlerini kurumun günlük işleyişinde gerçekleştikleri anda kaydeden sistemler olarak tanımlar: müşteriden alınan ödeme, tedarikçiye yapılan ödeme, depoda hareket eden ürün, alınan sipariş. OLAP ise büyük iş veritabanlarını karmaşık hesaplamalar ve eğilim analizleri için düzenleyen, bu analizleri işlemsel sistemleri aksatmadan yapmayı sağlayan teknolojidir.

Kısaca OLTP işi yürütür, OLAP işi anlamaya yardım eder.

Ölçüt ölçüt farklar

  • İş yükü: OLTP / yoğun yazma, orta düzeyde okuma; çok sayıda kısa işlem. OLAP / yoğun okuma, çok az ya da hiç yazma; az sayıda ama büyük hacimli sorgu.
  • Tipik sorgu: OLTP / tek bir siparişi kaydetmek, bir müşterinin bakiyesini güncellemek, bir ürünün stok adedini okumak. OLAP / bölgelere ve aylara göre satış eğilimi, ürün grubu bazında kârlılık, geçen yılla karşılaştırma.
  • Veri modeli: OLTP / yüksek düzeyde normalize edilmiş tablolar; tekrar eden veri en aza indirilir. OLAP / yıldız ya da kar tanesi şeması, küpler veya tablosal anlamsal modeller; okuma hızı için normalizasyondan bilinçli olarak vazgeçilir.
  • Tutarlılık: OLTP / güçlü tutarlılık ve ACID güvenceleri; işlem ya tamamen gerçekleşir ya hiç gerçekleşmez. OLAP / işlem kavramı yoktur; veri dönemsel yüklemelerle güncellenir.
  • Veri tazeliği: OLTP / anlık. OLAP / iş ihtiyacına göre belirlenen aralıklarla yenilenir; gerçek zamanlı analitik ayrı mimari gerektirir.
  • Geçmiş veri: OLTP / ağırlıkla güncel durum; eski kayıtlar performans için arşive taşınabilir. OLAP / zaman serisi analizi için geçmiş veri korunur.
  • Kullanıcılar: OLTP / uygulamalar, müşteriler, operasyon çalışanları. OLAP / analistler, yöneticiler, raporlama ve iş zekâsı araçları.

Neden ayrı sistemler gerekir?

Microsoft'un kılavuzu, OLTP sistemi üzerinde çok sayıda tekil işlem üzerinden toplama hesapları yapan analizlerin kaynak açısından çok pahalı olduğunu belirtir. Bu sorgular yavaş çalışır ve veritabanındaki diğer işlemleri bloke ederek uygulamayı yavaşlatabilir.

İkinci sorun veri modelidir. Yüksek düzeyde normalize edilmiş tablolarda bir rapor için çok sayıda birleştirme (JOIN) gerekir; sorgular karmaşıklaşır ve iş kullanıcıları veri ekibinin desteği olmadan rapor üretemez. Üçüncü sorun geçmiş veridir: tüm işlem geçmişini OLTP tablolarında tutmak sorgu performansını düşürür.

Bu yüzden yaygın mimaride veri, OLTP sistemlerinden ETL ya da ELT süreçleriyle bir veri ambarına aktarılır, analiz için yeniden modellenir ve raporlama araçları bu analitik katmana bağlanır. Kullanıcılar dilimleme ve detaya inme gibi işlemlerle veriyi işlemsel sisteme dokunmadan keşfeder.

Aynı soru, farklı sistem

Örneğin bir perakende zincirinde müşteri kasada ödeme yapıyor.

OLTP tarafında satış noktası uygulaması bir işlem başlatır: sipariş satırlarını kaydeder, stok adedini düşürür, ödeme kaydını oluşturur ve sadakat puanını günceller. Bu adımlardan biri başarısız olursa tüm işlem geri alınır; stok düştüğü hâlde satışın kaydedilmediği yarım bir durum oluşmaz. Aynı anda çok sayıda kasada benzer işlemler yürür ve her biri müşteriyi bekletmeyecek kadar kısa sürede tamamlanmalıdır.

OLAP tarafında ertesi sabah kategori müdürü, geçen hafta hangi ürün gruplarının hangi bölgelerde hedefin altında kaldığını ve bunun promosyon dönemleriyle ilişkisini görmek ister. Bu sorgu satış, ürün, mağaza ve tarih boyutlarını içeren bir yıldız şeması üzerinde çalışır, büyük hacimli veriyi tarar ve toplar. Kategori müdürü raporda bölge düzeyinden mağaza düzeyine iner, ürün grubunu değiştirir; tüm bunlar kasalardaki işlemleri etkilemez.

Hangi durumda hangisi?

OLTP tasarımı gerektiğinde:

  • Uygulama kayıt ekliyor, güncelliyor ve siliyorsa: sipariş, rezervasyon, ödeme, kullanıcı hesabı
  • Verinin her an tutarlı olması ve işlemlerin anında diğer kullanıcılara yansıması gerekiyorsa
  • İşlemdeki gecikme doğrudan günlük operasyonu aksatıyorsa

OLAP tasarımı gerektiğinde:

  • Büyük hacimli veri üzerinde toplama, karşılaştırma ve eğilim analizi yapılacaksa
  • Birden fazla kaynaktan gelen veri tek bir doğru kaynakta birleştirilecekse
  • İş kullanıcılarının kendi raporlarını hızlı ve tutarlı sonuçlarla üretmesi isteniyorsa
  • Geçmiş dönemlerle karşılaştırma ve zaman serisi analizi önemliyse

Bazı platformlar, işlemsel ve analitik iş yükünü aynı sistemde desteklemeyi amaçlar; bu yaklaşım hibrit işlemsel ve analitik işleme (HTAP) olarak adlandırılır. Sütun tabanlı dizinler ya da gerçek zamanlı analitik servisleri bu ihtiyaca yanıt verir, ancak büyük ölçekli raporlamada ayrı bir analitik katman hâlâ yaygın tercihtir.

Tasarımda sık yapılan hatalar

  • Raporları doğrudan üretim veritabanına bağlamak: Ağır bir yönetim raporu, yoğun saatte müşteri işlemlerini yavaşlatabilir. En azından okuma kopyası ya da ayrı bir analitik katman kullanılmalıdır.
  • Analitik modeli işlemsel şemanın kopyası olarak kurmak: Veri ambarına taşınan tablolar boyutsal olarak yeniden modellenmezse analitik sorgular yine karmaşık ve yavaş kalır.
  • Veri tazeliği beklentisini konuşmamak: İş kullanıcıları anlık veri beklerken analitik katman günlük yükleniyorsa, raporlara güven kaybolur. Yenileme sıklığı baştan kararlaştırılmalıdır.
  • Anlam katmanını atlamak: Aynı metriği farklı kullanıcıların farklı tanımlarla hesaplaması, tutarsız raporların en yaygın nedenidir; ortak bir anlamsal model bu sorunu azaltır.

Mindset programlarında OLTP ve OLAP

Veri Mühendisliği Temelleri eğitimi; veri depolama mimarileri, veri hattı tasarımı, SQL ve veri sorgulama ile veri entegrasyon araçlarını ele alarak işlemsel kaynaklardan analitik katmana uzanan akışı işler. Boyutsal Modelleme ve Kimball Metodolojisi eğitimi olgu ve boyut tablolarının tasarımına ve tarihsel takibe odaklanır.

İşlemsel taraf için Veritabanı İşlem Yönetimi ve İzolasyon Seviyeleri eğitimi ACID, izolasyon seviyeleri ve kilitleme konularını kapsar. Veri Ambarı Maliyet ve Sorgu Optimizasyonu eğitimi ise pahalı sorguların tespiti ve depolama düzeni optimizasyonu gibi analitik katmanın işletim sorunlarını ele alır.

İlgili Mindset programı

Veri Mühendisliği Temelleri

Sık sorulanlar

Sık sorulan sorular

Veri ambarı ile OLAP aynı şey mi?

Tam olarak değil. Veri ambarı, analiz amacıyla birden fazla kaynaktan toplanan verinin saklandığı merkezi depodur. OLAP ise bu veri üzerinde çok boyutlu analiz yapmayı sağlayan işleme yaklaşımı ve teknolojidir. Uygulamada OLAP küpleri ya da anlamsal modeller sıklıkla veri ambarının üzerine kurulur.

OLTP veritabanı neden normalize edilir?

Normalizasyon veriyi tekrarı en aza indirecek biçimde küçük tablolara böler. Böylece bir bilgi yalnız bir yerde güncellenir, veri bütünlüğünü korumak için ek iş gerekmez ve sistem çok sayıda işlemi birbirinden bağımsız ve hızlı biçimde işleyebilir. Bedeli, raporlama sorgularının çok sayıda birleştirme gerektirmesidir.

OLAP küpü günümüzde hâlâ kullanılıyor mu?

Kullanılıyor, ancak tek seçenek değil. Geleneksel çok boyutlu küplerin yanında tablosal anlamsal modeller, sütun tabanlı veri ambarları ve büyük ölçekte paralel işleme yapan bulut platformları yaygınlaştı. Temel fikir aynı kalır: veriyi boyutlar ve ölçüler etrafında düzenleyerek hızlı ve tutarlı analiz sağlamak.

Küçük bir şirket için ayrı bir OLAP sistemi gerekir mi?

Veri hacmi küçükse ve raporlar işlemsel sistemi yavaşlatmıyorsa hemen gerekmez. Okuma kopyası üzerinde çalışan raporlar ya da iş zekâsı aracının kendi veri modeli başlangıç için yeterli olabilir. Kaynak sayısı arttığında, geçmiş veri biriktiğinde ve rapor tutarsızlıkları başladığında ayrı bir analitik katman gündeme gelir.

OLAP ve OLTP öğrenmeye nereden başlanmalı?

İlk adım ilişkisel veritabanı ve SQL temelleridir: tablolar, anahtarlar, normalizasyon, işlem ve birleştirme. Ardından analitik tarafa geçerken boyutsal modelleme, olgu ve boyut tabloları, yıldız şeması ve ETL kavramları çalışılır. Küçük bir işlemsel veri setini yıldız şemasına dönüştürüp raporlamak işlemsel ve analitik dünyayı birlikte görmenin pratik yoludur.

OLAP ile OLTP Farkı: Hangisi Ne Zaman Kullanılır?