Stream Verinin Azure SQL Database’de Table Partitioning ile Tutulması (Demo)

Ekleyen: Abdullah ALTINTAŞ Bilge Adam Takım Lideri Tarih:22.09.2016 Okunma Sayısı:79

Günlük hayatımızda IoT kavramı odağımıza girdikçe üretilen verilerden anlamlı sonuçlar çıkartabilmek, çok büyük miktarlarda üretilen verileri hızlı ve doğru bir şekilde elde edip analizini yapabilmek özellikle veri bilimciler için çok önemli bir noktaya geldi. Internet of Things (IoT) cihazları, sensörler, akıllı çözümler, sistemlere ait loglar ve click stream verileri gibi saniyede milyonlarca veri üreten sistemlerden bu verileri almak ve işlemek için çeşitli yöntemler kullanılmakta ve bu ihtiyaçlar karşılanmaktadır. Microsoft teknolojileri açısından baktığımızda Azure Event Hubs, Azure Stream Analytics çözümleri ile bu veriler etkin bir şekilde elde edilebilmekte ve analizi yapılabilmektedir. Ardından analizi yapılan veriler ihtiyaca bağlı olarak farklı çıktılar üretebilmekte ve gerektiğinde tekrar analiz edilmek üzere saklanabilmektedir. Özellikle tekrar analiz edilmek üzere saklanmak istenilen bu büyük miktarda veriler Azure BLOB Storage gibi bir çözüm ile saklanabileceği gibi bazı durumlarda Microsoft’un bulut sistemlerdeki ilişkisel veritabanı çözümü olan Azure SQL Database hizmeti ile tablo yapısında da tutulabilmektedir. Ancak veri miktarı çok büyük olduğundan Azure SQL Database çözümünde bu veriler tek bir tabloda tutulmak istenildiğinde yönetilebilirlik ve ölçeklenebilirlik bakımından parçalı bir yapıda tutulması bizlere avantaj ve performans kazandıracaktır. Bu makalemizde stream olarak akan click-stream verisinin Azure Stream Analytics’ten çıktıktan sonra Azure SQL Database hizmetinde Table Partitioning yapısı kullanılarak nasıl tutulabileceğini ele alacağız.

SQL Server MERGE Type 4 Slowly Changing Dimension (SCD) Kullanımı

Ekleyen: Abdullah ALTINTAŞ Bilge Adam Takım Lideri Tarih:22.09.2016 Okunma Sayısı:26

Microsoft SQL Server‘da MERGE komutu ile neler yapılabildiğini serinin daha önceki yazılarında sizlerle paylaşmıştık. Aşağıda MERGE komutunun genel kullanımı, MERGE ile Slowly Changing Dimension (SCD) Type 1 , Type 2 ve Type 3 çözümlerinin nasıl yapılabileceğini aktardığım yazılarım mevcut. Yazının devamına geçmeden bunlara göz atmak isteyebilirsiniz. Eğer ihtiyacınız sadece MERGE komutu ile SCD Type 4 işleminin nasıl yapılabildiği ise direkt olarak makalenin devamına geçebilirsiniz. Bu makalemizde SQL Server’da kullanılan MERGE komutu yardımı ile Type 4 Slowly Changing Dimension (SCD) işleminin nasıl gerçekleştirilebileceğini ele alacağız. Serinin diğer yazılarında olduğu gibi isterseniz öncelikle Type 4 SCD‘nin ne olduğundan kısaca bahsedelim:

MERGE Type 3 Slowly Changing Dimension (SCD) Kullanımı

Ekleyen: Abdullah ALTINTAŞ Bilge Adam Takım Lideri Tarih:22.09.2016 Okunma Sayısı:26

Microsoft SQL Server‘da MERGE komutunun kullanımı ve Slowly Changing Dimension çözümlerinin MERGE komutu ile nasıl yapılabileceğini önceki makalelerimde yazmıştım. Özellikle Type 1 Slowly Changing Dimension (SCD) ve Type 2 Slowly Changing Dimension (SCD) yapılarını ayrı ayrı nasıl çözümleyebileceğimizi daha önce ele almıştık. İhtiyacınız olan tüm SCD yapılarını öğrenmek ve bunların MERGE ile nasıl yapılabildiğini öğrenmek ise yeni konuya başlamadan önce bu makalelere bir göz atmak isteyebilirsiniz. Eğer sadece Type 3 SCD ile ilgileniyorsanız bu durumda direkt olarak makalemize devam edebilirsiniz. Bu makalemizde Slowly Changing Dimension Type 3 çözümümün ne olduğu ve SQL Server’da MERGE komutu ile nasıl ele alınabileceğini göstereceğiz. Diğer makalelerimizde olduğu gibi yine bu durumunu bir örnek demo üzerinde gerçekleştireceğiz. İsterseniz ilk olarak Type 3 SCD‘nin ne olduğunu ve Type 1 SCD ile Type 2 SCD‘den nasıl ayrıştığını bahsedelim.

