Veri Ambarı Nedir?

Selçuk Şan
Turk Telekom Bulut Teknolojileri
8 min readJul 9, 2022

Veri ambarı, iş zekası (BI) faaliyetlerine, özellikle de analitiğe olanak tanımak ve bunları desteklemek üzere tasarlanmış bir veri yönetim sistemidir. Veri ambarları yalnızca sorgulama ve analiz amacıyla kurulur ve çoğu zaman geçmişe ait büyük miktarlarda veri içerir. Bir veri ambarındaki veri genellikle uygulama yazılımlarının günlük dosyaları ve işlem uygulama yazılımları gibi çok çeşitli kaynaklardan elde edilir.

Bir veri ambarı, çok sayıda kaynaktan gelen büyük miktardaki verileri merkezi hâle getirir ve birleştirir. Analitik yetenekleri kurumların karar vermeyi geliştirmek için verilerinden değerli iş içgörüleri elde etmelerine olanak tanır. Zaman içinde, veri bilimcileri ve iş analistleri için paha biçilmez bir tarihi kayıt oluşturur.

Önemli Kavramlar

  • DWH → Data Warehouse
  • DM → Data Mart
  • BI → Business Intelligence
  • ETL | ELT → Extract Transform Load | Extract Load Transform
  • IK → Incremental Update
  • SCD → Slowly Changing Dimension
  • CDC → Change Data Capture
  • OLTP | OLAP → Online Transaction Processing | Online Analytical Processing
  • SA → Subject Area
  • STG → Staging Area
  • DQ → Data Quality
  • FACT | DIM → Fact Table | Dimension Table

Veri Ambarı Mimarisi

1- Data Source Layer

Veri Kaynağı Katmanı, kaynaktan gelen verilerle karşılaşıldığı ve ardından istenilen işlemler için diğer katmanlara gönderildiği katmandır. Veriler herhangi bir türden olabilir. Kaynak veri bir veritabanı, bir Elektronik Tablo veya herhangi bir başka tür metin dosyası olabilir.

2- Data Staging Layer

Staging Katmanı, kaynak verilerin yüklenmesi ve işlenmesi için kapalı bir alan sağlar ve veriler analiz için veri ambarına yüklenmeden önce karmaşık hesaplamalar, veri temizleme ve değişiklik verisi yakalama dahil olmak üzere dönüşümlerin sonradan uygulanması için bir çalışma alanı olarak kullanılır.

3- Data Storage Layer

İşlenen veriler Veri Ambarı’nda saklanır. Bu Veriler temizlenir, dönüştürülür ve belirli bir yapı ile hazırlanır ve böylece işverenlere İşletmenin gerektirdiği şekilde veri kullanma imkanı sağlar.

Mimarinin yaklaşımına bağlı olarak, veriler Data Warehouse’da ve Data Mart’larda saklanacaktır.

4- Data Presentation Layer

Kullanıcıların veri ambarında depolanan verilerle etkileşime girdiği katmandır. Verilere dayalı olarak farklı bilgi türlerini elde etmek için sorgular ve çeşitli araçlar kullanılacaktır.

Bilgi, verilerin grafiksel gösterimi yoluyla kullanıcıya ulaşır. Raporlama araçları, iş verilerini almak için kullanılır ve iş mantığı da çeşitli türde bilgileri toplamak için uygulanır.

Veri Ambarının Avantajları

Veri ambarları, kurumların büyük miktarlardaki çeşitli verileri analiz etmelerine ve önemli bilgi elde etmelerine, ayrıca geçmiş kayıtlar tutmalarına olanak sağlayarak kapsamlı ve eşsiz bir avantaj sunar.

Dört benzersiz özellik, veri ambarlarının bu kapsamlı avantajı sağlamasına olanak tanır. Bu tanıma göre veri ambarları

  • Subject-oriented: Özne odaklıdır. Belirli bir konu veya işlev alanı hakkındaki verileri analiz edebilirler (örneğin satış).
  • Integrated: Entegredir. Veri ambarları farklı kaynaklardan gelen farklı veri tipleri arasında tutarlılık sağlar.
  • Nonvolatile: Kalıcıdır. Veri bir veri ambarına girdiğinde, kararlıdır ve değişmez.
  • Time-variant: Zamana dayalıdır. Veri ambarı analizi, zaman içindeki değişime bakar.

İyi tasarlanmış bir veri ambarı, sorguları çok hızlı bir şekilde gerçekleştirir, yüksek veri verimi sağlar ve son kullanıcıların ayrıntılı analiz yapması veya ister yüksek seviyede, isterse oldukça kapsamlı ve ayrıntılı bir seviyede çok çeşitli talepleri karşılayacak daha detaylı bir inceleme yapmak üzere veri miktarını azaltması için yeterli esnekliği sağlar.

