Change Font Size

Change Screens

Change Profile

Change Layouts

Change Direction

Change Menu Styles

Cpanel
Salı, 14 Aralık 2010 08:32

Veri, Veritabanı, Başarılı Veritabanı Uygulamaları İçin Dört Öneri

Yazan&Gönderen  Yusuf Arslan
Bu Öğeyi Derecelendir
(2 Oylar)

Hasan Tonguç Yılmaz bey’in Turkcell bloğunda yeralan yazılarını izniyle paylaşıyor olacağız.Öncelikle tanımayanlar için Tonguç Yılmaz kimdir kendi yazılarından tanıyalım.

  

tonguc

Liseyi Muğla / Fethiye Lisesi‘nde, Lisans eğitimini İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü (1994),  İstanbul Bilgi Üniversitesi İşletme Yönetimi (Yüksek Lisans – 1999) ve Işık Üniversitesi Sosyal Bilimler Fakültesinde (2003) almıştır. 1996′da TekstilBank Bilgi İşlem bölümünde Veritabanı ve Sistem Yöneticisi olarak görev almıştır. 2000 yılından bu yana Turkcell’de ORACLE geliştiricisi olarak birçok görev almıştır ve 2009 Eylül ayında Turkcell – Gelir Odaklı İş Zekası takımında göreve başlamıştır. 2008′den beri Turkcell  Veri madenciliği departmanında Oracle ETL geliştiricisi olarak görevine devam etmektedir.

 

Şimdide Başarılı Veritabanı İpuçlarına bir bakalım..

İster iş zekâsı veya bir veri ambarı projesi, ister müşteri ilişkileri veya bir kaynak yönetimi projesi olsun, konunun ana fikri bence veridir. Hazırlanan uygulamalar verinin manalandırılması için gerekeni yapmak için birer araçtır.

Veriler ise veritabanında yaşar, dolayısı ile başarılı bir veritabanı uygulaması hayata geçirmek için çalıştığınız veritabanının mimarisini ve özelliklerini doğru anlamak önemlidir.

Günümüz veritabanları lisansları içinde birçok hazır paket ile birlikte geliyorlar, müşterilerinizin isteklerini ve ihtiyaçlarını rekabete karşı hızla gerçekleştirmek için parasını ödediğiniz bu seçeneklerin neler olduğunun farkında olmak ve bu özellikleri kullanmak size önemli rekabet avantajı sağlar.

Yukarıdaki tespitlerimden yola çıkarak çalıştığınız veritabanına ve o veritabanının SQL diline hâkim olmanın önemine dört konu başlığı altında değinmek istiyorum:

1. Piyasadaki veritabanlarının sadece fiyatlandırmalarında değil, temel özelliklerinde bile ciddi farklılıklar gösterebileceğinin farkında olmanız gerekir.

Bu nedenle başarılı bir “veritabanı uygulaması”, veritabanı bağımsız araçlar ve yaklaşımlar ile bence gerçeklenemez. Veritabanı bağımsız uygulama geliştirme yaklaşımı, uygulamayı geliştiren şirketlerin daha fazla satış yapma potansiyeli olmasını desteklerken, müşterilerinin ciddi lisans maliyetleri ile sahip oldukları veritabanı kabiliyetleri ile ilgilenmez.

2. Verilerinizi işlemek için veritabanının ana dili olan SQL dilini anlamak ve verimli kullanmak gerekir. Dolayısı ile öncelikle SQL dilinin okullarda öğretildiği gibi sadece SELECT, UPDATE, DELETE ve INSERT cümlelerinden ibaret olmadığının farkında olmalısınız.

Bu farkındalık için bir süre okuma, araştırma ve geliştirme yapmanız gerekecek, bağlantısını verdiğim bu Türkçe video eğitim sizin Oracle SQL dili kabiliyetlerini anlamanız için iyi bir başlangıç olacak (teknik kısımların başlaması için 6,5 dakika kadar sabretmelisiniz ).

http://vimeo.com/2444390

3. Uygulamalarınızı tasarlarken ve gerçeklerken, veriyi işleyen kısımların satır-satır çalışmak yerine kümeler üzerinden çalışmasını sağlamalısınız. Tek bir SQL cümlesinin küme mantığı ile yapabileceği bir işi, hiç bir üst katman aracında daha verimli gerçekleyemezsiniz.

-- PL/SQL imleç: satır-satır işleme örneği

begin

        for x in (select * from t1)

        loop

           insert into t2 (c1,...) values (x.c1,...);

        end loop;

end;

 

-- SQL: küme işlemi örneği

insert into t2 ( c1, ... )

select c1, ....

  from t1

 where ....;

4. Uygulamalarınızı geliştirirken sorunlar yaşadığınızda veya sorularınız olduğunda kime güvenmelisiniz? Günümüzde Google üzerinden aratma yaparak bulamayacağımız cevap yok diyebiliriz, ama dönen bilgiler çok okunur olsalar da cidden güvenilir içeriğe sahipler denebilir mi?

Bu noktada sayılarla desteklenmiş olsa bile, hiç bir “uzman”ın size önerisini hemen satın almamanızı öneririm. Canlı ortamı temsil edecek nitelikteki kendi deneme ortamınızda(işletim sistemi sürümü, Oracle veritabanı sürümü, parametreleriniz, tablo ve dizin seçimleriniz, veri dağılımınız vs. size özeldir) önerilenleri mutlaka önce denemeli ve sonuçlarını çözümlemelisiniz.

