
www.bilgisite.com
Bilgi Güçtür

Çeşitli bilgilerin bir arada tutulduğu depo olarak çok kısa ve özet
bir şekilde tanımlanabilir.
Bu tanımı biraz daha açar ve irdelersek ; çeşitli amaçlara yönelik
olarak hazırlanmış tablolardan oluşan bilgi depolarıdır. Bu
tablolarda tutulan bilgiler ve bunların birbiriyle ilişkilerinin
düzenlendiği, bilgiye hızlı bir biçimde erişme yöntemlerinin
sağlandığı bir sistemdir.
Örnek olarak bir malı üreten şirketi ele alacak olursak ; bu
şirketin ürettiği mallar, bu malları üretmek için kullanması gereken
malzemeler, bu malzemeleri aldığı diğer şirketler, üretilen
malzemeleri satın alanlar, şirkette çalışanlar, şirketin makine
parkı, iş yaptığı diğer şirketlerle olan mali alışverişleri gibi
bilgiler değişik tablolarda tutulmaktadır. Saymaya çalıştığım bu
evrelerin her birinde ayrı ayrı veritabanları kullanılacağı gibi tek
bir veritabanı altında da toplanabilir. Diğer şirketlerin
veritabanlarıyla gerçekleştirilecek olan bağlantılarla bilgi
alışverişinde de bulunulmaktadır.
Daha basit anlatımla insan beynide bir veritabanı olarak
nitelendirilebilir. Hayatımız boyunca çeşitli kaynaklardan
aldıklarımız, öğrendiklerimiz beynimizde toplanmakta ve istenilen
zamanda kullanılmaktadır. O halde en gelişmiş veritabanı ‘İnsan
Beynidir’. Beynimizde çeşitli başlıklar altında tutulan bilgiler
istendiğinde tek olarak veya diğer bilgilerle birleştirilerek
kullanıma sunulur. Renkler tablosunda bildiğimiz ve tanıdığımız
renkler tutulur. Kişiler tablosunda tanıdığımız kişilerin isimleri,
adresleri, telefon bilgileri yer alır. Hatta bu kişiler tablosunda
görsel olarak bu kişilerin yüzlerinin resimleri de yer almaktadır.
Tadlar tablosunda ise acı, tatlı, ekşi gibi bilgiler yer alır. İşte
ayrı ayrı tablolarda tutulan bu bilgileri tek başına kullandığımız
gibi diğer tablolardaki bilgilerle birleştirerek daha da
zenginleştirmek mümkündür.
Biz bu derste veritabanını oluşturan bileşenleri ve onları nasıl
kullanacağımızı göreceğiz. Oluşan veritabanında bilgileri hangi
tablolarda, nasıl tutacağımızı, onlara nasıl erişebileceğimizi,
nasıl birleştirerek kullanacağımızı işleyeceğiz. Bilgi girişinin,
kullanımının yöntemlerini incelerken bu işlerde kullanılacak olan
yazılımlar bizim konumuz dışındadır. Çünkü oluşan veritabanında ki
bilgilere istenilen yerden istenilen programlama dili kullanılarak
erişmek mümkündür. Hangisinin nerede ve nasıl kullanılacağı bir
tercih meselesidir.
Günümüzde veritabanının kullanılması çok yaygın olduğu için bu
alanda da uzmanlaşmaya gidilmiş ve çeşitli meslekler oluşmuştur.
Database Administrator (Veritabanı yöneticisi), Database Analist (Veritabanı
analizcisi) bu meslek gruplarından önemli olanlarıdır. Oluşan bir
veya birden fazla veritabanın yönetilmesine yönelik olarak çeşitli
yazılımlar mevcuttur ve bunlara DBMS (DataBase Management System)
denmektedir. Ayrıca veritabanlarının birbirleriyle olan
ilişkilendirilmesine RDBMS (Relational DataBase Management System)
şeklinde tanımlanmaktadır.
Günümüzde en basitinden en karmaşığına kadar bir yığın Veritabanları
mevcuttur. En basiti Microsoft’un Access programı altında veya
Paradox, Foxpro altında oluşturulan tablolara da veritabanı
diyebileceğimiz gibi gene Microsoft’un SQL veya ORACLE, PROGRESS,
SYBASE bilinen en üst seviye veritabanlarıdır. Aynı şekilde IBM
AS/400 veya mainframe sistemlerinde kullanılan DB2 ‘da bir
veritabanıdır. Gelişen teknoloji ile veritabanlarının kullanım
alanlarının gelişmesi sonucu içinde görsel bilgileri (resim, ses,
video vb.) tutar hale gelmiştir. Internetin yaygınlaşması sonucu ve
veritabanlarının işlevleride geliştirilmiş ve WEB uyumlu hale
gelmiştir.
Kurulacak olan veritabanı üzerinde bilgi girişi veya sorgulama
yapacak olunması bu sistemin iyi analiz edilmesini gerektirmektedir.
Sadece tablolara bağlı değildir bu analiz. Bu veritabanının hangi
ortamlarda çalışacağı yani Local Network’lerde mi (LAN) yoksa daha
geniş uzak alanlarda mı (WAN) çalışacağı, veritabanın çalışacağı
işletim sistemine, ana makinanın performansına (disk, memory,
işlemci bazında) , veritabanı üzerinde çalışacak olan programlama
diline bağlıdır.
Bir ana makine (server) üzerinde kurulmuş olan veritabanını
oluşturan tabloları, bağlı kullanıcıları ve bunların tablolar
üzerindeki haklarını, işletim sistemiyle olan bağlantıları yani
gereken disk alanı, gerekli bellek ve işlemci hızlarını ayarlayan
sistem Veritabanı Yönetim Sistemi (DBMS DataBase Management System)
olarak adlandırılır.
Gartner Group’un yapmış olduğu bir araştırmaya göre bu tür
sistemlerin 7/24 çalışmasına engel olacak hatalar ve oranları ;
Uygulama Hataları %40 ( Yetersiz testler, yönetimsel değişiklikler,
aşırı yüklenmeler)
Kullanıcı Hataları %40 (Unutulan/atlanılan işler, fonksiyon/procedure
hataları, güvenlik ve
backup hataları)
Diğer Hatalar %20 (Donanım/İşletim sistemi hataları, Network
hataları)
Veritabanı sistemleri sayesinde oluşan bilgilerin çeşitli amaçlar
doğrultusunda kullanılması, sorgulanması, raporlanması ihtiyacı da
doğmuştur. Çok sayıda kullanıcının bu istekleri yapması ve gereken
bilgiye zamanında ulaşabilmesi için mevcut veritabanı sistemleri
yetersiz kaldığı görülmüştür. Bilgi giren ve sorgulayan kişilerin
aynı veritabanı üzerinde çalışma yapmaları en başta hız olmak üzere
başka diğer sorunları da ortaya çıkarmıştır. Bunların çözümüne
yönelik olarak VERİAMBARI (DATAWAREHOUSE) sistemi geliştirilmiştir.
Veri ambarı kısaca, detay bilgilerin özet bilgiler haline getirilmiş
halidir. Detaylandırırsak, girilmiş ve girilmekte olan detay
bilgilerin belirlenen periyot zamanlarında (saatlik, günlük,
haftalık,aylık vb.) çeşitli özet tablolarda birleştirilerek
toplanmaktadır. Sorgulamalar bu özet tablolar üzerinden yapılmakta
ve kullanıcı detay bilgiye ulaşmak istediğinde çalışan veritabanına
ulaşmaktadır. Böylece sürekli bilgi girişi yapılan veritabanı
sistemi meşgul edilmemektedir. Yönetim Bilişim Sistemleri
(Management Information System-MIS) bu veri ambarlarının
kullanılması sonucunda doğmuştur. Ayrıca günümüzde müşteri
ilişkileri, çağrı sistemleri de bu veri ambarlarını kullanmaktadır.
CRM (Customer Relationship Management) diye bilinen “Müşteri
İlişkileri Yönetim” pogramları da geniş bir ağdan toplanan
bilgilerin yönetilmesine hizmet eder. Internet ortamında yapılan
ticaret çeşitlerine katılanların hareketlerinden derlenen bilgilerin
analizi ve yönetilmesi bugüne kadar bilinmeyen davranış şekillerinin
öğrenilmesine ve yapılamayan hizmetlerin verilmeye başlanmasına
neden olmuştur.

B2B (Business to Business) , B2C (Business to Customer) veya C2C
(Customer to Customer) olarak adlandırılan yeni ekonomik kavramlar
internette yapılan ticaret şekillerini göstermektedir.
B2C – Üretici ile tüketici arasında yapılan her türlü ticari
ilişkiyi içermektedir. Üretilen her türlü mal, emtea veya hizmetin,
internet ortamında, tüketiciler tarafından satın alınmasıdır.
Internet ortamında en yaygın olarak kullanılan ticari yöntemdir.
E-TICARET kavramı temel olarak bu ilişkeden doğmuştur. Tüm
firmaların amaçları bu doğrultadır. Bu ticari eylemi dört bacaklı
bir masaya benzetilebilir : Ürününü satmak isteyen firma, ürünü
satın alacak müşteri, bu ürünü yerine teslim edecek taşıyıcı firma
ve bu hizmetlerin karşılığının ödemesini kontrol edecek bankalar.
B2B – Üreticiler ile Üreticiler arasındaki (yada firmalar arasındaki)
internet ortamında yapılan ticari ilişkiye verilen isimdir. Bir
ürünün, malın veya hizmetin başka bir firmanın faaliyet konusuna
girdi olarak alınması bir ticari ilişkidir. B2C sırasında satın
alınan ürünün stoklardan azalması sonucunda tedarik edilmesi için
başka bir firmaya otomatik olarak sipariş verilmesi B2B’ye bir
örnektir. Bir başka ticari ilişkide, gene B2C sonucunda hizmetin
alıcıya ulaştırılması veya eksilen malın stokta tamamlanması için
mal hareketlerinin üçüncü bir firma (lojistik firma olarak
nitelendirilir) tarafından yerine getirilmesi de örnek olarak
verilebilir. Firmalar arasında Eski zamanlarda nternet ortamında
verilen hizmet
C2C – Müşteriden müşteriye yapılan ticari faaliyettir. Bu ticari
ilişkinin detayları henüz tam olarak netleşmemiştir. Daha çok
bireyler arasındaki ilişkilerin getirdiği bir oluşumdur. B2B ve B2C
faaliyetlerinin artması, kuralların netleşmesi sonucunda bu hizmet
dalının da gelişmesi beklenmektedir.

Internet ortamında ki sanal mağazaların, portalları kullanarak
alışveriş yapan müşterilerin her türlü bilgilerinin bir sistemde
tutulması önem kazanmıştır. Müşterilerin cinsiyetleri, yaşları,
coğrafik durumları, alışveriş alışkanlıkları, aldıkları ürünler,
ödeme şekilleri, sahip olduklarının bilinmesi onlara mal ve hizmet
satmak durumunda olan firmaların daha değişik pazarlama, reklam ve
satış tekniklerine yönelmelerini zorunlu kılmaktadır. Geniş bir
pazarda, benzer ürünlerin daha az maliyetle satışa sunulması
tercihlerin kolaylıkla değişmesi demektir. Bu yüzden firmalar
kendilerini ziyaret eden ve/veya alışveriş yapan müşterileri
kaybetmemek zorundadırlar. Onlara en iyi hizmeti, en doğru ve en
kısa sürede verebilmek için CRM programlarını kullanmaktalar.
Böylece aynı alışveriş sitesine giren 20 yaşındaki bir erkeğe hitap
edebilecek ürünler gösterilirken, 30 yaşlarındaki bir bayana daha
değişik ürünler gösterilmektedir. Siteden daha çok elektronik
ürünler almakta olan bir müşteriye yeni girişinde ilgisini
çekmeyecek bir ürün gurubunu göstermek yersizdir. Bu kişinin e-mail
adresine yeni çıkan veya kampanyada olan elektronik ürünler hakkında
mesajlar atmak onu siteye çekecek ve alışveriş yapmasına
çalışılacaktır. Bu hizmetlerin ödemesi sırasında devrede olan
bankalar içinde hem firma hem de firmanın müşterisi müşteri olarak
kabul edilecek ve onlara değişik şekillerde hizmetler sunulacaktır.
Bu alışverişler sırasında veya sonrasında müşterilerin ilgili
firmalara telefonla arayarak ve buradan da çeşitli hizmetler
almaktadır. Çağrı ve yönlendirme merkezleri, yardım masaları bu
hizmetleri vermektedir. Burada çalışanlarda arayan müşteriye ait
bilgileri görerek hizmetlerini vereceklerdir. Belki de buradan da
girilen bilgiler başka yerlerde kullanılacaktır.
CRM’i bir uygulama yazılımı veya kullanılan teknolojik cihazlara
bağlamak ve e-ticareti de teknolojinin en son noktası olarak
nitelendirmek yanlıştır. Tüm ticari faaliyetlerde yer alan en temel
unsur, olayın olmazsa olması INSAN dır. Diğerleri sadece birer
araçtır. Bütün bilgilerin toplanması, saklanması, analize hazır
değerlere getirilmesinde bu araçlardan yararlanılırken tüm bu
aşamalarda ki her karar noktasında insan yer almaktadır.

Görüldüğü üzere çok çeşitli bilgiler çok değişik ortamlardan
gelmekte ve bunların en hızlı bir şekilde saklanması ve
istenildiğinde kullanılması, paylaşılması gerekmektedir. Bu
bilgilerin tutulacağı yegane sistem ise VERİTABAN’larıdır. En küçük
sistemden en büyük sistemlere kadar geniş bir yelpazede yer alan
veritabanlarının bir çatı altında toplanarak bilginin paylaşılması
ortak hedeftir.
Internet ortamında yer alan siteler üzerinde bir yığın bilgi statik
ve dinamik olarak bulunmaktadır. Firmalara ait sitelerde, kendi
veritabanları ile bağlantılı olup, bilgi girişi ve sorgulamalarla
hizmet vermektedir. Buradan yola çıkarak internetin sınırsız bir
dünya olduğu ve içerdiği bilginin boyutu terabaytlar cinsinden ifade
edilmektedir. Bu bilgilere ulaşabilmek için arama motorları
kullanılmaktadır.

Yukarıda anlatılanların amacı, veritabanı sistemlerinin günümüze
kadar ki gelişimi ve geldiği noktanın vurgulanmasıdır. Sadece
veritabanının kurulmasının yeterli olmadığı ve bunun etrafında
birçok faktörün yer aldığını ve gelinecek noktanın daha başlangıçtan
bilinerek önlemlerin alınması bilinmelidir.
Veritabanı tasarımı aynı program tasarımı gibidir. Neyi, nerede ve
nasıl tutulacağı düşünülerek tablolar oluşturulur ve içleri çeşitli
alanlara ayrılarak bilgiler yerleştirilir. Amaç ; aynı türden
bilgilerin bir tablo altında toplanması, tekrarlanmaması (değişik
tablolarda da yer almaması), bu bilginin birlikte kullanılabileceği
diğer bilgilerin yer aldığı tablolarla sağlam bağlantılarının
oluşturulmasıdır.
Buraya kadar anlatılanlar arasında yer alan tablolar, alanlar ve
kayıtlar veritabanı bileşenlerinin en küçük parçalarıdır. İleriki
bölümlerde diğer bileşenleri de göreceğiz.
Bir Tablo (Table) içinde, birden fazla sayıda ve tipte yani karakter,
sayısal, görsel vb. Alan (Field) bulunmaktadır. Bu tablonun
alanlarına satır satır girilen bilgilerde Kayıttır (Record).
Veritabanlarında kullanılan tablolarda çeşitli amaçlar altında
gruplanmıştır. Parametre tabloları, Master Tablolar, Detay Tablolar,
Hareket (Transaction) Tablolar bu gruplardır.
Parametre Tabloları, diğer tablolara bilgi girişinin yapılması
sırasında kullanılmaktadır. Bilginin standart ve belli bir disiplin
altında olması için bazı alanlarda kullanıcıların istedikleri gibi
giriş yapılmasına izin verilmemektedir. Örneğin İLLER veya İLÇELER
birer parametre dosyasıdır. Aynı şekilde bir üniversitede ki
FAKÜLTELER de veya DERSLER bir parametre dosyasıdır. İlgili diğer
tabloya giriş yapılırken IL, ILCE veya FAKULTE, DERSLER tablosundan
seçim yapılarak uygun bilginin seçilmesi gereklidir. Aksi takdirde
her kullanıcının istediği gibi giriş yapması sonucunda bilgilerde
tutarsızlık oluşur. Bu tablo tipinde tanımlamalar bir kez yapılır.
Parametre tablosunda kullanılan bir bilgi başka bir tabloda
kullanılmışsa artık silinemez, değiştirilemez.
Master Tablolar, ana bilgilerin tutulduğu tablolardır. OGRENCI
bilgileri, OGRETMEN bilgileri birer master (ana) tablodur. Bir
öğrenciye veya öğretmene ait temel bilgilerin (ad,soyad, kimlik no,
doğum tarihi, yeri vb.) yer aldığı bu tablolarda yer alır. Bu
tablolar tanım dosyaları gibidir. Bir veri tabanında birden fazla
master tablo olabilir.
Detay Tablolar, bir master tablonun belli bir alanı kullanılarak
diğer bilgilerinin tutulduğu tablo tipidir. Bir öğrencinin aldığı
derslerin tutuldugu OGRENCI_DERS tablosu bir detay tablodur. Bu
tabloda, OGRENCI master tablosundan Ogrenci no. Alanı kullanılarak
DERSLER tablosundan seçim yapılarak bir öğrencinin aldığı dersler
tanımlanır. Her Detay tablonun, mutlaka bir master tablosu bulunur.
Hareket Tabloları, bir tipe veya zamana veya özelliğe bağlı olarak
yapılmış hareketleri barındırır. Bir malın satın alma veya satışları
hareket tablosunda yer alır. Aynı şekilde bir personelin işe
giriş-çıkışları da bir hareket tablosunda tutulur. Her hareket bir
kayıttır.
Tabloların bu şekilde tanımlanmasının nedeni analiz sırasında,
bilgilerin nerede ve nasıl tutulacağının belirlenmesinde bizlere
yardımcı olunması içindir. Bilginin birden fazlada tabloda tekrar
etmeyeceğini göz önünde bulundurarak tablolar arasındaki ilişkinin
sağlanmasında özel alanlar kullanılır. Bu alanların tekrar etmemesi
yani veritabanı içinde tek olması mutlak şarttır. Öğrenci kimlik
numarası tüm üniversite içinde tektir ve sadece bir öğrenciye aittir.
Aynı şekilde bir araba plakası da bir araca aittir ve diğer
tablolarla ilişki bu özel alan üzerinden kurulur.
Bu bölümde veri tabanı nedir sorusunu cevaplamaya ve veri tabanı yönetim sistemlerini tanımaya çalışacağız.