Veri Tabanı (Database)

Normalleştirme (Normalisation, Normalizasyon)

Yazan: Şadi Evren ŞEKER Bu yazının amacı, site üzerinde daha önceden anlatılmış olan birinci normal form (1NF), ikinci normal form (2NF) ve üçüncü normal form (3NF) konularını kapsayan bir örnek çözmektir. Genel olarak çok sayıda sınav sorusunda normalleştirme için hayali bazı tablolar sunulur ve bu tabloların normalleştirilmesi (normalizasyonu) istenir. Örnek olarak aşağıdaki tabloyu ele alalım. [...]

Şadi Evren ŞEKER tarafından, 17/01/2012 tarihinde yazıldı. | Bilgisayar Kavramları, Veri Tabanı (Database) | A yorum var

Büyük Tablo (Big Table)

Yazan: Şadi Evren ŞEKER Google tarafından geliştirilen ve arama motoru tasarımında kullanılan yaklaşımdır. Kısaca amaç, web sayfalarının daha başarılı bir şekilde depolanması (storing), bulunması (finding) ve güncellenmesidir (updating) . Google’ın konuya yaklaşımı, ucuz bilgisayarlar tarafından yüksek miktarda verinin tutulması ve işlenmesi yönündedir. Bu yaklaşımın genel bir görüntüsü aşağıdaki şekilde çizilebilir: Yukarıdaki şekilde görüldüğü üzere, bir [...]

Şadi Evren ŞEKER tarafından, 20/11/2011 tarihinde yazıldı. | Veri Tabanı (Database), Web Teknolojileri | A yorum var

İç / Dış Birleştirme (Inner / Outer Anti Semi Join)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde özellikle veri tabanı (databases) konusunda geçen bu kavramlar, iki tablonun birleşmesi sırasında bir tabloda bulunmayan kayıtlar için nasıl bir yol izleneceğini anlatırlar. Bilindiği üzere iki tablonun birleşmesi (join) aslında iki tabloda bulunan kayıtlar için bir kartezyen çarpım (cartesian product) alınması işlemidir. Bir işlemin sadece Kartezyen çarpımının alınması ile [...]

Şadi Evren ŞEKER tarafından, 24/11/2009 tarihinde yazıldı. | Veri Tabanı (Database) | A yorum var

OLEDB

Yazan : Şadi Evren ŞEKER İngilizce olarak object linking and embedding database kelimelerinin baş harflerinden oluşan bir veritabanı terimidir. Aslında OLE terimi (object linking and embedding) Microsoft firması tarafından kazandırılan ve uygulama geliştirme sırasında bir varlığı programa bağlamaya yarayan mantıktır. Örneğin bir prograda bulunan bir resim, programın içerisine dahil edilip çalıştırılabilir kodun (executable code) bir [...]

Şadi Evren ŞEKER tarafından, 07/09/2009 tarihinde yazıldı. | C/C++, Programlama Dilleri, Veri Tabanı (Database) | A yorum var

Mesaj Özetleri (Message Digests)