Bu yazıda özetlemeye çalıştığım duruşum çevrenizdeki birçok kişi J2EE, SOA vs. gibi yeni teknolojileri karizmatik esas amaçlarmış gibi pozisyonlarken size eski hatta garip gelmiş olabilir, dolayısı ile tartışma potansiyeli yüksek olduğunu düşündüğüm bu yazımı sonlandırmadan önce siz okuyucuların değerli yorum ve tecrübelerini merakla beklediğimi belirtmek istiyorum.

Not: Aman SQL diline balık çizdirecek kadar kendinizi kaptırmayın, bu kadarı da cidden fazla

SQL> set pagesize 0

SQL> set linesize 3000

SQL> select     y "&_DATE" from dual model return updated rows

  2      dimension by (999 x) measures (lpad('x',200) y, 0 z)

  3      rules iterate (80)

  4      (

  5      y[for x from -10 to 10 increment 1] order by x=y[cv(x)]

  6      ||case when iteration_number<2 then 'X' when iteration_number<12 then

  7        case when abs(cv(x))between 10-iteration_number and 11-iteration_numb

er then 'X' else ' ' end

  8      when -.1+sqrt(power(iteration_number/3-14,2)+power(cv(x),2)) between 8.

5 and 10 then 'X'

  9      when iteration_number=55 and cv(x)=-3 then 'O'

 10     when iteration_number between 35 and 40 and cv(x)=3 then '/'

 11     else ' '

 12     end

 13     )

 14     order by x;

old   1: select     y "&_DATE" from dual model return updated rows

new   1: select     y "03/09/2009" from dual model return updated rows

XX                                    XXXXXXXXX

XXX                          XXXXXXXXXXXXXXXXXXXXXXXXXXX

XXXX                    XXXXXXXXX                   XXXXXXXXX

XX XX                XXXXXXX                             XXXXXXX

XX  XX            XXXXXX                                     XXXXXX

XX   XX         XXXXXX                                         XXXXXX

XX    XX       XXXXX                                             XXXXX

XX     XX     XXXX                                     O           XXXX

XX      XX   XXXX                                                   XXXX

XX       XX XXXXX                                                   XXXXX

XX        XXXXXXX                                                   XXXXX

XX       XX XXXXX                                                   XXXXX

XX      XX   XXXX                                                   XXXX

XX     XX     XXXX                 //////                          XXXX

XX    XX       XXXXX                                             XXXXX

XX   XX         XXXXXX                                         XXXXXX

XX  XX            XXXXXX                                     XXXXXX

XX XX                XXXXXXX                             XXXXXXX

XXXX                    XXXXXXXXX                   XXXXXXXXX

XXX                          XXXXXXXXXXXXXXXXXXXXXXXXXXX

XX                                    XXXXXXXXX

 

21 rows selected.

SQL>

Kullanılan Kaynaklar

 

Good SQL Practices, Stephane Faroult

http://www.roughsea.com/vids/SQL_Best_Practices.html

Expert Oracle Database Architecture: 9i and 10g Programming Techniques and Solutions, Thomas Kyte

http://asktom.oracle.com

The Burden of Proof, Jonathan Lewis

http://www.google.com.tr/url?sa=t&source=web&ct=res&cd=1&url=http%3A%2F%2Fnocoug.org%2Fdownload%2F2003-08%2Fburden_of_proof.ppt&ei=TKifSrr8DIr-mwOenKTqDw&usg=AFQjCNGpiFj1zI49P74qUAFuiQadPq-Q8g&sig2=DXTke412DfL0ySavQl5NBg

Obfuscated SQL contest, Oracle Community – Database Developers Group

http://www.oraclecommunity.net/forum/topic/show?id=1988559%3ATopic%3A3577 

http://blog.turkcell.com.tr/2009/09/18/veri-veritabani-basarili-veritabani-uygulamalari-icin-dort-oneri/

Son Düzenleme Salı, 14 Aralık 2010 08:43
Yusuf Arslan

Yusuf Arslan

Oracle Open Source

1985 Tokat/Reşadiye doğumluyum.İlk-orta-lise hayatını Amasya/Suluova ilçesinde geçirdim.Sakarya Üniversitesi Bilgisayar Mühendisliği bölümünü bitirdikten sonra kariyerime Oracle,SAP alanlarında danışmanlık vermek üzere devam etmekteyim. Kullandığım,bildiğim teknolojiler ve diller; SAP BO Oracle BI Applications Oracle Data Mining Oracle BI Reports(http://www.iski.gov.tr/web/statik.aspx?KID=1000717) Oracle Data Integrator Oracle BI Publisher(XML Publisher) Oracle Database 10g Oracle Mapviewer PL/SQL,Java,Oracle JDeveloper,Oracle Forms-Reports,C# Data warehouse process optimization Database system implementation Using encoding for security systems Software development, test and deployment Presentation and communication skills Bu adreslerden de bana ulaşabilirsiniz, [email protected] https://datawarehouse.gen.tr/ http://www.arslanyusuf.blogspot.com/ http://yusufarslaneng.blogspot.com/ http://twitter.com/yusars http://tr.linkedin.com/pub/yusuf-arslan/27/35b/57b

Website: arslanyusuf.blogspot.com/ E-posta: Bu e-Posta adresi istek dışı postalardan korunmaktadır, görüntülüyebilmek için JavaScript etkinleştirilmelidir

1 comment

Yorum yaz

Make sure you enter the (*) required information where indicated.
Basic HTML code is allowed.

You are here Kategoriler Oracle Veri, Veritabanı, Başarılı Veritabanı Uygulamaları İçin Dört Öneri