Ana içeriğe geç

OLTP

Çevrimiçi İşlem İşleme

Okunuşu
o el ti pi
Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/oltp

Kısaca

OLTP (online transaction processing), sipariş vermek gibi günlük işlemlerin çok sayıda küçük, hızlı okuma ve yazması için kurulmuş veritabanlarını anlatır.

OLTP nedir?

Biri bir ürün satın aldığında, para transfer ettiğinde ya da parolasını değiştirdiğinde bunu bir OLTP sistemi kaydeder. Bu iş yükleri, her biri yalnızca birkaç satıra dokunan çok sayıda kısa transaction'dan oluşur; binlerce kullanıcı aynı anda işlem yaptığında bile hızlı, doğru ve güvenli olmaları gerekir.

OLTP veritabanları genellikle PostgreSQL, MySQL, SQL Server ve Oracle gibi ilişkiseldir; ACID transaction'larına, arama için kullanılan sütunlardaki indekslere ve güncellemelerin tutarlı kalması için her bilgiyi bir kez saklayan normalize şemalara dayanır. Bir transaction genellikle bütün bir kaydı okuyup yazdığı için veri tipik olarak satır satır saklanır.

Temel ölçüler gecikme, saniyedeki transaction sayısıyla throughput ve erişilebilirliktir. Connection pooling, yedeğe geçiş (failover) için replikasyon, dikkatli indeksleme ve partitioning gibi teknikler OLTP sistemlerini büyüdükçe de hızlı tutar.

Sık yapılan bir yanlış, aynı veritabanının ağır analitiğe de hizmet etmesi gerektiğini düşünmektir. Milyonlarca satırı tarayan uzun raporlar müşteri transaction'larıyla yarışır ve onları yavaşlatır. Şirketlerin operasyonel veriyi analiz için veri ambarları gibi OLAP sistemlerine kopyalamasının nedeni budur.

Önemli noktalar

  • OLTP sistemleri, günlük işlemlerden gelen çok sayıda küçük ve hızlı transaction'ı ele alır.
  • Genellikle ACID transaction'lı ilişkisel veritabanlarıdır.
  • Şemalar normalizedir ve veri satır satır saklanır.
  • Gecikme, throughput ve erişilebilirlik temel ölçülerdir.
  • Ağır analitik ayrı bir OLAP sistemine aittir.

Örnek

Tipik bir OLTP transaction'ısql
BEGIN;

-- Touches only a few rows, found through indexes
UPDATE accounts SET balance = balance - 50 WHERE id = 17;
UPDATE accounts SET balance = balance + 50 WHERE id = 42;
INSERT INTO transfers (from_id, to_id, amount) VALUES (17, 42, 50);

COMMIT;  -- all three changes happen, or none do

Sık sorulan sorular

OLTP ile OLAP arasındaki fark nedir?

OLTP, siparişler ve ödemeler gibi çok sayıda küçük, gerçek zamanlı transaction'ı ele alır. OLAP ise geçmiş veriler üzerinde, beş yıl boyunca bölgelere göre satışlar gibi daha az sayıda ama çok daha büyük analitik sorguyu ele alır.

MySQL bir OLTP veritabanı mı?

Evet. MySQL, PostgreSQL, SQL Server ve Oracle, hızlı işlemsel okuma ve yazmalar için tasarlanmış klasik OLTP veritabanlarıdır.

Tek bir veritabanı hem OLTP hem OLAP yapabilir mi?

HTAP (hybrid transactional and analytical processing) denen bazı sistemler ikisini birden yapmaya çalışır. Çoğu kuruluş yine de işlemsel bir veritabanı tutar ve veriyi ayrı bir analitik veritabanına kopyalar.

Sık karşılaştırılanlar

İlgili sayfalar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar