VERİTABANINDA DÜZENLİLİK DENETİMİ



Benzer belgeler
VERİ TABANI YÖNETİM SİSTEMLERİ

1 Temel Kavramlar. Veritabanı 1

BIM 312 Database Management Systems. Veritabanı Kavramına Giriş

Veri Tabanı-I 1.Hafta

VERİ TABANI UYGULAMALARI

İLİŞKİSEL VERİTABANLARI

UZAKTAN EĞİTİM MERKEZİ

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veritabanı Sistemleri

Bölüm 1: Veritabanı Yönetim Sistemlerine Giriş

1 Temel Kavramlar. Veritabanı 1

ELIF KIOTZEOGLOU RESUL MURAD MERT PACOLARI

2 Temel Kavramlar (Devam) Veritabanı 1

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

10-Veri Tabanları.

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi

VERİ TABANI YÖNETİM SİSTEMLERİ

Veritabanı. Ders 2 VERİTABANI

License. Veri Tabanı Sistemleri. Konular büyük miktarda verinin etkin biçimde tutulması ve işlenmesi. Problem Kayıt Dosyaları

Kepware Veritabanı Ürünleri. Teknolojiye Genel Bir Bakış

HASTANE OTOMASYONU VERİ TABANI YÖNETİM SİSTEMLERİ TEMEL VERİTABANI KAVRAMLARI

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

VERİ TABANI PROGRAMCILIĞI DALI

VERİ TABANI SİSTEMLERİ

İngilizce'de Relational Database Management System (RDBMS) olarak ifade edilir.

Veri Tabanı-I 1.Hafta

Veritabanı Tasarımı. Introduction to the Oracle Academy

İnternet Programcılığı

Bilgi Servisleri (IS)

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Bilgisayar Uygulamaları. MySql

Coğrafi Bilgi Sistemlerine Giriş. Ünite 5 - Veri Tabanı Yönetim Sistemleri

Veritabanı Uygulamaları Tasarımı

Başlıca Ürün-Bilgi Sistemleri

Veritabanı Yönetim Sistemleri, 2. basım Zehra ALAKOÇ BURMA, 2009, Seçkin Yayıncılık

Tekrar. Veritabanı 2

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) İş Kuralları ve Veri Modelleri

1.PROGRAMLAMAYA GİRİŞ

Oracle Database 11g: Introduction to SQL

=A1+A2-A3, =A1*A2/A3,

Veri Tabanı Yönetim Sistemleri Bölüm - 3

PostgreSQL Veritabanı Sunucusu Devrim GÜNDÜZ.

Semantik Ağ ve Üst Veri Sistemleri İçin Yeni Nesil Veri Tabanı Yönetim Modeli: NoSQL. R. Orçun Madran Atılım Üniversitesi.

VERİTABANI VERİTABANIN AVANTAJLARI ÖZET

AKADEMEDYA YAZILIM BİLGİSAYAR EĞİTİM VE DANIŞMANLIK TİC. SAN. LTD. ŞTİ Kocaeli Üniversitesi Yeniköy Teknopark Yerleşkesi Başiskele / Kocaeli Tel Faks

SQL (Structured Query Language)

Mühendislikte Veri Tabanları Dersi Uygulamaları (MS-Access)

Ders Kodu Yarıyıl T+U Saat Kredi AKTS. Programlama Dilleri

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili)

İlişkisel Veri Tabanları I

Veritabanı, Veri Madenciliği, Veri Ambarı, Veri Pazarı

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

Microsoft SQL Server 2008 Oracle Mysql (Ücretsiz) (Uygulamalarımızda bunu kullanacağız) Access

MAPINFO PRO TEMEL VE İLERİ SEVİYE EĞİTİM İÇERİĞİ

1-Veritabanı Yönetim Sistemleri /Tanım

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler

VERİ TABANI YÖNETİM SİSTEMLERİ. Öğr. Gör. Selçuk Özkan

İşletim Sisteminin Temel İşlemleri

2-Veritabanı Yönetim Sistemleri/ Temel Kavramlar

HP Yazılım Zirvesi - İstanbul 20 May Wyndham Grand Levent Erdem Alaşehir / Finansbank Güvenlik Olay Korelasyonunda Büyük Veri Kullanımı

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

Veri Tabanı-I 5.Hafta

