Selam arkadaşlar. Bu yazıda güçlü birer ETL toolu olan Informatica ve Pentaho Kettle toolarını inceleyeceğiz. iki toolda bircok noktada benzer ve bazı temel konulardada farklılık göstermekte. incelememizi yaparken başlıklarımız şunlar olacak: - Informatica firması - Informatica ETL toolu - Tool mimrisi - Developer olarak kullandığımız modülleri - Pentaho Firması - Kettle ETL Toolu - Tool mimrisi - Developer Olarak kullandığımız Modülleri - İnformatica Pentaho Karşılaştırması - Hangi tool seçilmeli? Nasıl bir Yaklaşım? Fikirler? Informatica Firması 1. Veri entegrasyon odaklı bir firma 2. 1993 te kurulmuş, California Merkezli ABD firması 3. 4.000 den fazla müşterisi var 4. Power Center, Pover Exchange ana ürünleri 5. Power Center V.9 suanki son versiyonu Informatca Pover Center-Mimari Yapısı ODBC cations : SAP R/3, SAP BW, PeopleSoft, Siebel, JD Edwards, i2 Sources Standard: RDBMS, Flat Files, XML, Appli EAI : MQ Series, Tibco, JMS, Web Services Legacy 1 / 6
: Mainframes (DB2, VSAM, IMS, IDMS, Adabas)AS400 (DB2, Flat File) Remote Sources Targets Standard: RDBMS, Flat Files, XML, ODBC Applications: SAP R/3, SAP BW, PeopleSoft, Siebel, JD Edwards, i2 EAI : MQ Series, Tibco, JMS, Web Services Legacy : Mainframes (DB2)AS400 (DB2) Remote Targets Pover Center Client Tarafı temel olarak su modullerden olusuyor. Bunlar ETL developerın temel olarak ilgilendiği modüller. 1. Designer 2. Workflow Manager 3. Workflow Monitor 4. Repository Manager 5. Metadata Reporter 2 / 6
Maping Designer Source importu, analizi, tasarımı Target importu, analizi, tasarımı Source ve Target arasındaki transformasyon mapingini tasarlamamızı sağlar Birçok transformations seçeneği var, joiner, sorter, agregator vs. SQL le yapabileceğimiz herşeyi burda tasarladığımız mapinglerde bu transformasyonları kullanarak yapabiliyoruz. Her transformasyonda arka planda çalışan özel algoritmalar var.burda işi tasarlarken dikkat etmeniz gereken şeyler (Firmanızın Standartları Isimlendirme standartlarını söylememe gerek yoktur sanırım) işin hataya karşı olan tepkisi, tekrar çalıştırılabilir olması, performansı gibi noktalar var. Bunun dışında basit işler için kolay ve zevkli bir tasarım ortamı var. Baha büyük ve performans gerektiren işler için kullandığınız transformasyonların detaylarını iyi bilmeli konfigürasyonlarını iyi şekilde yapmalısınız. en basitinden doğru yerde sorted join kullanmak hayat kurtarabilir. Veya teknik olmasada zorunlu kaldığınız zamanlarda işin bir kısmını Source Qualifierda database yaptırmak özellikle databaseniz analitik bir database ise çok işinize yarayabilir. Workflow Manager Burada mapinglerin atandıgı sesionlar ve sesionların guruplandıgı ve organize edildiği Workflow lar yaratıyoruz. ilgili maping transformasyonunu çalıştıran sesionların yanısıra, Emails, Shell Commands gibi işlerde ekleyebiliyoruz. sesionları workflow altında tek bir gurupta toplamak için Worklet oluşturulabilir. Burda ilgili işin kaynak ve hedef connectionları seçilir. Schedule işlemi yaratılır veya var olanlar atanır. Veya iş manuel calıştırılabilir. Maping-transformasyon işini bitirdikten sonra yaptıgınız tasarıma bir üst noktadan bakmaya başlıyorsunuz burda. özelikle diğer işlerle olan ilişkilerine bağımlılıklarına ve birlikte çalışma durumunu göz önünde tutmanız gerekiyor. Workflow Monitor Yaratılan workflowların çalışmlarını takip ediyoruz, Schedule olan işler, şuanda çalışan işler, işlerin çalışma süreleri, başarılı bitmiş veya hata almış işleri görebiliyoruz. Işlerin çalışmaları 3 / 6
sonucu oluşan logları burdan inceliyoruz. gerektiğinde Wf ve sesion çalışmlarını yonettebiliyoruz: çalıştır, kes, durdur, beklet, kurtar. Özellikle işinizi çalıştırıp test ederken burdaı cok kullanacak ve çokta hata alacaksınız log dosyası ile haşır neşir olacaksınız ama iyi olan yanı log dosyası ve hata mesajları genellikle yeterince iyi ve açıklayıcı. Birde prod geçişlerinden sonra bir sonraki gün ilk baktıgınız ekran burası olacaktır. Repository Manager Yarattığımız tüm objeleri mapinler sourcelar targetlar sesionlar workflowları burda bir arada görebilir ve yönetebiliriz. Ayrıca Folder yönetimini backupı export importları burdan yapabiliyoruz. Genellikle çalışmların geçmişe dönük loglarını ve istatistiklerini incelemek için buraya bakarsınız. Çogu zaman işle ilgili data hakkında iyi fikirler verir, bunun yanısıra backup-export ve import işlemleri için ihtiyaç duyacaksınız. Pentaho 1. Iş zekası odaklı, bu alanda açık kaynak çözüm sunan bir firma. 2. 2004 te kurulmuş, Orlando Florida Merkezli. 3. En büyük avantajı Lisans ücreti ni ortadan kaldırması. 4. Yıllık lisans ücreti ile destek ve extra moduller sağlıyor ticari sürüm farkı. 5. Reporting, Analysis, Dashboards, Data Integration (Kettle), Data Mining toolarını BI Suite adı altında entegre bir halde sunuyor. 6. Pentaho Data Integration 4.0 suanki son versiyonu. Ketle Java tabanlı platform bagımsız bir tool. (ETL) Extraction, Transformation, Loading yöntemiyle görsel development yapabileceginiz bir tool. Ana modüleri aşagıdaki gibi. Spoon : Transformasyonları ve işleri görsel olarak tasarlamamızı sağlar. Transformasyonlar XML halinde veya Repository Databasesinde tutulur. Pan : Etl transformasyon motoru. Spoon da tasarlanan işler burda çalışıyor. Kitchen : İşleri çalıştırmaya ve Schedule etmeye yarayan modül. Carte : uzaktan çalışan işleri takip etmeyi yonetmeyi sağlayan web tabanlı konsol. 4 / 6
Kettle Mimari Yapısı Kettle Çalışma Yapısı İnformatica Kettle Benzerlikleri - Pover Center Server = Pan - Designer + Wf Manager = Spoon - Wf Manager(schedule kısmı) = Kitchen - Wf Monitor = Carte Gördüğümüz gibi iki ETL tooloda birbirine eşdeğer işleve sahip benzer modüller içermekte. Karşılaştırma 1. Maliyet: Lisans Maliyeti informaticada çok yuksek, Kettle de ise sadece Destek, Eğitim ve Danışmanlık almak ücretli. Sağda maliyet grafiğini görebilirsiniz. 2. Risk: Projenin başarısız olması halinde açık kaynak yazılımlar için lisans ücreti olmadığından daha az risk almış olursunuz Pentaho bu açıdan avantajlı. 5 / 6
3. Donanım: informatica su servarlarda kurulabilir Windows, Solaris, HP-UX, IBM-UX, Redhat, SUSE linux. Ve en az 2 işlemcili 1 GB ramlı sistemde çalışabiliyor.kettle Java çalıştırabilen tüm sistemlerde çalışabiliyor. Birçok Slave Serveri ETL Transformasyonu için kullanabiliyor. 1Ghz CPU and 512mbs ram gerektiriyor 4. Veri Kalitesi: Informatica Pover Center içinde Boyle bir seceneği Yok ama Data Quality diye ayrı bir toolu var. Kettle da Gorsel tasarımında Data kalitesi için özelleşmiş SQL ve Javascript kullanılabiliyor. Ayrıca ücretli olan ayrı bir modulüde var. 5. Izleme: Informaticanın Kapsamlı izleme toolu ve loglaması var. Kettle da pratik bir izleme toolu ve loglaması var. 6. İkiside cok kolay kullanımlı gorsel tollar. İnformaticayı tam kullanabilmek için biraz daha detaylı bilmek gerekiyor. 7. Kettle US ve UK dan ve Dünya çapındaki Partner Danışman firmalar ile destek sunuyor. İnformatica Kendisi destek sunuyor. 8. İnformatica hız konusunda başarılı. Kettleda java connectordan dolayı yavaşlama var. Network trafigini ayarlamak için manual optimizasyon yapılması gerekiyor. Bu işlemden sonra cok iyi performans sergileyebiliyor. 9. Pentaho küçük çaplı işlerden büyük ölçekli işlere kadar çalışabilirliliğini kanıtlamıştır. 10. Pentaho açık kynak ürünlerin kullanımını düşünmeyen firmaların düşüncesini hızla değiştirmiştir. Sonuç olarak bu konudada tek bir tool tek bir doğru olmadıgını ihtiyaçlarınız, istekleriniz hangi seçeneği gerektiriyorsa ve hangi ürün artı ve eksileri ile birlikte bunlara daha iyi yanıt veriyorsa doğrunun o oldugunu hepimiz biliyoruz. Ayrıca toolun tek başına başarıyı getirmeyeceğini kaliteyi ve başarıyı toolu kullanan iyi bir teknik ekibin getireceğini unutmamalıyız diye düşünüyorum. http://wiki.pentaho.com/display/eai/latest+pentah o+data+integration+%28aka+kettle%29+documentation Informatica Documentation (F1) Karşılaştırma: ETL Tools Comparison Jonathan Levin http://mysqlbarbeque.blogspot.com 6 / 6