Veri ambarı, son kullanıcılara raporlar, panolar ve diğer arayüzleri sağlayan ara katman iş zekâsı ortamları için işlevsel bir temel oluşturur.

Başlıca Veri Ambarı Teknolojileri

1- Google BigQuery

2- Amazon Redshift

3- Snowflake

Veri Marketi (Data Mart) Nedir?

Data Mart tek bir konuya veya iş koluna odaklanan, basit bir veri ambarı biçimidir. Data Martlar sayesinde ekipler, daha karmaşık veri ambarında arama yapmaya veya farklı kaynaklardan elle veri toplamaya zaman harcamak zorunda kalmadıkları için veriye erişme ve içgörü kazanma süreçlerini hızlandırabilir.

Data Mart’ın avantajları

  • Verilere daha hızlı erişim. Belirli iş ekipleri ve kullanıcılar, kurumsal veri ambarından ihtiyaç duydukları Data Mart’a hızla erişebilir ve bunları çeşitli diğer kaynaklardan gelen verilerle bir araya getirebilir.
  • Daha hızlı karar verme süreçleri. Veri ambarı kurumsal düzeyde karar almaya olanak tanırken, Data Mart departman düzeyinde veri analitiğini mümkün kılar.
  • Daha basit ve daha hızlı. Şirketin tamamının ihtiyaçlarını karşılayacak bir kurumsal veri ambarı kurmak büyük ölçüde zaman ve emek gerektirir. Buna karşılık Data Mart, belirli iş ekiplerinin ihtiyaçlarına hizmet etmeye odaklanarak daha az veri setine erişim gerektirir. Bu sayede çok daha kolay ve hızlı uygulanırlar.
  • Geçici analiz. Bazı veri analitiği projeleri kısa ömürlüdür. Ekipler böyle bir proje için hızla Data Mart kurabilir.

ETL (Çıkarma, Dönüştür ve Yükle) İşlemi

ETL, farklı kaynak sistemlerden verileri çıkaran, ardından verileri dönüştüren (hesaplama, birleştirme vb. gibi) ve son olarak verileri Veri Ambarı sistemine yükleyen bir süreçtir. ETL’ nin tam biçimi Çıkarma, Dönüştürme ve Yükleme’ dir.

Bir Veri ambarı oluşturmanın, basitçe birden çok kaynaktan veri çekip bir Veri ambarının veritabanına yüklenmesi olduğunu düşünmek cezbedicidir. Bu gerçek olmaktan uzaktır ve karmaşık bir ETL süreci gerektirir. ETL süreci, geliştiriciler, analistler, test uzmanları, üst düzey yöneticiler dahil olmak üzere çeşitli paydaşlardan aktif girdiler gerektirir ve teknik olarak zordur.

Veri ambarı sisteminin iş değişiklikleriyle değişmesi gerekir. ETL, bir Veri ambarı sisteminin (günlük, haftalık, aylık) yinelenen bir faaliyetidir ve çevik, otomatikleştirilmiş ve iyi belgelenmiş olması gerekir.

Neden ETL’ e ihtiyaç var?

  • Şirketlerin kritik iş kararları almak için iş verilerini analiz etmelerine yardımcı olur.
  • İşlemsel veritabanları, ETL örneğiyle yanıtlanabilecek karmaşık iş sorularını yanıtlayamaz.
  • Veri Ambarı, ortak bir veri havuzu sağlar.
  • ETL, verileri çeşitli kaynaklardan bir veri ambarına taşıma yöntemi sağlar.
  • Veri kaynakları değiştikçe, Veri Ambarı otomatik olarak güncellenir.
  • İyi tasarlanmış ve belgelenmiş ETL sistemi, bir Veri Ambarı projesinin başarısı için neredeyse gereklidir.
  • ETL işlemi, karmaşık dönüşümler gerçekleştirebilir.,

ETL’ in üç adımı

1- Extract (Çıkar)
Çıkarma işlemi sırasında, ETL verileri tanımlar ve kaynaklarından kopyalar, böylece verileri hedef veri deposuna aktarabilir. Veriler, belgeler, e-postalar, iş uygulamaları, veritabanları, ekipman, sensörler, üçüncü taraflar ve daha fazlası dahil olmak üzere yapılandırılmış ve yapılandırılmamış kaynaklardan gelebilir.

2- Transform (Dönüştür)
Ayıklanan veriler orijinal biçiminde ham olduğundan, nihai veri deposuna hazırlamak için dönüştürülmesi gerekir. Dönüştürme sürecinde ETL, elde edilen verileri güvenilir ve sorgulanabilir hale getirecek şekilde verileri doğrular, kimliklerini doğrular, tekilleştirir ve/veya toplar.