T.C. ÇALIŞMA VE SOSYAL GÜVENLİK BAKANLIĞI İŞ SAĞLIĞI VE GÜVENLİĞİ GENEL MÜDÜRLÜĞÜ. Kemal ÖZAT. İSG Uzman Yardımcısı İSG-KATİP Şubesi

MAPINFO PROFESSIONAL TEMEL VE İLERİ SEVİYE KURS İÇERİĞİ

MongoDB. Doğan Aydın. Eylül, 2011

T.C. MALTEPE ÜNĠVERSĠTESĠ MÜHENDĠSLĠK FAKÜLTESĠ ENDÜSTRĠ MÜHENDĠSLĠĞĠ BÖLÜMÜ LĠSANS PROGRAMI Güz Yarıyılı

ÜTS PROJESİ PROJE TANITIMI

Powered by

Maltepe Üniversitesi Endüstri Mühendisliği Bölümü Veri Tabanı Yönetimi (END 210)

Veri Tabanı Örnekleri

Chapter 1 Introduction to Database Processing. Fundamentals, Design, and Implementation, 9/e

BİLGİ TEKNOLOJİSİNİN TEMEL KAVRAMLARI. 1-Bilgisayar, donanım ve yazılım kavramları 2-Bilgisayar çeşitleri 3-Bilgisayarlar arsındaki farklılıklar

TARBİL Kapsamında Uydu ve Yersel Veri Tespit, Kayıtçı İşlem Yönetim Sistemi Geliştirilmesi

SİSTEM İHTİYAÇLARI (Tiger Plus / Tiger 3)

VERĐTABANLARINA GĐRĐŞ

Genel Sağlık Sigortası MEDULA KASIM-2006

İş Zekası için Dört-Katmanlı Veri Modellemesi Gerçekleştirimi. Harun Gökçe EG Yazılım, TOBB ETÜ

VERİTABANI ORGANİZASYONU

Veritabanı Tarihi. 1960s: Bilgisayarlar artan saklama kapasiteleri ile birlikte firmalar tarafından karşılanabilir hale gelmeye başladı

VERİTABANI & VERİTABANI YÖNETİMİ

YZM 3215 İleri Web Programlama

VERİ TABANI YÖNETİM SİSTEMLERİ I

Advanced Oracle SQL Tuning

Swing ve JDBC ile Database Erişimi

Veritabanı Tasarımı. Kullanıcı Erişimini Kontrol Etme

1 Milyon Kullanıcıya Nasıl Hizmet Veriyoruz? CloudLMS Teknik Alt Yapı ve Mimarimiz

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

E-Defter Oluşturma Aşamasında Sık Karşılaşılan Uyarı Mesajları Ve Çözümleri

BİLGİ İŞLEM HİZMETLERİ PROSEDÜRÜ

Birden Çok Tabloda Sorgulama (Join)

SİSTEM İHTİYAÇLARI (Tiger Enterprise / Tiger 3 Enterprise)

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301)

Veritabanı Güvenliği ve Savunma Algoritmaları

BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI

PLC (Programlanabilir Kontrol Cihazı) TABANLI SİSTEMLERİN İNTERNET ÜZERİNDEN İZLENMESİ

Bilişim Ağları Dairesi Başkanlığı. 15 Eylül 2005

JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması

KURUMSAL BİLGİ TEKNOLOJİLERİNDE PROFESYONEL ÇÖZÜMLER. i-gate E-DEFTER UYGULAMASI Bilgi Teknolojileri

MİKRO V15 İLE GELEN BAZI YENİLİKLER

Transkript:

