VISUAL STUDIO SSIS PACKAGE TOOLS

Bu makalede Visual Studio ile hazırlayacağınız SSIS packages kullanılan araçlardan ve birkaç farklı bakış açısından bahsedeceğim. Birçok işte olduğu SSIS package hazırlarken de kendi kurum ve kurumlarımızın ihtiyaç ve planlarına yönelik olarak yapabileceklerimizi kendimize göre ayarlayabiliriz. Görsel – 1 Bir Execute SQL Task ile yapabileceklerimizden birkaç tanesine birlikte bakalım. Görsel – 2 SQLSourceType kısmında kullanabileceğimiz 3 farklı seçenek bulunmaktadır, Direct input: SQL sorgusunu doğrudan SQLStatement kısmına yazabilmemizi sağlar. File connection: Kaydetmiş olduğunuz bir SQL komut dosyasınızı FileConnection ‘dan direk sorgularınızın çalıştırılmasını sağlar. Variable: Variables olarak belirlemiş olduğunuz ve bu menüden kontrolünü sağlayarak görüntüleyebileceğiniz bir değişkeninizden SourceVariable kısmında belirterek çalıştırılmasını sağlar. Belirlemiş olduğunuz SQLSourceType ile SQL Task Execute olduğunda direk bir sonraki adıma geçebilir veya buradaki çıktınızı “Result Set” kısmında bir değişkene de atıyabilirsiniz. SSIS Toolbox içerisinde bulunan Containers sekmesinden farklı Container çeşitleri bulunmaktadır bunlardan biri olan For Loop Container ‘a göz atalım.   Görsel –3 Görsel – 4 Görsel – […]

VISUAL STUDIO SSIS PACKAGE TOOLS

Bu makalede Visual Studio ile hazırlayacağınız SSIS packages kullanılan araçlardan ve birkaç farklı bakış açısından bahsedeceğim.

Birçok işte olduğu SSIS package hazırlarken de kendi kurum ve kurumlarımızın ihtiyaç ve planlarına yönelik olarak yapabileceklerimizi kendimize göre ayarlayabiliriz.

Görsel – 1

Bir Execute SQL Task ile yapabileceklerimizden birkaç tanesine birlikte bakalım.

Görsel – 2

SQLSourceType kısmında kullanabileceğimiz 3 farklı seçenek bulunmaktadır,

  • Direct input: SQL sorgusunu doğrudan SQLStatement kısmına yazabilmemizi sağlar.
  • File connection: Kaydetmiş olduğunuz bir SQL komut dosyasınızı FileConnection ‘dan direk sorgularınızın çalıştırılmasını sağlar.
  • Variable: Variables olarak belirlemiş olduğunuz ve bu menüden kontrolünü sağlayarak görüntüleyebileceğiniz bir değişkeninizden SourceVariable kısmında belirterek çalıştırılmasını sağlar.

Belirlemiş olduğunuz SQLSourceType ile SQL Task Execute olduğunda direk bir sonraki adıma geçebilir veya buradaki çıktınızı “Result Set” kısmında bir değişkene de atıyabilirsiniz.

SSIS Toolbox içerisinde bulunan Containers sekmesinden farklı Container çeşitleri bulunmaktadır bunlardan biri olan For Loop Container ‘a göz atalım.

 

Görsel –3

Görsel – 4

Görsel – 5

 

For Loop sekmesi döngünün çalışmasını sağlayan klasik for döngüsü mantığını tanımladığımız ve sonuç aldığımız kısım vardır burada yer alan:

  • InitExpression: Döngünün başlatıldığı değişkeni alır.
  • EvalExpression: Döngünün koşul kısmıdır.
  • AssignExpression: Döngü her bir tur tamamlandığında InitExpression adımında belirlenen değişkenin güncelleyerek döngünün ilerlemesini sağlar.

Expressions alanı, For Loop Container ‘ın dışındaki paketleri ya da parametreler gibi dinamik öğeleri kontrol etmek ve koşullara bağlı olarak değer atamalarını otomatikleştirmek için kullanılabilir. For Loop Container her bir adım güncellemesinde değişkenleri dinamik olarak ayarlayabilir, koşullu mantıklar geliştirerek belirli koşullar sağlandığında veya beklenen koşul dışında gelişen durumlar gibi mantıklar geliştirerek güncelleme yapabilir, For Loop ile ilişkisi olmayan ancak döngü sırasında kullanılan diğer değişkenlerin değerlerini hesaplayarak kullanılabilmesi gibi koşullarda ihtiyaçlarınızı karşılayabilir.