Yazan : Şadi Evren ŞEKER Özellikle veri güvenliği ve veri bütünlüğü (data integrity) konularında kullanılan mesaj özetleri aslında birer özetleme fonksiyonudurlar (hashing functions). Buna göre büyük bir veriden nispeten daha küçük bir özet üretilir ve bu özetten orijinal veriye geri dönülemeyeceği varsayılır. Mesaj özetlerinden en meşhurları MD5 ve SHA-1 algoritmalarıdır. MD5 : Message digest (mesaj [...]

Veri Bütünlüğü (Data Integrity)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin birinci derece uğraştığı varlık veridir. Yani bilgisayar bilimlerinde yapılan her işi bir bakışa göre veriyi işlemek olarak görmek mümkündür. İşlenen bu verinin bütünlüğü ise ayrı bir problemdir. Veri bütünlüğü ile genelde verinin birden fazla parçaya bölünmesi durumunda bu parçaların bütün olarak tutulması kastedilir. Veri’nin bölünmesi ne zaman gerekir [...]

JAVA ile Veritabanı bağlantısı

Yazan : Şadi Evren ŞEKER Bu yazının amacı JAVA programlama dilinden bir veri tabanına nasıl bağlanılacağını adım adım örnek kod üzerinden açıklamaktır. Uygulamada veri tabanı olarak JavaDB kullanacağız. Bu veritabanı netbeans ile birlikte gelmenin yanında Sun microsystems’in web sitesinden de indirilebilir. Temel olarak bir programlama dilinden (JAVA veya farklı bir dil) bir veritabanına (database) bağlanmak [...]

Şadi Evren ŞEKER tarafından, 09/07/2009 tarihinde yazıldı. | JAVA, Veri Tabanı (Database) | 14 yorum var

CSharp ve SQL

Yazan : Şadi Evren ŞEKER Gelen bir soru üzerine C# ile MS SQL server’dan veri çekmeyi adım adım kod üzerinden inceleyelim. Öncelikle veri çekmek için gereken adımları sıralayalım: Veri tabanına C# dilinde kullanıcı ve şifre ile bir bağlantı oluşturulur. Açılan bağlantı üzerinde bir sorgu (Query) çalıştırılır. Sorgu (query) sonucu bir veri yapısında (data structures) saklanır. [...]

Şadi Evren ŞEKER tarafından, 08/07/2009 tarihinde yazıldı. | C/C++, Veri Tabanı (Database) | 2 yorum var

Atomluluk (Atomicity)

Yazan: Şadi Evren ŞEKER Latince bölünemez anlamına gelen atom kökünden üretilen bu kelime, bilgisayar bilimlerinde çeşitli alanlarda bir bilginin veya bir varlığın bölünemediğini ifade eder. Örneğin programlama dillerinde bir dilin atomic (bölünemez) en küçük üyesi bu anlama gelmektedir. Mesela C dilinde her satır (statement) atomic (bölünemez) bir varlıktır. Benzer şekilde bir verinin bölünemezliğini ifade etmek [...]

BCNF (Boyce Codd Normal Form)

Yazan : Şadi Evren ŞEKER Veritabanı tasarım şekillerinden birisi olan BCNF, üçüncü normal şekil ile (third normal form, 3NF) karşılaştıırlabilir. Yapı olarak normal şekillerde üst sayıdaki normal şekiller, alt normal şekilleri kapsar. Yani 2. normal şekilde olan bütün veri tabanı tasarımları 1. normal şekilde ve benzer şekilde 3. normal şekilde olan bütün veri tabanı tasarımları [...]

Şadi Evren ŞEKER tarafından, 05/03/2009 tarihinde yazıldı. | Veri Tabanı (Database) | A yorum var

Üçüncü normal şekil (Third Normal Form, 3NF)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde, veri tabanı teorisinde, bir veri tabanının daha verimli tutulması için geliştirilen şeklin ismidir. Bu şekil birinci ve ikinci normal şekillere göre daha başarılı çalışmayı hedefler.Unutulmamalıdır ki normal şekillerin hepsinde hedeflenen öncelikli performans, hafızanın daha verimli kullanılmasıdır. Hız için bazı durumlarda normal şekillerin dışına çıkılabilir. Üçüncü normal şeklin, üzerine [...]

Şadi Evren ŞEKER tarafından, tarihinde yazıldı. | Veri Tabanı (Database) | 6 yorum var

İkinci Normal Şekil (Second Normal Form) 2NF

Yazan : Şadi Evren ŞEKER Veri tabanı teorisinde geçen ve ilişkisel bir veri tabanının hafızayı daha verimli kullanması (daha az yer kaplaması) için geliştirilen normal şekillerden ikincisidir. Teorik olarak ikinci normal şekilde olan bütün veri tabanı tasarımları ilk normal şekle (first normal form , 1NF) de uymaktadır. Bir veri tabanı tasarlanırken normal formda olması göz [...]

Şadi Evren ŞEKER tarafından, 16/01/2009 tarihinde yazıldı. | Veri Tabanı (Database) | 4 yorum var

Aday Anahtar (Candidate Key)

Yazan : Şadi Evren ŞEKER Veritabanı teorisinde bir tabloyu tek başına tanımlayamay yeterli olan kolona verilen isimdir. Daha resmi bir tanımlamayla: Bir ilişkide bir aday anahtarın tekrar edildiği iki satır bulunamaz 1. adımda bahsedilen anahtarın bir alt kümesi bulunmaması. İlişkisel veri tabanında bir tablo veya tablolar arası ilişki tanımlandıktan sonra elde edilen sonuç kümesindeki kolonlardan [...]

ilk normal şekil (First Normal Form) 1NF

Yazan : Şadi Evren ŞEKER Veri tabanı teorisinde geçen ve ilişkisel bir veri tabanının hafızayı daha verimli kullanması (daha az yer kaplaması) için geliştirilen normal şekillerden en ilkelidir. Bir veri tabanı tasarlanırken normal formda olması göz önüne alınabilir veya daha sonradan normalleştirilebilir (nomalization). Bu sayede veri tabanının daha az yer kaplaması sağlanmış olur. Ancak bazı [...]

Şadi Evren ŞEKER tarafından, tarihinde yazıldı. | Veri Tabanı (Database) | 2 yorum var

Birleştirme (Join)

Yazan : Şadi Evren ŞEKER ilişkisel veritabanlarını matematiksel olarak modellemeye yarayan ilişkisel cebirde (relational algebra) kullanılan ve veri tabanında bulunan tabloları birleştirerek daha büyük tabloların çıkarılmasını sağlayan işlemdir. Kabaca her birleştirme (join) bir kartezyen çarpım (cartesian product) işlemidir. Birleştirme işlemleri bundan farklı olarak bazı koşullar bulundurur ve tablolar arasındaki tasarım ilişkileri marifetiyle sonuç kümesinde azaltmaya [...]

Şadi Evren ŞEKER tarafından, 14/01/2009 tarihinde yazıldı. | Bilgisayar Matematiği, Veri Tabanı (Database) | 2 yorum var

Kartezyen Çarpım (Cartesian Product)

Yazan : Şadi Evren ŞEKER Kümelerde ve ilişkisel cebir (Relational algebra) iki kümenin elemanlarının sırayla karşılaştırılması durumudur. Örneğin aşağıda T1 ve T2 isimli iki ayrı küme verilmiş olsun: T1 tablosu: İsim Soyisim Ali Baba Cem Yıldız T2 tablosu: Yaş Melsek 50 Tüccar 40 Programcı Yukarıda verilen bu iki tablonun kartezyen çarpımı aşağıdaki şekildedir ( T1 [...]

Küme Bölme İşlemi (Set Division Operator)

Yazan: Şadi Evren ŞEKER Kümelerde ve ilişkisel cebir (Relational algebra) ilk kümede, ikinci kümeden tekrarlanan elemanları bulmak için kullanılır. Örneğin aşağıda T1 ve T2 isimli iki ayrı küme verilmiş olsun: T1 tablosu: İsim Soyisim Yaş Melsek Şadi Evren ŞEKER 30 Bilgisayar Müh. Ali Baba 20 Tüccar Veli Demir 20 Öğrenci Cem Yıldız 20 Tüccar T2 [...]

Fark İşlemi (Difference Operator)

Yazan : Şadi Evren ŞEKER Kümelerde ve ilişkisel cebir (Relational algebra) iki kümenin farklı elemanlarını bulmak için kullanılır. Farklı elemanlarının bulunacağı küme önce yazılır. Dolayısıyla işlemin yer değiştirme özelliği (commutativity) bulunmaz. Örneğin aşağıda T1 ve T2 isimli iki ayrı küme verilmiş olsun: T1 tablosu: İsim Soyisim Yaş Melsek Şadi Evren ŞEKER 30 Bilgisayar Müh. Ali [...]

Birleşim İşlemi (Union Operator)

Yazan : Şadi Evren ŞEKER Kümelerde ve ilişkisel cebir (Relational algebra) birden fazla kümenin birleşimini bulmak (iki kümedeki elemanların tamamını içeren yeni bir küme bulmak) için kullanılan işlemdir. Sembolü “U” işaretidir. Örneğin aşağıda T1 ve T2 isimli iki ayrı küme verilmiş olsun: T1 tablosu: İsim Soyisim Yaş Melsek Şadi Evren ŞEKER 30 Bilgisayar Müh. Ali [...]

Kesişim İşlemi (Intersection Operator)

Yazan : Şadi Evren ŞEKER Kümelerde ve ilişkisel cebir (Relational algebra) birden fazla kümenin kesişimini bulmak (ortak elemanlarından oluşan yeni kümeyi bulmak) için kullanılan işlemdir. Sembolü “∩” işaretidir. Örneğin aşağıda T1 ve T2 isimli iki ayrı küme verilmiş olsun: T1 tablosu: İsim Soyisim Yaş Melsek Şadi Evren ŞEKER 30 Bilgisayar Müh. Ali Baba 50 Tüccar [...]

Seçim İşlemi (Selection Operator)

Yazan : Şadi Evren ŞEKER İlişkisel Cebirde (Relational Algebra) verilen bir küme üzerinde satır bazlı olarak seçme işlemi yapmaya yarar. Basitçe bir kriter belirtilir ve bu kriteri sağlayan satırlar sonuçta kalırken sağlamayan satırlar elenir. Sembolü “σ” işaretidir ve eleme kriteri indis olarak verilir. Örneğin aşağıdaki tabloyu ele alalım: İsim Soyisim Yaş Melsek Şadi Evren ŞEKER [...]

Gösterim İşlemi (Projection Operator)

Yazan : Şadi Evren ŞEKER İlişkisel cebirde (relational algebra) kullanılan işlemlerden birisidir. Basitçe bir küme üzerinden herhangi bir kolonun seçilmesi işlemini gerçekleştirir. Sembolü “Π” işaretidir ve gösterilecek olan (project) kolon ismi indis olarak yazılır. Örneğin aşağıdaki tabloya T1 ismi verelim: İsim Soyisim Yaş Melsek Şadi Evren ŞEKER 30 Bilgisayar Müh. Ali Baba 50 Tüccar Veli [...]

İlişkisel Cebir (Relational Algebra)

Yazan : Şadi Evren ŞEKER İlişkisel veri tabanlarında (relational database) işlemlerin matematiksel olarak modellenmesi ve matematiksel işlemler dahilinde çözülmesi için kullanılan cebirin ismidir. Buna göre bir ilişkisel veritanında kullanılabilecek en temel işlemler aşağıda sıralanmıştır: Projection (Gösterim) Sembolü : “Π” Selection (Seçim) Sembolü : “σ” Küme işlemleri (Set operators) Kesişim (Intersection): “∩” Birleşim (Union): “U” Fark [...]

Veritabanı Dizgi İşlemleri (string manipulations on Database)

Yazan : Şadi Evren ŞEKER Veri tabanında bulunan bir tablodaki bütün alanları değiştirmek veya aramak mümkündür. Bunun için dizgi (string) fonksiyonlarını iyi tanımak gerekir. Örneğin çoğu veritabanı dizgi işlemleri sırasında % işaretini herhangi bir veya birden çok (0 (sıfır) ve daha çok) karakter anlamında işlemektedir. Bu durumda örneğin aşağıdaki sorgu (Query) bize kelimeler tablosunda kelime [...]

Şadi Evren ŞEKER tarafından, 30/12/2008 tarihinde yazıldı. | Veri Tabanı (Database) | A yorum var

Entropi (Entropy, Dağınım, Dağıntı)

Yazan : Şadi Evren ŞEKER Bir sistemin düzensizliğini ifade eden terimdir. Örneğin entropi terimini bir yazı tura atma işleminde 1 bitlik (ikil) ve %50 ihtimallik bir değer olarak görebiliriz. Burada paranın adil olduğunu ve yazı tura işleminin dengeli bir şekilde gerçekleştiğini düşünüyoruz. Şayet para hileli ise o zaman sistemin entropisi (üretilen sayıların entropisi) %50′den daha [...]