Hakan YÜKSEL VERİTABANINDA DÜZENLİLİK DENETİMİ Hakan YÜKSEL Sayıştay Denetçisi Giriş Yaşam düzeyindeki ilerleme, nüfus artışları ve birleşmeler kamu kurumlarının faaliyetlerini sürdürürken gerçekleştirdikleri işlemlerde eskiye göre önemli ölçüde artışlar meydana getirmiştir. Teknolojinin gelişmesi ile maliyetlerde önemli azalışlar sağlanması, işlemlerin ve bilgilerin tutulduğu evrakları zamanla terkedilme aşamasına getirmiş ve bu evrakların yerini elektronik kayıtlar almıştır. Mali olaylar ihtiva eden bu elektronik kayıtların denetlenmesi de hiç kuşkusuz elektronik ortamda olacaktır. Mali işlemlere esas teşkil eden elektronik kayıtlar miktar olarak yer yer ciddi büyüklüklere ulaşabilmektedir. Elektronik kayıtların miktar olarak çok büyük olması, bunların mali tablolara etkisinin veya hukuki düzenlemelere uygunluğunun denetlenmesini yada herhangi bir yolsuzluk tespit edilmesini neredeyse imkansız hale getirmiştir. Ne var ki bu kayıtları denetleyecek çeşitli Bilgisayar Destekli Denetim Araç ve Teknikleri (CAATTs) üretilmiştir. Bununla ilgili, elektronik kayıtları analiz eden ve hataları raporlayan yığınla bilgisayar programı mevcuttur. IDEA, ACL, Applaud, Prospector, CA Panaudit Plus vb. programlar bunlardan başlıcaları arasında sayılabilir. Bu programlar bir denetçinin ihtiyaçlarını karşılayacak düzeyde olup belli bir büyüklükteki veriyi kolaylıkla analiz edebilmektedir. Ancak bu programlar yüz milyonlarca satırlık veri üreten büyük ve karmaşık kurumların denetlenmesinde yetersiz kalabilmektedir. Bu durumda yapılması gereken şey nedir? Örneğin 2 milyar kayıtttan oluşan bir tablo ile karşılaşsaydınız ve bunun üzerinde analiz yapmanız gerekse idi ne yapardınız? Veya 1 milyar kayıtlık bir tabloyu 500 milyon kayıtlık başka bir tablo ile karşılaştırmanız gerekse idi ne yapardınız? Bilgisayar destekli denetimde adlarını çokça duyduğu- 83 TEMMUZ - AĞUSTOS - EYLÜL 2011

Veritabanında Düzenlilik Denetimi muz klasik programlar bu tür problemlerin çözümünde yetersiz kalmaktadır. Bu kadar kayıtlık tabloları tutabilen sistemler varsa, bu sistemler bunun analinizini de yapabilir mi? Verinin ya bizzat tutulduğu ortamlarda, ya bu ortamların replike edildiği benzer ortamlarda ya da daha teknik ifade ile denetime yönelik olarak yeniden inşa edilen Datawarehouse (veriambarı) ve Datamartlarda SQL yardımıyla denetimin yürütülmesi mümkündür. Konuyu daha detaylı açmadan önce veritabanı ile ilgili bazı kavramların tanımlanmasında fayda vardır. 1. Veritabanı (Database) Nedir? Bu kavramları açacak olursak. Özellik bir tablonun isimlendirilmiş kolonudur. Örneğin TCKIMLIK, AD ve SOYAD kolonlarının olduğu bir tabloda AD sahip olduğu kolonun özelliğidir. O kolonda bulunan bütün veriler birer AD dır. TCKIMLIK özelliğinde bulunan bütün veriler TC kimlik no bilgisini içerir. TCKIMLIK özelliğinde bulunan bütün nesneler aynı alandadırlar (domain) ve aynı kısıtlara (constraints) tabidirler. Örneğin TCKIM- LIK kolonunun kısıtı number(11) şeklinde tanımlanır. Bunun anlamı TCKIMLIK NO alanı bir sayıdır ve sayısal ifadelerin dışındaki ifadeler burada barınamaz. Bu alan 11 karakterlidir, 12 karakterli bir veri bu alana girilemez. Veritabanı, gereksiz yinelemelerden arınmış olarak, verilere hızlı, verimli ve güvenli bir şekilde ulaşılmasına olanak verecek biçimde tasarlanmış birbiriyle ilişkili veriler topluluğudur. Veritabanlarını tanımlayan birkaç özelliği şöyle sıralayabiliriz: Veritabanı birbiriyle ilişkili verilerden oluşur. Veritabanı birbiriyle tutarlı verilerden oluşur. Veritabanındaki veriler gereksiz tekrarlardan arındırılmışlardır. Bir word dosyasında telefon numaraları verilerini tuttuğumuzu varsayalım. Bu word dökümanına veritabanı diyebilir miyiz? Veya bir excel dökümanında derneğinize kayıt olan kişilerin T.C. Kimlik numaraları ile ad ve soyad bilgilerini tuttuğumuzu varsayalım bu dökümana da veritabanı denilebilir mi? Cevap elbetteki hayır. Bunlar birer veritabanı değildir. Veritabanı belli özellikleri ( attribute ) ve belli satırları (tuple) olan ilişkiler (tablo) topluluğudur. 2. Veritabanı Yönetim Sistemi (Database Management System) Veritabanı Yönetim Sistemi (VTYS), kullanıcılara veritabanı tanımlama, oluşturma, değiştirme ve bakımını yapma ve bu yapıyı yürütme olanağı sağlayan programlar bütünüdür. Daha geniş bir ifade ile tabloları, kullanıcı adlarını (şema adlarını), kullanıcıların rollerini, haklarını ve yetkilerini tanımlayan, tablo uzaylarını (tablespace) fiziksel ve mantıksal sürücüler üzerindeki disk alanlarına göre yöneten, bellek büyüklüğüne, işlemcilere ve kullanıcı sayılarına göre performansı optimize eden sistem ve yazılımdır. Günümüzde en basitinden en karmaşığına kadar bir yığın veritabanı mevcuttur. En basitleri Microsoft Access, Paradox, Foxpro, SQLite altında oluşturulan tablolara veritabanı diyebileceğimiz gibi ORACLE, POSTGRESQL, SYBASE, IBM DB2 ve Microsoft SQLSERVER gibi üst seviye veritabanları vardır. 3. Veritabanlarının Tarihçesi 1970 yılında Edgar Frank Codd A Relational Model of Data for Large Shared Data Banks isimli makalesi ile ilk defa ilişkisel veritabanını ortaya attı. 1973 yılında ilk ilişkisel veritabanı olan Ingres (daha sonraları POSTGRESQL) büyük işletmelerin ve devletlerin kayıtlarını kaydetmek üzere ortaya çıktı. (University of California, Berkeley) 84 TEMMUZ - AĞUSTOS - EYLÜL 2011

