DATA ANALYSİS KİMDİR ?

BİG DATA NEDİR ?

BUSİNESS İNTELLİGENCE NEDİR?

DATA WAREHOUSE NEDİR ?

DATA MİNİNG NEDİR ?

SAP ABAP/4 HAKKINDA

Dwh etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Dwh etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

28 Ekim 2015 Çarşamba

DATAWAREHOUSE NEDIR ? / NE ISE YARAR ? / NASIL YAPILIR ?

Arkadaşlar Merhaba ;
Datawarehouse hakkında genel bilgiler vermek istiyorum .Öncelikle datawarehouse nedir ?   hakkındaki kısa yazımızı okumak için linke tıklayalım . Şimdi konuya hemen giriş yapalım .

Kısaca yeni nesil veri ambarı olan microsoft sql server 2012 parelel datawarehouse ' a kısaca değinmek isterim.
PDW (parelel datawarehouse) : veri analizlerini hızlı bir şekilde çalıştırmak ve tek bir cihaz içerisinde depolamayı , birkaç tb 'dan 6 petabayt'a kadar ölçeklendirebilmemize imkan sağlayan yeni nesil bir platformdur .PDW , sistemimize en yüksek  performansı sunmak için önceden yapılandırılmış ve kurulmuş donanım ve yazılımla gelir . PDW sade bir tasarıma sahiptir. Bu sayede hem öğrenilmesi hemde yönetilmesi kolaydır .
O zaman bu platformu neden tercih etmeliyiz ?
  1. Ölçeklenebilir: Diğer sistemler de (oracle , sql server 2008 vs.  daha fazla veri saklayabilmek için daha fazla sunucu almak gerekirken , PDW de mevcut sisteme yapılan ilavelerle büyür.
  2. Hızlı: Büyük ölçekli parelel işlem (MPP) tasarımı sayesinde sorgular. Geleneksel veri ambarları ile kıyaslandığında ortalama 50 kat daha hızlı bir şekilde tamamlamaktadır .
  3. Güvenilir : Yüksek yedeklilik ve yüksek süreklilik için tasarlanmıştır .
  4. Kullanım ve Yönetim Kolaylığı :
  5. Yüksek Süreklilik :
  6. *** Hadoop İle Entegrasyon : PDW 'nin PolyBase teknolojisi , t-sql kullanarak Hadoop verilerini sorgulamamıza ve ilişkisel verilerinizle birleştirmemize imkan verir. PolyBase 'in T-SQL 'in arabirimini kullanarak hadoop içerisinde MapReduce sorgularını zorlanmadan veri madenciliği , raporlama  ve analizler gerçekleştirebiliriz. 
  7. Yüksek Sıkıştırma Oranı : PDW , verilerini disk üzerinde tutmak için bellek için kümelenmiş columnstore dizilerini kullanarak yüksek sıkıştırma oranları elde eder. Bu Sayede depolama masraflarını azaltırb ve sorgu performansını artırır / iyileştirir .
  8. Hızlı veri yükleme kolaylığı : PDW verilerinizi sql server 2012 'den 7 kat daha hızlı yükler. Nedeni ise veri parelel olarak sql server'ın birden çok belleğine yüklenir .
  9. Daha fazla veri tutma kolaylığı : Ölçeklendirilebilir mimarisi , kapasite eklemeyi kolaylaştırılır. Bu sayede raporlama ve analiz için daha fazla veriyi çevrimiçi olarak tutabiliriz . Ayrıca smp sistemlerinde olduğu gibi verilerimizi bölümlere ayırabilir ve ihtiyacımıza göre belirli bölümleri veri ambarımızda arşivleyebiliriz .
  10. İş Zekası araçlarıyla entegrasyon : İş zekası araçları entegrasyonu sayesinde veri madenciliği ve analiz çözümleri için kapsamlı bir platforma dönüşür. Reporting services , analysis services vs vs gibi microsoft iş zekası çözümleri ile entegre olur . 
--------------------------------------------------------------------------------------------------------------------------

Veri Ambarları ; veriler üzerinde analiz amaçlı sorgulamalar yapmak için özelleştirilmiş bir veritabanıydı .
İlişkisel veri tabanı ; işlemler ve olaylar ile ilgili verileri saklar ve sürekli bir veri giriş-çıkış içerisinde olan bir yapıydı .  O zaman veri ambarlarına biz , bu veri tabanındaki verilerle ve diğer dış kaynaklardan alınan verilerin derlenip arşivlenmesi ile oluşturulan , dönemsel analizlerin yapılmasına olanak sağlayan yapılardır , diyebiliriz .

--------------------------------------------------------------------------------------------------------------------------

OLAP ve OLTP : OLAP (On-Line Analytical Processing---Çevrimiçi Analitik İşlem): veriler üzerinde çok boyutlu analizler yapılmasına imkan sağlayan  yaklaşımdır. OLAP veri ambarlarına ait sorgulama ve oluşturma işlemlerini de kapsar . Ancak sıkça yapılan bir hataya dikkat çekmek isterim  Veri ambarı ve OLAP terimleri birbirleri yerine kullanılması yanlış bir yaklaşımdır .Veri ambarı özel bir veri tabanı iken OLAP eldeki verilerin üzerinde çok boyutlu sorgular yapmayı kolaylaştıran bir analiz yaklaşımıdır . OLTP(On-Line Transaction Processing---Çevrimiçi İşlem) :Operasyonel veritabanındaki işlemleri kapsar . Bu veritabanları "transaction " temelli sistemlerdeki veriler anlıktır.Ve sürekli değişirler. Normalize biçimde tasarlanan bu veri tabanları  hızlı sorgulama işlemlerine cevap verirler . Tablolar arası ilişkiler sayesinde veri tekrarı olmaz .

--------------------------------------------------------------------------------------------------------------------------

Güzel Bir Makale: 

Veri Ambarı Nedir?

Veri ambarı transaction işlemlerinden (insert, update, delete) daha çok sorgulama veya analiz etme işlemleri (select) için tasarlanmış, içinde tarihsel verileri barındıran ilişkisel veya OLAP veri tabanlarıdır. Çoğunlukla OLTP veri tabanlarından elde edilen tarihsel verilerden oluşmaktadır ancak başka veri kaynaklarından da veriler içerebilmektedir. OLTP veri tabanları verileri hızlı, tekrardan uzak ve kayıpsız şekilde tutabilmek için tasarlanmaktadırlar. Bu durumda veriler normalize koşullarına uyarlanarak genellikle çok fazla tabloya yayılacak şekilde tutulmaktadır. OLTP veri tabanlarındaki veri büyüklüğü arttıkça bu veri tabanlarından verileri sorgulamak gittikçe zorlaşmaktadır. Yüzlerce transaction’ın yapılmaya çalışıldığı bir anda bu tablolara SQL sorguları göndererek sonuçları beklemek, veri tabanının birincil amacıyla çelişen bir durumdur. İşte bu noktada verilerin transaction miktarı daha düşük, SQL sorgularına daha hızlı cevap verebilecek yapılardan çekilmesi gerekliliği ortaya çıkmaktadır. Veri ambarları bu iş yükünü ayırdıkları gibi çoklu veri kaynaklarından gelen verilerin işlenmesi ve uyumlulaştırılması sonucunda daha detaylı analizler yapma imkanı sağlamaktadırlar. Bu sayede tarihsel verilerin yönetimi kolaylaştırılmakta ve kuruluşların verilerini daha iyi anlama ve yorumlama yeteneği kazandırmaktadır. Veri ambarlarındaki verilerin güncellenebilmesi için ETL (extract, transform, load) süreçleri işletilmelidir.
Veri ambarları verileri analiz etmeye yardımcı olmaları için tasarlanırlar. Örneğin şirketin satış rakamları hakkında daha detaylı bilgiler verir veya önümüzdeki yıl hangi müşteri en iyi müşteri olabilir gibi veri madenciliği konularında veri kaynağı olarak görev yapar. Çoklu kaynaklardan veri elde ediliyorsa bu verilerin uyumuna dikkat  edilmelidir. Tutarsız veri isimleri veya meta veriler mutlaka uygun formatlara çevrilmelidir. Veri kaynaklarından farklı olarak silme, güncelleme veya ekleme işlemleri yapmaktan kaçınılmalıdır. Veri kaynaklarında ne varsa o veriler veri ambarında da olmalıdır.

OLTP ve VERİ AMBARI YAPILARI ARASINDAKİ FARKLAR

OLTP veri tabanlarında transaction sayısı veri ambarlarına göre çok daha fazladır.
OLTP veri tabanlarında transaction’lar günün her anında düzensiz olarak gerçekleşebilirken veri ambarlarında bu, veri aktarım zamanlarında daha düzenli bir yapı içerisinde gerçekleşmektedir. İş gereksinimlerine göre günlük, saatlik, aylık, haftalık aktarımlar ile veri ambarındaki transaction’lar düzenli bir şekilde oluşturulabilirler.
OLTP veri tabanlarında indeksler sıklıkla kullanılmaktadırlar. Veri ambarlarında indeksler veri aktarımlarını yavaşlattıkları gerekçesiyle sıklıkla tercih edilmezler.
OLTP veri tabanları normalize tablo yapılarında oluşturulduklarından veriler çok sayıda tabloya dağıtılmıştır. Veri ambarlarında ise farklı tablolardaki veriler bir araya getirilerek oluşturulurlar. Dolayısıyla veri ambarılarında tablo join’lerinin sayısı daha az olması hedeflenmektedir.
OLTP veri tabanlarında veri tekrarından olabildiğince kaçınılmaktadır. Veri ambarlarında ise SQL sorgularının daha hızlı gelebilmesi için veri tekrarı çok daha fazla yapılmaktadır. Veri ambarları denormalize olarak tasarlanırlar.
OLTP veri tabanlarında satır satır detay bilgiler mevcuttur. Veri ambarlarında ise özet tablolara sıklıkla rastlanmaktadır.
OLTP veri  tabanları hızlı veri yazılması işlemleri odaklı tasarlanırken, veri ambarları Ad Hoc sorguları ve veri analizleri için tasarlanırlar.
Veri ambarlarındaki veriler yalnızca aktarım süreçleriyle güncellenmelidirler. Sql sorguları yazılarak dışarıdan veri güncellemesinden kaçınılmalıdır. OLTP veri tabanlarına ise kullanıcılar sürekli veri güncellemeleri yapabilmektedirler.
Bir veri ambarı sorgusunda genellikle binlerce satırlık veri işlenmektedir. Örneğin 2013 yılındaki toplam satışlar. OLTP veri tabanında ise genellikle daha sınırlı sayıda veri ile sorgulama yapılmaktadır. Örneğin 150 id’li müşterinin bilgileri.
Kaynaklar: The Data Warehouse Toolkit by Ralph Kimball.

25 Ekim 2015 Pazar

ETL ' e GENEL BAKIS

 Arkadaşlar Merhaba  ;

ETL nedir ? Kısaca buna değinmek istiyorum .
Kısaltmasından da anlaşılacağı üzere ETL:
Extract , Transform , Load  olarak geçen ; veriyi çıkar      , değiştir    , yükle anlamına gelir.
Entegre sistem kurulumlarında , göç ve veri ambarı projelerinde kullanılan adımların bir kısmının  birlikte isimlendirilmesidir. Projelerde veri her zaman  istediğimiz biçimde bulunmayabilir. Zaman zaman ihtiyaca göre aynı verinin kullanım amacına bağlı olarak farklı düzenlerde kullanılması gerekir .Etl araçları ile verinin kaynaklarından , ham olarak işlenecek kaynağa çevrilmesi yapılır . Elde edilen veriler incelenir  .Çeşitli filtreleme , temizlik , eşleme sıralama , ayrıştırma gibi işlemler uygulanır .Son aşamada istenilen düzene getirilen veri sunumun yapılacağı sisteme uyumlu yollar ile yüklenir .Aşamalar birkaç kez test edilerek doğruluğu onaylanır .
Süreçlerin iyi analiz edilmesi  , kullanılan aracın tekrarlamaya ve peryodik  çalışmaya uygun olması , bu aşamaların başarı oranını artırır .  Şimdi ETL ' li oluşturan tanımlara birazcık daha yakından bakalım:

Extract - (Ayrıştırma) : 

Veriyi kaynak sistemden alma anlamına gelir .  Bilindiği gibi veri ambarı yapılarında birçok farklı kaynak sistem  ve flat files (excell ,txt vb . ) kullanılır. Veriyi birçok sistemden yardımcı araçlar veya kod ile alabiliriz . 

Transform - (Dönüştürme) :

Verilerin birçok sistemden geldiğini söyledik. Bu farklı sistemden gelen verilerin bizim yapımıza uygun olması için belli bir dönüşümden geçmesi gerekmektedir .Verinin temizlenmesi  , kalitenin arttırılması gerekmektedir .
Veri farklı bir kaynaktan gelmese bile verinin ; her bir veri ambarı yapısında farklı karekteristik özellikte davranması gerekebilir . İşte bu yüzden staging alanındaki bir veri ile veri ambarındaki aynı verinin formatı farklı olabilir .İşte tam bu noktada transform bu işlemlerin genel adını kapsar . 

Load - (Yükleme) : 

Verilerin kaynak sistemden gelip hedef sisteme yüklenmesi anlamına gelir . 

ETL süreci:

çıkart-dönüştür-yükle
Temel olarak kullanılan verinin dış kaynaktan çıkarılması  , verinin iş önceliklerine göre temizlenmesi , birleştirilmesi  vs  ve son hedefe yüklenmesi (veri tabanı veya veri ambarı ) sürecine denir . Yüksek boyuttaki veriler  operasyonel sistemlerden alınıp veri ambarına veya data mart'lara yüklenirken ETL sürecine sokulurlar. Amaç iş zakasında kullanılacak verinin en etkin kullanılabilecek hala gelmesidir. 

Yukarıda tanımı geçmişken kısaca değineyim peki nedir bu data mart'lar ?

Arkadaşlar DATA MART dediğimiz şey veri ambarların alt kümesidir . Veri ambarları , veriler üzerinde genel bir bakış sağlarken  data mart'lar sadece belirli bir kısma bakış sağlar . Data mart'lar belirli birimlerin ihtiyacı duyduğu verilere bağlı olarak analiz yapmaya imkan sağlarlar ve veri ambarındaki tüm karmaşıklık ile uğraşmadan ilgili data martlar sayesinde daha kolay analiz yaparlar . Yani kısaca parçala-fethet yöntemi diyebiliriz . 

Diğer önemli konu ise ETL işleminde aşağıdaki testlerin mutlaka yapılması gerektiğidir:
  • Datalar tamamen yüklendi mi ?
  • Data transformasyon işlemleri hatasız tamamlandı mı ?
  • İçeri atılan data nın kalitesi , operasyonel data kalitesi değil , Dwh data kalitesi istenen seviyeyi yakalıyor mu ?
  • Data seviyesi artıkça sorgulardaki değişim nedir ? Yani sorgu performansları ne durumda ?
  • Yükleme performansı kabul edilir durumda mı ? değilse nasıl bir iyileştirme gerekecek ?
  • Depolamada ne durumdayım . Gelecek yüklemelere ne kadar hazır Dwh ? 
ETL vendor' ları kimler? Rastgele sırayla:
  • IBM
  • Oracle
  • Ab Initio
  • Informatica
  • SAP
  • Microsoft
  • SAS
  • Adeptia
  • ETI
  • iWay
  • Jaspersoft – open source
Umarım faydalı bir yazı olmuştur . İyi Çalışmalar , Kolay Gelsin ..

Blogger tarafından desteklenmektedir.