Package süreçleri adım adım ilerlerken farklı durumlar veya farklı sonuçlar için package farklı sonuçlanmasını isteyebiliriz peki bu durumlar nasıl bir yol izlememiz gerek diye düşündüğümüzde ise bu sorunun çözümü için araçları birbirine bağlantısını sağladığımız Constraint çıkıyor.

Evaluation operaion kısmında bulunan:

  • Constraint: Önceki task başarılı, hatalı veya uyarı ile sonuçlandığında çalışmasını sağlar.
  • Expression: Koşul yazabilmemize olanak sağlar, belirlenen koşulu sağlaması halinde bir sonraki task ‘a geçiş sağlar.
  • Expression and Constraint: Bu seçenek, hem bir kısıtlama hem de bir koşulu birlikte kullanılmasını sağlar, iki koşulun da sağlanması gerekir.
  • Expression or Constraint:Bu seçenekte de, hem bir kısıtlama hem de bir koşulu sadece birinin sağlanmasının yeterli olduğu durumu ifade eder.

 

Görsel – 6

Görsel – 7

Görsel – 8

Yukarıdaki görsellerde örnek olarak gösterdiğim şekilde ben mevcut ay ocak olup olmadığının kontrolünü sağlayarak buna göre iki farklı yol belirledim package ‘da sizlerde ihtiyaçlarınıza göre yöntemler belirleyebilirsiniz.

SSIS Toolbox içerisinde bulunan Common sekmesinden “Conditional Split” göz atalım.

Görsel – 9

Görsel – 10

Çalışma düzenimize Conditional Split ekleyerek içine girdiğimize bizi karşılayacak olan ekran Görsel – 10 da gördüğümüz şekilde olacaktır, şimdi örneğimiz ile kullanımı detaylandırarak anlamlandırmaya çalışalım.

 

Görsel – 11

İki farklı kaynaktan (OLE DB Source) gelen verileri birleştirerek (Union All) Conditional Split ile hedef öncesinde koşul oluşturarak verimizi bu koşul doğrultusunda hedef tabloya insert edeceğiz. İlgili Package içerisinde kullanmış olduğumuz değişkenler ve parametrelere (Variables and Parameters) erişebilir kolonları (Columns) görüntüleyerek kullanabiliriz. Sağ üstte bulunan ekranda ise Fonksiyonlar (Functions), veri tipi dönüştürmeleri (Type Casts) ve operatörleri (Operators) görüntüleyerek bunların kullanımı hakkında bilgi alabilir ve kullanabilirsiniz.

Örnek olarak NULL Functions olan ISNULL ile KayitTarih kolonunun kontrolünü sağladım ve bunu “Null Kayit” ile tuttum, KayitTarih kolonununda NULL olmayan değerleri ise “Gecerli Kayit” ile tuttum. “Gecerli Kayit” içerisinde bulunan verileri hedef tabloma insert ederek süreci tamamladım, isteseydim KayitTarih kolonununda NULL olan kayıtlarıda hedef tabloma insert ederek süreci tamamlayabilirdim bu tamamen benim tercihim ve ihtiyacıma yönelik, sizlerde bu yöntem ile kendi ortam ve ihtiyaçlarınıza yönelik olarak farklı şekillerde kullanabilirsiniz.

Visual Studio ‘da SSIS Package Tools örnekleri ile üzerinde durmaya çalıştığımız makalemizin sonuna geldik, bir sonraki makalede görüşünceye dek iyi ki varsınız, sevgiler 😊

Benzer Yazılar

INTEGRATION SERVICES KALDIRMA/KURMA ADIMLARI VE SENARYOLARI

SQL Server 8 saat önce