Hakan YÜKSEL 1978 yılında isimli veritabanı üretildi. 1982 yılı sonlarında IBM DB2 adındaki veritabanını üretti. 1988 yılı sonlarında Microsoft SQL Server ortaya çıktı. Aynı yıl Ingres, Post Ingres anlamında Postgres isimini aldı ve SQL standartlarını sağladı. 1995 yılında MySQL isimli, günümüzde websitelerin büyük çoğunluğuna hizmet veren veritabanı ortaya çıktı. Aynı yıl Postgres in adı kendisi için daha anlamlı olan PostgreSQL olarak değiştirildi. Günümüzde kullanılan en popüler veritabanları, PostgreSQL, DB2, MSSQL dir. 4. Türkiye de Hangi Kurum Hangi Veritabanını Kullanıyor Kamu Kurumu Veritabanı Proje Sosyal Güvenlik Kurumu Maliye Bakanlığı Sosyal Güvenlik Kurumu IBM DB2 Sybase Medula Sistemi, İşveren Sistemi, Emektar Sistemi, SPAS, MOSİP Vergi Daireleri Otomasyon Projesi(VEDOP) Datawarehouse(Veri ambarı) Sağlık Bakanlığı Sağlıknet, TDMS Sağlık Bakanlığı İlaç Takip Sistemi İçişleri Bakanlığı Kimlik Paylaşım Sistemi Mernis İçişleri Bakanlığı Ulusal Adres Paylaşım Sistemi( UAPS ) Maliye Bakanlığı Say2000i Adalet Bakanlığı Başbakanlık Gümrük Müsteşarlığı Ulusal Yargı Ağı Bilişim Sistemi (UYAP) E-Devlet, Proje Ulaştırma Bakanlığı tarafından Başbakanlık adına yürütülmektedir Gümrük Kapıları Güvenlik Sistemleri Projesi (GÜMSİS) TÜBİTAK E-İmza Projesi Emniyet Genel Müdürlüğü Mobil Elektronik Sistem Entegrasyonu (MOBESE) Ziraat Bankası Bankacılık İşlemleri Tapu ve Kadastro Genel Müdürlüğü Sanayi ve Ticaret Bakanlığı MSSQL MSSQL Tapu Kayıt Bilgi Sistemi (TAKBİS) Merkezi Sicil Kayıt Sistemi (MERSİS) 5. Veritabanlarında Denetimin Avantajları 5.1. Veri Tabanında Denetime Duyulan İhtiyacın Asıl Nedeni Diğer Programların Yetersiz Kalmasıdır Veritabanında SQL yardımıyla yürütülen denetimler diğer denetim programlarında yürütülen denetimlere göre daha performanslı olmaktadır. Bu durum veritabanlarında hayati önemi haiz bilgilerin tutulması dolayısıyla veritabanı yönetim sistemlerinde kullanılan yüksek mühendislik bilgisinden ileri gelmektedir. Veritabanları yapısı itibari ile sunucu şeklinde çalışır. Veritabanları raid teknolojilerine kendisini adapte ederek birden fazla diske paralel yazma ve onlardan paralel okumayı başarılı bir şekilde sağlayarak performansı önemli ölçüde artırır. Böylece milyarlarca kayıttan oluşan tabloları dakikalar içinde analiz etme imkanı elde edilmiş olur. Bu konuyu daha da açacak olursak, örneğin bir diske belli şartlar altında saniyede 50MB lık veri atılıyor olsun. 500MB lık bir veri 500MB/50MB=10 sn lik bir zaman diliminde atılacaktır. Bu veriyi paralel olarak on harddiske atarsak veri 1 saniyede bilgisayar diskine blocklar halinde kaydedilirdi. Veriyi okumak da buna benzemektedir. Bu da bize, veriyi 10 kat daha hızlı yazma ve okuma diğer bir ifade ile daha hızlı analiz etme imkanını sağlamış olur. Raid sistemlerinin yanında veritabanlarının da paralel yazma özelliği bulunmaktadır. Örneğin tablespaceların birden fazla oluşturulması durumunda veritabanı bu tablespacelarda parallellik sağlayacağından hız bir ölçüde artacaktır. Veritabanlarında ayrıca çoklu iş (multi-tasking) yapılabilmektedir. Diğer bir ifade ile bir kişi aynı anda birden fazla analiz yapabilmektedir. Diğer klasik bilgisayar destekli denetim programlarında bilgisayara bir iş verildiğinde o iş bitmeden ikinci bir işe başlanılamamaktadır. Ancak veritabanlarında istenirse birden fazla iş aynı anda çalıştırılabilmektedir. 5.2. Veritababınında Direk Denetim İmkanı Denetelenen kurumunun ana sistemlerinde denetimin yürütülmesidir. Denetlenen kurumunun ana sistemlerine iki şekilde bağlanılabilinir. Birincisi veritabanına bir bilgisayar programı veya bir web uygulaması ile bağlanılmasıdır ki bu tür uygulamalarda bağlanan kişi sadece tekil sorgulama yapabilmektedir. Dolayısıyla analizde tekil düzeyde kalmaktadır. Örneğin vergi numarasına bakma, belli T.C. kimlik numaralarına ne kadar 85 TEMMUZ - AĞUSTOS - EYLÜL 2011

