Bulut Veritabanı
vahap çelik
Günümüzde bulut bilişim en çok kullanılan
teknolojilerden biridir ve veritabanları bulut bilişime doğru kaymaktadır bu
sebepten dolayı bulut veritabanını ve özelliklerini detaylı bir şekilde
inceleyeceğiz. Bu doküman bulut veritabanları ile ilgili temel tüm konuları içermektedir.
Bulut veritabanları kurulum modeline göre ikiye ayrılır. Birincisi Virtual
Machine Image olarak kullanılan veritabanlarıdır. Virtual Machine Image olarak
kullanılan veritabanları bir işletim sistemi, sanallaştırma yazılımı ve son
olarak da bir adet veritabanı yazılımından oluşmaktadır. Virtual Machine Image
veritabanları, genellikle test sistemlerinde kullanılır ve veritabanı
kurulmadan önce ortamı ve sistemi simule etmek için kullanılır. Kurulum
modeline göre ikinci veritabanımız ise servis olarak kullanılan veritabanlarıdır.
Bu dokümanımızda servis olarak kullanılan veritablarının mimrasini ayrıca servis
olarak kullanılan veritabanlarının avantajları ve dezavantajları nelerdir
inceleyeceğiz. Veri modeline göre de bulut veritabanları ilişkisel(sql) ve
ilişkisel olmayan(nosql) veritabanları olmak üzerek ikiye ayrılır. Bulut veritabanı
servisi olarak her ikisi de mevcuttur.
Genel Terimler: Algoritma, Dizayn, Performans
Ek anahtar kelimeler ve ifadeler:Bulut veritabanı yapısı,
servis olarak bulut veritabanı,sanallaştırma
ACM Reference Format:
Vahap Çelik. 2014. Bulut Veritabanı (Mayıs 2014), 5 sayfa.
1.
GİRİŞ
Gelecekte
Bulut Veritabanı dünyanın birçok şirketi tarafından büyük veri depolama
için en çok kabul edilen teknoloji olacaktır. Bu ilişkisel veritabanı; bulut
sunucu üzerinden dağıtma gibi basit bir işlem değildir. Bu gerektiğinde
online ek düğümler ekleyerek veritabanı
performansını artırma anlamına gelir.
Bulut
veritabanı sanallaştırılmış bir bilgisayar ortamı için tasarlanmıştır. Yapılan
bir araştırma gösteriyor ki şirketlerin %36’sı bulut servisleri kullanıyorlar.
Bilişim sektöründe bulut servislerinin kullanımı hızla artmaktadır. Bulut Veritabanları
çoğunlukla bir hizmet olarak kullanılmaktadır.
Bulut Veritabanı kullanım şekillerinin artma gereksinimi bu alanda teknoloji ilerlemelerini
sağlamaktadır. Bulut Veritabanı başlangıçta, müşteriye sadece
veriyi okuma olanağı sağlamıştır.
Ancak, müşterilerin taleplepleri üzerine, yazma sorgusu
da yer aldı. Bu
işlemler Web 2.0 teknolojisinin getirilmesi
ile mümkün olmuştur. Bulut
Veritabanında okuma isteklerinin sayısı hala yazma isteğin daha fazla olduğu görülmektedir. Ancak yakın zamanda okuma sayısı da Bulut Veritabanında artacaktır.
Bu eğilim okuma ve yazma istekleri arasındaki boşlukları daralmaya başlamıştır.
2.
BULUT VERİTABANI YAPISI
Bulut
Veritabanı farklı yerlerde bulunan farklı veri merkezlerinde verileri tutar. Bu
bölgesel veritabanı yönetim sistemin den bulut veritabanını ayırır. Farklı
jeolojik konum ve kurumsal veri merkezlerinde bulunan veri merkezleri sorgu
hizmetleri için tasarlanmış bir bulut veritabanı üzerinde birden fazla düğüm
vardır. Bulut hizmetleri üzerinde veritabanına erişim için farklı yöntemler
vardır. Kullanıcı internet üzerinden bilgisayar kullanarak veritabanına erişebilir;
ya da bir cep telefonu kullanarak bir kullanıcı 3G veya 4G hizmetleri yoluyla
bulut veritabanına erişebilir.
Burada kullanıcı internet üzerinden bir bilgisayardan bulut
veritabanına erişen olduğunu varsayalım.
İnterneti veri merkezleri ve veriye
erişen kullanıcı arasında bir
köprü olarak düşünebiliriz. Sadece tek bir düğüm, Bulut
Veritabanı kullanılan olmadığını burada not etmek önemlidir. Ancak bulut veritabanı
için kullanılan farklı düğümler vardır.
Bu amaçla peer-to-peer haberleşme tercih edilir. Peer-to-peer iletişim benimseme
amacı, tek bir düğümün kullanıcı tarafından uygulanan sorgu her türlü işleyebilir
olmasıdır. Bu karmaşık
gibi görünüyor, ama bulut veritabanındaki her düğüm her düğümde depolanan verilerin
haritası vardır. Bu düğüm sistemi
için kolay bir çözümdür.
2.1 BULUT VERİTABANINA GENEL BAKIŞ
Kullanıcı tarafından
oluşturulan sorgu uygulama yazılımı üzerinden bulut veritabanı
yönetim sistemine ait olan düğümlere gönderiliyor. Düğüm 1 veri haritasını
kontrol ettikten sonra sorgu için en uygun düğümü seçerek uygun olan düğüme
aktarır. Daha sonra uygun olan düğümde sorgu çalıştırılarak sorgu sonucunu
gönderir. Aşağıdaki şekil bulut veritabanı temel
mimarisini göstermektedir.
Resim
1. Bulut veritabanı yapısı
2.2 DÜĞÜMLERİN ÇALIŞMASI
Veritabanında
saklanan verilere erişmek için Bulut Veritabanı Yönetim Sistemi içinde düğümün çalışma
süreci bir sorgu düğüme gönderildiğinde, orada bulunan bir düğümün iki seçeneği
vardır, ya doğrudan veritabanından veriye erişmek ya da dolaylı yoldan veriyi
bağlı olan veritabanı üzerinden erişmesi veya replikasyon veritabanı üzerinden veriye
erişilebilir. Veriye erişildikten sonra veri bulut veritabanı yönetim düğümüne
aktarılır. Bulut veritabanları genellikle düğüm veritabanından veri alır. Düğüm
verilere doğrudan erişir, o düğüm uygulama veri alındığı dosyanın bir meta haritasını
tutar. Aşağıdaki resimde bulut veritabanı yönetim sisteminde bir düğümün çalışma
gösterir. Ayrıca sıklıkla kullanılan veriler bulut veritabanı yönetim düğümünde
tutulacaktır. Bu işlem ise veritabanı performasını artırır.
Resim
2. Düğümlerin Çalışması
2.3 DÜĞÜM BÖLME
Bulut
veritabanları genellikle terabyte seviyesinde veri tutulmaktadır. Eğer
veritabanına gönderilen sorgu sayısı artarsa bunu yönetmek zorlaşır bulut
veritabanlarında. Çünkü birden fazla düğüm vardır ve bu düğümler farklı
lokasyonda bulunmaktadır. Eğer sorgu sayısı aşırı artarsa bulut veritabanı
yönetim sistemi yeni bir düğüm oluşturarak yükü paylaşırlar.
Bu konsept aşağıda verilmiştir. Şekilde bir düğüm veritabanı A2 , A3 , A4 ve A1 ve A5 için diğer yandan
dosyalar üzerinde veri işleme olduğunu görebilirsiniz. Eğer sorgu sayısı aşırı
artar ise, orijinal düğüm sorguları dağıtacak yeni bir düğüm oluşturur. Bölme
işleminden sonra, orijinal Düğüm A dosyaları A1 ve veritabanları A2 ve A3 için
verileri ele alınacaktır. Diğer taraftan, yeni DüğümA ' A4 ve A5 idare edecek .
Bu çok iyi bir uygulamadır ve bulut veritabanlarında büyük miktarda veri
işlemek için yapılır.
Resim
3. Düğüm Bölme
2.4 Dağıtılmış Sorgular
Dağıtılmış sorgu bir sorgunun birden fazla sorgunun kombinasyonu olarak
anlaşılabilir ve dağıtılmış sorguyu oluşturan her sorgu farklı alt gruplara
ayrılarak birden fazla düğüme gönderilir. Her sorgu bilgilerin farklı
düğümlerden sonuçları alınarak veriler birleştirilir. Örnek olarak internet üzerinden bilgisayardan oluşturulan sorgu
daha alt sorgulara ayrılır; Her bir alt sorgu spesifik düğüme iletilir.
Aşağıdaki örnekte; Alt Sorgu 1 ve Alt Sorgu 2 Bulut Veritabanı yönetim sistemi
üzerinden Düğüm 2 yöneliktilir. Alt Sorgu 3 ,Düğüm 5’e ve Alt Sorgu 4 Node 8’e
taşınır Düğümler çözüldükten sonra, cevaplar
da dağıtılmış şekilde döndürülür. Düğümlerin bu cevaplar birleştirilmiş ve daha
sonra kullanıcıya gönderilir
Resim
4.Dağıtılmış Sorgular
3.
Bulut verİtabanı zorlukları
Bulut veritabanları uygulamalarının bazı zorlukları
vardır. Ancak, bu zorluklara rağmen şirketler için en uygun çözümlerden
biridir. Aşağıda bulut veritabanlarının bazı zorlukları ele alınmıştır.
3.1 İnternet Hızı
Veri
merkezindeki veri transferi hızı; veri merkezi erişmek
için kullanılan internet hızı
nispeten çok yüksektir. Veritabanına
gönderilen sorguları çok hızlıdır
ancak veri merkezinden veri almak
için alınan zaman internet hızına bağlıdır. Bu sorunun çözümü için daha hızlı kablolar kullanmaktır.
3.2 Gizlilik
Bulut
mimarisi kullanıcılar ve korsanlara karşı erişilebilirlik açısından daha
gelişmiştir. Ama müşteriler veri sızıntısını göze alamaz ve kendi verilerinin
başkalarının elinde olmasını istemezler.
3.3 Sorgu ve işlem(Transactional) İş yükü
Sorgu iş yükü ve işlem iş
yükü arasında önemli bir fark vardır.
Biz işlem yükü
hakkında tahmin edebiliriz ama sorgu
iş yükü hakkında bir tahminde
bulunamayız. Sorgu iş yükü sorgu sayısına bağlı olarak değişmektedir ve kaç
kullanıcı bağlanacak ve ne kadar sorgu çalışacak bunlar bilinmemektedir.
3.4 Çoklu Kiracılı
Bir sunucuda çalışan bir
yazılım ve yazılımın kullandığı veritabanı, farklı müşterilere aynı zamanda
ayrı ayrı hizmet verebilmektedir. Sunucu tarafında ortak kullanılan yazılım
üzerinde yapılacak iyileştirmeler, geliştirmeler müşterilere herhangi bir
etkisi olmadan kolaylıkla gerçekleştirilebilmektedir. Veritabanı çoklu kiracılı
uygulamalarda farklı tablolar olacak şekilde ortak bir veri tabanı
kullanılabileceği gibi, her bir istemci ortak veri tabanı üzerinde ortak tablolar
da kullanabilirler, veya her bir istemci için farklı farklı veritabanları da
kullanılabilir. Bu yaklaşımların farklı avantajları olacağı gibi, farklı
dezavantajları da olabilir. Örneğin, ortak kullanılan bir veri tabanında bir
istemciye özel verilerin, başka bir istemci tarafından erişilmesi
engellenmelidir, bu da farklı senaryolarda farklı karmaşıklıklara yol açabilir.
4.
SONUÇ
Sonuç olarak bu rapor bulut veritabanı kavramını anahatlarını
ve mimarisini anlatmaya çalıştım. Bulut
Veritabanların avantajları ve dezavantajları olmasına ragmen avantajlarının
sayısı dezavantajlarından çok fazladır. Bu sebepten dolayı Bulut Veritabanlarının
kullanımı giderek artmaktadır ve Bulut Veritabanı kullanan şirketler
kullanmayan şirketlere göre bir adım öndedirler.
KAYNAKÇA
Rafal Ablamowicz and Bertfried Fauser.
2007. CLIFFORD: a Maple 11 Package for Clifford Algebra Computations, version
11. (2007). Retrieved February 28, 2008 from
http://math.tntech.edu/rafal/cliff11/index.html
Patricia S. Abril and Robert Plant. 2007.
The patent holder’s dilemma: Buy, sell, or troll? Commun. ACM 50, 1 (Jan. 2007), 36–44. DOI:http://dx.doi.org/10.1145/1188913.1188915
Sten Andler. 1979. Predicate Path
expressions. In Proceedings of the 6th.
ACM SIGACT-SIGPLAN symposium on Principles of Programming Languages (POPL ’79).
ACM Press, New York, NY, 226–236. DOI:http://dx.doi.org/10.1145/567752.567774
David A. Anisi. 2003. Optimal Motion Control of a Ground Vehicle. Master’s thesis. Royal
Institute of Technology (KTH), Stockholm, Sweden.
Brian Cabral and Leith C. Leedom. 1993.
Imaging vector fields using line integral convolution. In Proceedings of the 20th Annual Conference on Computer
Graphics and Interactive Techniques (SIGGRAPH’93). ACM, New York, NY,
263–270. DOI:http://dx.doi.org/10.1145/166117.166151