10-07-2017 Saat: 22:23
VERİ TABANI NEDİR?
Yanlış veri tabanı tasarımı sonucunda ortaya çıkan kötü ilişkileri düzeltmek üzere ele alarak sistematik biçimde, daha küçük ilişkilere bölme sürecidir
TEMEL VERİTABANI ÇEŞİTLERİ
MySQL IBM DB2 Paradox Interbase Microsoft Access Informix Progress Microsoft SQL Server PostgreSQL Oracle MS Access : Microsoft’un geliştirdiği, ufak çapta uygulamalar için kullanılan bir yazılımdır. SQL Server : Yine Microsoft’un geliştirdiği, birçok işlemi yapabileceğiniz bir yazılımdır. Oracle : Dünya üzerinde en büyük pazar payına sahip VTYS’dir. MySQL : Dünyada en çok kullanılan açık kaynaklı VTYS’dir.
MYSQL VERİTABANI KULLANIMI ÖRNEĞİ
SELECT KOMUTU Select * from tablo_adi
UPDATE KOMUTU Update tablo_adi set tablo_sütun=değer
INSERT KOMUTU Insert into tablo_adi value (değer)
DELETE KOMUTU Delete from tablo_adi
İLİŞKİSEL VERİTABANI NEDİR?
İlişkisel veritabanı yönetim sistemi verilerin tablolarda satırlar ve sütunlar halinde tutulduğu ve veri tutarlığını sağlayan bir sistemdir.
Tablodaki kolonlar başka tablolardaki kolonlar ile ilişkilidir
Avantajları:
Örnek: User -> Access_token
Her kullanıcı için bir tane access_token tanımlanır, her access_token’inda bir kullanicisi vardır. Bu durum OneToOne Relationship’ e örnek olarak gösterilebilir.
Birden – çoğa: Bir tablodaki bir satır başka bir tablodaki birden fazla satırla bağlantılıdır.
Örnek:
Yazilar ve Yazilarin yorumları örnegi verilebilir.
Her yazının birden çok yorumu olabilir ama her yorum sadece bir yazıya sahip olacaktır.
Çoktan – çoğa: Bir tablodaki birden fazla satır başka bir tablodaki birden fazla satırla bağlantılıdır.
Örnek:
Haber ve Haberin kategorileri örnegi verilebilir.
Her haber için birden fazla kategori tanımlanabileceği gibi her kategori içinde birden fazla haber yazılabilecektir. Böyle durumlarda bir ara tabloya ihtiyac duyulur.
haberler
haber_kategorileri
kategoriler Şeklinde olacatır.
NOSQL VERİTABANLARI
nosql -> realtion olmayan veritabanı tipi
İnternetin gelişmesiyle büyüyen veriyi daha hzlı işlemek amacıyla ortaya çıkmış sistemlerdir.
NoSQL de yenı bır alana ıhtıyac oldugunda yenı bır sutun eklenmeye ıhtıyac yoktur.yeni bir alana ihtiyacınız olduğu durumlarda kaydı direk eklemeniz yeterli olmaktadır. NoSQL sizin yerinize alanı oluşturur ve değeri kaydeder. Kayıtların maliyetsizce gerçekleşmesinin nedeni ise verilerin tablo ve sütunlarda saklanması yerine JSON ve XML formatına benzer yapıda saklanmasıdır.
NOSQL VERİTABANI AVANTAJLARI
Okuma ve yazma işlemlerinde daha perfonmasnlı olabilirler. Yatay olarak genişletilebilirler. Yani aynı veritabınını birkaç sunucuda çalıştırarak rahatça sisteminizi genişletebilirsiniz. Esnek yapıları vardır. Birçok açık kaynak kodlu projelere uygun olduğu için malyet açısından çok uygundur.
NoSql sistemler güvenlik konusunda o kadarda iyi değillerdir. %100 Güvenliğe ihtiyaç duyulan durumlarda kullanılması cok onerılmez. Veri kaybı söz konusu olabilir. Bunun sebebide ram üzerinde çalışıyor olmasıdır.
NoSql Veritabanı Kullanan Sistemler
BigTable,Hbase,Cassandra MongoDB,CouchDB,RavenDB AzureTableStorage,MemcacheDB AmazonDynamo,Dynomite BigData,Neo4J Graph Db Big Table ve DynamoDb yıllardır google ve amazon tarafından kullanılmaktadır.Burada google ve amazonun NoSql kullanmadaki sebepleri Buradanda anlayacağımız gibi büyük verilerin hızlıca işlenmesinde NoSql oldukca faydalı olacaktır. Bir sonraki makalemde görüşmek üzere :)
Not:Alıntıdır.
- veri tabanları günümüzde web, mobil ve masaüstü uygulamlarında kullanılan kullanıcı ve yönetici tarafındaki insanların okuduğu gördüğü veya eklemek istediği her şeyi gözümüzün önüne serilen verilen tutulduğu yerdir.
- Veritabanı basit olarak bilgi depolayan bir yazılımdır.
- Amacına hizmet etmesi için en az bir tablodan oluşmak zorundadır.
- Verileri depo etmek ve istenildiği zamanda hızlı bir şekilde gözler önüne sermeye yarayan sistemdir.
- Hızlı ve kullanışlıdır.
- Veriler hızlı ve kolay girilebilmeli
- Güvenli bir şekilde saklanmalı
- İstenildiği şekilde ve kolay sorgulanmalı
- Öncelikle bu veri tabanını nerede kullanaksınız onu tespit etmelisiniz.
- Çok fazla tekrar eden verilere tablolalara ayırmak hem daha hızlı hemde daha kullanışlı olacaktır.
Yanlış veri tabanı tasarımı sonucunda ortaya çıkan kötü ilişkileri düzeltmek üzere ele alarak sistematik biçimde, daha küçük ilişkilere bölme sürecidir
TEMEL VERİTABANI ÇEŞİTLERİ
MySQL IBM DB2 Paradox Interbase Microsoft Access Informix Progress Microsoft SQL Server PostgreSQL Oracle MS Access : Microsoft’un geliştirdiği, ufak çapta uygulamalar için kullanılan bir yazılımdır. SQL Server : Yine Microsoft’un geliştirdiği, birçok işlemi yapabileceğiniz bir yazılımdır. Oracle : Dünya üzerinde en büyük pazar payına sahip VTYS’dir. MySQL : Dünyada en çok kullanılan açık kaynaklı VTYS’dir.
MYSQL VERİTABANI KULLANIMI ÖRNEĞİ
SELECT KOMUTU Select * from tablo_adi
UPDATE KOMUTU Update tablo_adi set tablo_sütun=değer
INSERT KOMUTU Insert into tablo_adi value (değer)
DELETE KOMUTU Delete from tablo_adi
İLİŞKİSEL VERİTABANI NEDİR?
İlişkisel veritabanı yönetim sistemi verilerin tablolarda satırlar ve sütunlar halinde tutulduğu ve veri tutarlığını sağlayan bir sistemdir.
Tablodaki kolonlar başka tablolardaki kolonlar ile ilişkilidir
Avantajları:
- Veri tekrarını en aza indirir.
- Sorgular daha verimli olur yani istediğimiz veirıye çok daha rahat ulaşabiliriz.
- Sorgular daha verimli olur yani istediğimiz veirıye çok daha rahat ulaşabiliriz.
- Daha güvenlidir. Hiyerarşik bir yapısı var ve herkesin ulaşabileceği yer sınırlandırılmış olur.
- Performans anlamında çok başarılı olamayabilir.Bazen küçük bir veriyi çekmek istesenizde iyi bir sorgu yazamazsanız bütün objeyi geitereceginden sorgu süreniz uzayabilir.
- NoSql’e göre daha yavaş kalırlar.
- Veritabanı mimarisini değiştirirmek kolay olmayabilir.
- Üç temel ilişki tipi vardır:
Örnek: User -> Access_token
Her kullanıcı için bir tane access_token tanımlanır, her access_token’inda bir kullanicisi vardır. Bu durum OneToOne Relationship’ e örnek olarak gösterilebilir.
Birden – çoğa: Bir tablodaki bir satır başka bir tablodaki birden fazla satırla bağlantılıdır.
Örnek:
Yazilar ve Yazilarin yorumları örnegi verilebilir.
Her yazının birden çok yorumu olabilir ama her yorum sadece bir yazıya sahip olacaktır.
Çoktan – çoğa: Bir tablodaki birden fazla satır başka bir tablodaki birden fazla satırla bağlantılıdır.
Örnek:
Haber ve Haberin kategorileri örnegi verilebilir.
Her haber için birden fazla kategori tanımlanabileceği gibi her kategori içinde birden fazla haber yazılabilecektir. Böyle durumlarda bir ara tabloya ihtiyac duyulur.
haberler
haber_kategorileri
kategoriler Şeklinde olacatır.
NOSQL VERİTABANLARI
nosql -> realtion olmayan veritabanı tipi
İnternetin gelişmesiyle büyüyen veriyi daha hzlı işlemek amacıyla ortaya çıkmış sistemlerdir.
NoSQL de yenı bır alana ıhtıyac oldugunda yenı bır sutun eklenmeye ıhtıyac yoktur.yeni bir alana ihtiyacınız olduğu durumlarda kaydı direk eklemeniz yeterli olmaktadır. NoSQL sizin yerinize alanı oluşturur ve değeri kaydeder. Kayıtların maliyetsizce gerçekleşmesinin nedeni ise verilerin tablo ve sütunlarda saklanması yerine JSON ve XML formatına benzer yapıda saklanmasıdır.
NOSQL VERİTABANI AVANTAJLARI
Okuma ve yazma işlemlerinde daha perfonmasnlı olabilirler. Yatay olarak genişletilebilirler. Yani aynı veritabınını birkaç sunucuda çalıştırarak rahatça sisteminizi genişletebilirsiniz. Esnek yapıları vardır. Birçok açık kaynak kodlu projelere uygun olduğu için malyet açısından çok uygundur.
NoSql sistemler güvenlik konusunda o kadarda iyi değillerdir. %100 Güvenliğe ihtiyaç duyulan durumlarda kullanılması cok onerılmez. Veri kaybı söz konusu olabilir. Bunun sebebide ram üzerinde çalışıyor olmasıdır.
NoSql Veritabanı Kullanan Sistemler
BigTable,Hbase,Cassandra MongoDB,CouchDB,RavenDB AzureTableStorage,MemcacheDB AmazonDynamo,Dynomite BigData,Neo4J Graph Db Big Table ve DynamoDb yıllardır google ve amazon tarafından kullanılmaktadır.Burada google ve amazonun NoSql kullanmadaki sebepleri Buradanda anlayacağımız gibi büyük verilerin hızlıca işlenmesinde NoSql oldukca faydalı olacaktır. Bir sonraki makalemde görüşmek üzere :)
Not:Alıntıdır.