Veritabanında Düzenlilik Denetimi 5.3. SQL ve PL Avantajı tutar da ödeme (prim, vergi, vs) yapıldığını öğrenme vb. İkincisi ise veritabanı bazında bağlanmadır ki bu durumda sistemler imkan verdiği ölçüde yığın (batch) analiz yapmak mümkündür. Bazen denetçi şüphelendiği bir konuyu daha önce hiç almadığı büyük bir tabloda analiz etmek zorunda kalabilir. Analiz bir amaca yönelik bir kerelik yapılacak bir denetim ise ve tablo yeterince büyük ise tabloyu almadan, verinin bulunduğu ana sisteme veritabanı bazında bağlanarak yapmak istediği denetimi direk sistem veritabanında kolaylıkla yapabilir. SQL, veritabanlarında sorgulama yapmak için kullanılır. Anlamı yapısal sorgu dilidir (Structured Query Language). SQL, öğrenilmesi oldukça basit bir dildir. İyi bir matematik bilgisi ile SQL ile neredeyse herşeyi yapmak mümkündür. SQL in yetersiz kaldığı durumlar olabilir. Bu durumda PL (Prosesürel Dil) ihtiyaca koşmaktadır. Loop, if then...else, if...else.., for, when case vb fonsiyonları kullanabildiğimiz PL (prosedürel dil) desteği ile harika analizler yapma imkanı sağlanır. Ayrıca package, prosedure, function gibi araçlarla denetime zenginlik katmak mümkündür. Yüzbinlerce insan SQL i kullandığından bütün dünyada yaygındır. Ve bir problem ile karşılaşıldığında çözüme ulaşmak oldukça kolaydır. 5.4. Denetimin Kalitesini İzleme ve Denetimin Kontrol Kolaylığı SQL ile yapılan analizlerde, bütün yapılanlar SQL kodunda gözler önündedir. Dolayısıyla bir analiz yapıldıktan sonra elde edilen sonuç tablolarının doğruluğunu denetlemek için sadece SQL koduna bakmak yeterlidir. 86 TEMMUZ - AĞUSTOS - EYLÜL 2011