3- Load (Yükle)
ETL, dönüştürülen verileri hedef veri deposuna taşır. Bu adım, tüm kaynak verilerin ilk yüklenmesini gerektirebilir veya kaynak verilerdeki artımlı değişikliklerin yüklenmesi olabilir. Veriler gerçek zamanlı olarak veya planlanmış gruplar halinde yüklenebilir.

Boyutsal Modelleme

Boyutsal Modelleme (DM), bir Veri ambarında veri depolama için optimize edilmiş bir veri yapısı tekniğidir. Boyutsal modellemenin amacı, verilerin daha hızlı alınması için veritabanını optimize etmektir. Boyutsal Modelleme kavramı, Ralph Kimball tarafından geliştirilmiş ve “Fact” ve “Dim” tablolarından oluşmaktadır.

Veri ambarındaki boyutlu bir model, bir veri ambarındaki değerler, bakiyeler, sayılar, ağırlıklar vb. gibi sayısal bilgileri okumak, özetlemek, analiz etmek için tasarlanmıştır. Buna karşılık, ilişki modelleri, gerçek zamanlı bir OLTP (Online Transaction Processing) sistemde verilerin eklenmesi, güncellenmesi ve silinmesi için optimize edilmiştir.

Boyutsal modeller veri ambarı sistemlerinde kullanılır ve ilişkisel sistemler için uygun değildir.

Veri Ambarı modellemesinde Star (Yıldız) Şeması

Star şeması mimarisinin tasarımı kolaydır. Star şeması olarak adlandırılır, çünkü diyagram bir yıldıza benzer, noktaları bir merkezden yayılır. Yıldızın merkezi Fact tablosundan, yıldızın noktaları ise Dim tablolarından oluşur.

Yukarıdaki gösterimde SALES tablosu, Dim tablolarına referansta bulunan (Product ID, Order ID, Customer ID, Employer ID, Total, Quantity, Discount) özelliklerine sahip bir Fact tablosudur.

Star Schema’ da, bir işletmeyle ilgili nicel verileri tutan iş süreci verileri Fact tablolarında tutulurken, Fact verileriyle ilgili açıklayıcı özellikler de Dim tablolarında tutulur. Sales price, sale quantity, distant, speed, weight, and weight measurements, star şemasındaki Fact verilerine birkaç örnektir. Birkaç öznitelik boyutuna sahip bir star şemasını yönetmek kolaydır.

Star Şemasının Avantajları

  • Daha Basit Sorgular
  • Basitleştirilmiş İş Raporlama Mantığı

Veri Ambarı Modelinde Snowflake Şeması

Snowflake şeması, star şemasının bir uzantısıdır. Bir Snowflake şemasında, her boyut normalleştirilir ve daha fazla dim tablosuna bağlanır.

Star şeması ile Snowflake şeması arasındaki temel fark, fazlalığı azaltmak için Snowflake şemasının Dim tablosunun normalleştirilmiş biçimde tutulmasıdır. Buradaki avantaj, bu tür tabloların (normalleştirilmiş) bakımının kolay olması ve depolama alanından tasarruf sağlamasıdır. Ancak bu, sorguyu yürütmek için daha fazla birleştirme gerekeceği anlamına da gelir. Bu, sistem performansını olumsuz yönde etkileyecektir.

Snowflake tasarımı, dim tablosunun daha da genişletilmesinin ve normalleştirilmesinin sonucudur.

Snowflake Şemasının Avantajları

  • Veri bütünlüğü sorununu azaltan yapılandırılmış veriler sağlar.
  • Veriler yüksek düzeyde yapılandırılmış olduğundan küçük disk alanı kullanır.

Veri Kalitesi

Veri kalitesi genellikle bir ürünün kullanıcı gereksinimlerini ne kadar iyi karşıladığını gösteren bir ölçü olarak tanımlanır. Farklı kullanıcıların bir ürün için farklı gereksinimleri olabilir, bu nedenle uygulama kullanıcının bakış açısına bağlıdır ve bu ihtiyaçların belirlenmesi önemlidir.

  • Completeness: Gerekli tüm veriler mevcut ve erişilebilir mi? Gerekli tüm kaynaklar mevcut ve yüklendi mi? Aşamalar arasında veri kaybı oldu mu?
  • Consistency: Hatalı/çakışan/tutarsız veriler var mı? Örneğin, “Fesih” durumundaki bir sözleşmenin fesih tarihi, sözleşmenin başlangıç ​​tarihinden daha yüksek veya ona eşit geçerli bir tarih içermelidir.
  • Uniqueness: Tekrar eden (Duplicate) kayıt var mı?
  • Integrity: Tüm veriler doğru şekilde bağlanmış mı? Örneğin, var olmayan müşteri kimliklerine bağlanan siparişler var mı? (bilgi bütünlüğü sorunu)
  • Timeliness: Veriler güncel mi? Örneğin, günlük güncellemelerin olduğu bir veri ambarında, dünün verileri bugün mevcut mu?

KAYNAKLAR

--

--