SQL Server MERGE Type 1 Slowly Changing Dimension (SCD) Kullanımı

Ekleyen: Abdullah ALTINTAŞ Bilge Adam Takım Lideri Tarih:31.08.2016 Okunma Sayısı:231

Serinin daha önceki yazılarında MERGE komutunun genel kullanımını ve performans önerilerini ele almıştık. İncelemek isterseniz aşağıdaki linkten erişebilirsiniz: http://www.sqlserveronculeri.com/1/Article/3810/sql-server-merge-komutu-kullanimi-ve-performans-onerileri.aspx Veritabanı sistemlerinde ETL süreçleri ile veri aktarımı çok sık karşılaştığımız durumlardan biridir. Özellikle OLTP sistemlerden DataWarehouse yapılarına veri aktarırken ETL süreçlerini ve toollarını kullanarak aktarımlar gerçekleştirmekteyiz. Microsoft SQL Server ürün ailesinde de bu amaçla kullanabileceğimiz SQL Server Integration Services (SSIS) adında bir servis bulunmaktadır. SSIS servisi ve SQL Server Data Tools (eski adıyla Business Intelligence Development Studio) kullanılarak ETL süreçleri tasarlanabilmektedir. Temel ETL süreçlerinde en sık karşılaştığımız noktalardan biri daha önce aktarımı yapılmış olan bir tablodaki verilerin incremental bir yapıda (sadece değişen verilerin) ele alınması sürecidir. Daha önce kaynak sistemden verileri alınmış ve hedef sisteme yüklenmiş bir tablo için bütün verinin doldur boşalt yöntemiyle (verilerin silinip tekrar yüklenmesi) tekrar yüklenmesi performans açısından bizleri olumsuz etkilemektedir. Dolayısıyla en son aktarımdan sonra sadece değişikliğe uğramış olan kayıtların ve yeni eklenen kayıtların ele alınması performansımızı arttıracaktır. Bu işleme literatürde Slowly Changing Dimension (SCD) denilmektedir. SSIS içerisinde de bu işlemi gerçekleştirmek için kurulumla birlikte gelen SCD komponenti bulunmaktadır. Ancak bu SCD komponenti row by row çalıştığı için büyük boyutlara sahip tablolarda işlem yaparken performans açısından oldukça yavaş çalışmaktadır. SCD kullanımına alternatif olarak SQL Server 2008 ile birlikte hayatımıza giren MERGE komutu kullanılarak çok daha performanslı bir çözüm üretilebilmektedir. Bu yazımızda MERGE komutunu kullanarak Type 1 SCD çözümünü nasıl gerçekleştirebileceğimizi ele alacağız.

SQL Server MERGE Type 2 Slowly Changing Dimension (SCD) Kullanımı

Ekleyen: Abdullah ALTINTAŞ Bilge Adam Takım Lideri Tarih:31.08.2016 Okunma Sayısı:209

Bu yazımızda ise SQL Server’da MERGE komutu kullanılarak Slowly Changing Dimension (SCD) Type 2 çözümünün nasıl uygulanabileceğini ele alacağız. Örneğimize geçmeden önce kısaca Type 2 SCD‘nin ne olduğunu da açıklayalım. Type1 SCD ile kaynaktan gelen yeni veriler hedef tabloya insert edilmekte ve kaynakta değişikliğe uğramış olan ve hedef tabloya daha önce aktarılmış olan veriler hedefte daha önce bulundukları için update ile overwrite edilerek var olan kayıt üzerinde ilgili değişiklik yansıtılmaktaydı. Type 2 SCD ile ise hedef tabloda olmayan kaynaktan yeni gelen veriler insert edilecek, hedefte bulunan ancak kaynakta değişikliğe uğramış olan kayıtlar overwrite ile üzerine (var olan satır üzerinde) güncelleme yapılmak yerine history tutulabilmesi için eski kayıt pasife çekilecek ve güncel değeri tutan yeni bir kayıt tabloya eklenecektir. Bu nedenle Type 2 SCD ile verinin historical yani tarihsel geçmişinin de tutulabilmesine olanak sağlanmaktadır.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 

Etkinlik Takvimi

<Eylül 2016>
PztSalÇarPerCumCmtPaz
1234
567891011
12131415161718
19202122232425
2627282930

Mail Listemize Kayıt Olun

Ad :
EMail :

Kaydol

 

 

 

 

Üye Girişi

Kullanıcı Adınız

Şifreniz

Şifremi Unuttum

Arkadaşına Tavsiye Et

Tavsiye edebilmek için siteye giriş yapmalısınız