Hakan YÜKSEL Örneğin yaptığımız analiz 40 yaşın üstündeki erkeklerden gelir düzeyi 900 TL nin altında olanlar ile ilgili olsun. Diğer analiz programlarında bu kriterleri sağladığınızı ve bir sonuç tablosuna ulaştığınızı varsayalım. Bu durumda bir kaç hafta sonra tablonuza baktınız ve şöyle bir soru aklınıza geldi: Acaba 40 yaş sınırını analize katmış mıydınız? Bu durumda tablonuz küçük ise tabloyu kontrol etmek hiç bir sıkıntı çıkarmayacaktır. Ancak tablonuz çok büyük ise ve herhangi bir script kullanmamış iseniz cevap için sonuç tablosunun içinde bir kontrol daha yapmanız gerekecek. Tablonun büyük olması halinde zaman kaybı kaçınılmazdır. Halbuki SQL de SQL kodunu kontrol etmeniz yeterlidir. 5.5. Veri Tabanı Merkezi Kontrol Sağlar ve Veri Tekrarı Azalır Veri tabanı, veri tabanı yöneticisi (DBA) tarafindan yönetilir ve sistemde veriler merkezi olarak güncellenir. Böylece denetçiler verileri yüklemek ve hazırlamak ile ilgili herhangi bir zaman kaybı yaşamaz. Verilerde meydana gelen karışıklıklar önlenmiş olup bellekten tasarruf edilir. Bu konu ile ilgili iki yönden veri tekrarında azalma söz konusudur. Birincisi veritabanının gerektirdiği ilişkisel tablo yapısının kullanılması ile veri tekrarı önlenmiş olunur. İkincisi bütün denetçiler tarafından ihtiyaç duyulan ortak tabloların veritabanı yöneticisi tarafından bir kez yüklenmesi neticesinde, herbir denetçinin bu ortak verileri tekrar tekrar yüklemesi önlenmiş olur. Örneğin Mernis verisi, SGK prim verisi, Tapu verisi, Vedop verisi, kurumun yevmiye defteri ve mizanı, belli periyotlarda çekilen banka extre verileri gibi verilerin tek bir kişi tarafından sisteme yüklenmesi ile hem zamandan hem de bellekten tasarruf edilmiş olur. 5.6. Verilerin Paylaşımı Sağlanır Denetimde ihtiyaç duyulan aynı veriler tüm kolaylığıyla diğer kullanıcılar tarafından da kullanılır. Aynı veri değişik kişilerin PC lerinde tekrar tekrar tutulmaz. Bir ekip çalışmasında bir denetçinin ürettiği bir sonuç tablosu başka bir denetçi için girdi tablosu olabilir. Bu durumda veriyi text ile aktarmak yerine sadece o denetçinin kullanıcı adından ilgili veriyi kendi bilgisayarına getirmesi (fetch) yeterlidir. 5.7. Çoklu Sunucu Desteği Gelişmiş veritabanlarında çoklu sunucu desteği vardır. Veritabanları birden fazla sunucuyu tek bir sistem gibi çalıştırabilmektedirler. Örneğin Google firması bir milyondan fazla sunucuyu tek bir sistem gibi çalıştıra- 87 TEMMUZ - AĞUSTOS - EYLÜL 2011