Bu makalede SQL Server Integration Services kurulu olan bir ortamdan servisi kaldırma adımlarından ve bunun mevcuttaki ortama olan etkilerinden bahsedeceğim. Bizler genel olarak kurulum ve bu kurulumların adımları ilgileniriz ancak bugün bunun tam tersi mevcutta SQL Server 2019 kurulu olan bir servisi kaldıracağız. Denetim masası (Control Panel) > Programs > Programs and Features Adımları ile mevcut ortamda kurulu olan uygulamaları görüntüledikten sonra “Microsoft SQL Server 2019” tıklayarak “Uninstall/Changes” tıklıyoruz. Görsel – 1 Karşımıza SQL Server ne yapmak istediğimizi soruyor biz bir servis kaldıracağımız için “Remove” diyerek ilerliyoruz. Görsel – 2 Yapmak istediğimiz işlemi hangi Instance üzerinde yapacağımızı soruyor, ben “TEST” Instance da yapacağım seçerek ilerliyorum. Görsel – 3 Şimdide Bu Instance üzerinde neyi kaldırabileceğimi bana gösteriyor, ben Integration Services kaldıracağım için Shared Features menüsü altında bulunan Integration Services seçiyorum burada unutulmaması gereken bir şey var eğer Shared Features altında bulunan bir service kaldırır veya kurarsanız bundan sadece seçili olan Instance […]

SQL SERVER RIGHT-LEFT PARTITION

SQL Server 1 ay önce

SQL Server’da partitioning, büyük veritabanı tablolarını daha yönetilebilir ve performanslı hale getirmek amacıyla kullanılan bir tekniktir. Bu teknik, tablonun verilerini fiziksel olarak değil, mantıksal olarak parçalara ayırır. Veriler, belirli bir partition function ve partition scheme kullanılarak farklı bölümlere yönlendirilir. Partitioning, özellikle büyük veri kümeleriyle çalışan veri tabanlarında sorgu performansını artırır ve veri yönetimini kolaylaştırır. Partition Function ve Partition Scheme nedir? Partition Function: Verilerin hangi kriterlere göre bölüneceğini belirler. Örneğin, bir tarih aralığına göre verileri ayırmak. Partition Scheme: Verilerin hangi filegroup’larda depolanacağını belirler.   Örnek olarak Range LEFT ve Range RIGHT olmak üzere iki ayrı tabloda partition nasıl yapılır sizlere göstereceğim. İlk olarak Range LEFT olan partition yapısından başlayacağım. Öncelikle Veri tabanıma yeni filegroup ve file ekliyorum Şimdi sıra FUNCTION ve SCHEME oluşturmakta ben tablomu yıllık olarak partition yaptım sizler ihtiyaçlarınız doğrultusunda aylık,günlük vs yapabilirsiniz. LEFT partition dediğimiz olay vermiş olduğunuz tarih aralığına eşit bir veri geldiğinde bu veriyi solundaki partition […]

Veritabanı Recovery Pending Durumu ve Düzeltme Seçenekleri

SQL Server 1 ay önce

İçindekilerVeritabanı Recovery Pending Durumu Nedir?Veritabanı Neden Recover Pending Duruma Düşer?Recovery Pending Durumu Nasıl Çözülür?SonuçKaynaklarVeritabanı Recovery Pending Durumu Nedir? SQL Server’da veritabanları bazı nedenlere bağlı olarak “Recovery Pending” (Kurtarma Bekleme)  moduna geçebilir. Veritabanın düzgün bir şekilde kapatılmaması, eksik veya bozuk log dosyaları, disk depolama sorunları, sistemde yaşanan anormal şekilde çökmeler veya MS SQL Server’daki hatalar bu duruma sebep olabilir. Recovery durumu, aslında veritabanını tekrar kullanılabilir hale getirmek için bir kurtarma işlemi yürüttüğünü ifade eder ve üç aşamadan oluşur; Analysis (Analiz): Transaction log incelemesi yapılması ve işlemlerin tamamlanma (Commit) durumunun kontrol edilmesi, Redo (Yeniden İşleme): Tamamlanmış (Commit) ancak henüz diske yazılamamış olan işlemlerin yeniden işlenmesi, Undo (Geri Alma): Başlamış (Begin) ancak tamamlanmamış (Commit) işlemlerin  geri alınmasıdır.   Veritabanı Neden Recover Pending Duruma Düşer? SQL Server Restart Süreci SQL Server servisi restart edildiğinde üzerinde bulunan tüm veritabanları tutarlılığın sağlanması için otomatik olarak recovery moduna girer ve redo/undo işlemleri sürecince devam eder. Ani Sistem […]

0 Yorum

Yorum Yaz

Rastgele