Veritabanında Düzenlilik Denetimi rak milyonlarca işlemci ve harddiski aynı anda tek bir sistem gibi kullanarak saliselik başarıyı sağlamaktadır. Bir kaç sunucunun işlemcileri ve depolama alanları tek bir sistem gibi çalıştırılarak çok güçlü sistemler elde edilmektedir. Bu durum mevcut sistemlerin yetersiz hale gelmesi durumunda mevcut sunucuyu hurdaya ayırma yerine ilave sunucular ekleyerek dikey genişleme ile daha güçlü sistemlerin çok daha ucuz maliyetlerle elde edilmesini de sağlamaktadır. Örneğin 64 çekirdeği 48 harddiski olan bir sistem bulunsun. Harddisk kapasitesini ve işlemci sayısını artırmanız gerekmektedir. Sistemi tamamen yenilemek bir yöntem gibi görülebilir. Ancak onun yerine 32 çekirdekli 60 harddiskli yeni bir sunucu satın aldığınızı düşünelim. Bu durumda sisteminiz 96 çekirdekli ve 108 harddiskli yeni bir sisteme dönüşmüş olacaktır. Halbuki bu sistemi tek defada satın alınsa idi bir servete mal olacaktı. 5.8. Endeksleme (Index) ve Bölümlendirme (Partitioning) İndexleme ve partitioning, veritabanının hızını diğer bir ifade ile performansını artırmak için kullanılmaktadır. İndexleme, veritabanının bir tablosunun, bir veya daha fazla kolonunundaki bilgilerinin daha sonraki aramalara zemin hazırlamak için bir defalığına veritabanının kendi mantık silsilesinde alfabetik veya nümerik olarak belli gruplara göre belli bir sırada dizilmesi ve ayrılmasıdır. Örneğin histogramik olarak dağınık verileri barındıran 500.000.000 satırı bulunan bir kolonda bir arama yapıldığı zaman, indexleme bulunmadığı durumda arama yapılan değer tablonun bütün satırlarına (Full Scan) veritabanı sistemi tarafından tek tek bakılır. Diğer bir ifade ile tablo tam taranır. Bu çok ciddi zaman kayıplarına yol açar. Halbuki indexleme olması durumunda veritabınının aranan değeri bulması sadece bir kaç salisedir. Çünkü indexlemenin mevcudiyeti ile veritabanı hash scan yaparak nokta atışı ile istenen değeri nerede bulacağını bilmekte ve saliseler içerisinde değeri ekranınıza getirmektedir. Partitioning ise indexlemeden farklı olarak benzer özellikli verilerin tablonun içinde gruplandırılmasıdır. Burada bir tablonun içinde fiziksel başka tablolar (partitions) oluşturulmaktadır. Partitioning farklı şekillerde yapılabilir. (hash-partitioning, list partititoning, range partitioning..) Örneğin, veritabanında bir tabloda YIL adında bir kolon olsun. YIL kolonuna göre list partitioning yapılması durumunda 2008 yılı verileri gruplanarak tablo içinde bir partition a 2009 yılı gruplanarak ayrı bir partition a ve 2010, 2011 ve 2012 verileri gruplandırılarak ayrı ayrı partition lara veritabanı sistemi tarafından otomatik olarak yazılmaktadır. Daha sonra 2010 yılında gerçekleşmiş bir değer arandığında tablounun yaklaşık beşte dördü elenmekte ve veritabanı tablonun sadece yaklaşık beşte birini barındıran 2010 partition ına bakmakta ve bu da ciddi bir zaman kazancı sağlamaktadır. SONUÇ Kamu kurumlarının faaliyetlerinin zaman içinde artması ve mali unsurlar ihtiva eden bu faaliyetlerin bir yansıması olan elektronik kayıtların büyük boyutlara ulaşması, bu kayıtların denetimini de elektronik ortamda yapılmasını zorunlu kılmıştır. Veritabanında SQL yardımıyla denetimin yürütülmesi, klasik denetim programlarına göre getirdiği esnek ve kullanışlı yapı dolayısyla bazıları tarafından daha fazla kabul görmüştür. Büyük, karmaşık ve yönetilmesi daha zor verilere sahip olan kurumlar kayıtlarını işin doğası gereği veritabanlarında tuttuklarından; bu kurumların bütün sistemlerine nüfuz etmek, eksik bir nokta kalmadan kurumun bütün verilerine ulaşmak ve bu kurumların denetimini başarılı ve etkin bir şekilde yürütmek ancak veritabanları üzerindeki denetimlerle mümkün olacaktır. 88 TEMMUZ - AĞUSTOS - EYLÜL 2011