SlideShare a Scribd company logo
1 of 27
DAĞITIK VERITABANI SISTEMLERI
01. Nedir Dağıtık Veritabanı?
Dağıtık veri tabanı yönetim sistemi, dağıtık bir veri
tabanının yönetilmesini ve verilerin kullanıcılara
sunulmasını sağlayan bir yazılım sistemidir.
Dağıtık veri tabanı ise bir bilgisayar ağı ile bağlı ancak
birbirinden ayrı veri tabanıdır. Bu sayede dağıtık bir veri
tabanı yönetim sistemi aynı anda birden fazla veri tabanı
üzerinde işlem yapabilir.
01. Nedir Dağıtık Veritabanı?
Dağıtık sistemler, farklı bilgisayarlardaki donanım ve yazılım
bileşenleri arasında verilerin daha güvenli, daha şeffaf ve
daha performanslı olarak tutulmasını sağlayan sistemdir.
Dağıtık sistemlerin var oluş amacı, kaynakları paylaşmaya
duyulan gerekliliktir. Bu kaynaklar, donanımsal olabileceği
gibi veritabanları gibi yazılımsal varlıklar da olabilir.
Büyük ağlarda, dağıtık sistemler, tek bir bilgisayar gibi
davranır ve en iyi performansı sağlar.
01. Nedir Dağıtık Veritabanı?
Dağıtık sistemler, farklı bilgisayarlardaki donanım ve yazılım
bileşenleri arasında verilerin daha güvenli, daha şeffaf ve
daha performanslı olarak tutulmasını sağlayan sistemdir.
Dağıtık sistemlerin var oluş amacı, kaynakları paylaşmaya
duyulan gerekliliktir. Bu kaynaklar, donanımsal olabileceği
gibi veritabanları gibi yazılımsal varlıklar da olabilir.
Büyük ağlarda, dağıtık sistemler, tek bir bilgisayar gibi
davranır ve en iyi performansı sağlar.
01. Nedir Dağıtık Veritabanı?
Genel manada, dağıtık veritabanı sistemlerinin bize avantajları şu
şekildedir.
1. İzole değildir, genişlemeye hazır yapıların temelini
oluşturmaktadır.
2. Cloud’un temelini oluşturmaktadır. Dağıtık mimariler, bulut
sistemleri gibi davranarak, farklı yapıları tek bir yapı olarak
göstererek, bir çok avantaj kazanımını da beraberinde
getirmektedir.
3. Senkron ve replikedir. Sürekli olarak yedekleri alınarak, CDN gibi
teknolojilerle sürekli dağıtılarak, veriler ve raporların çok hızlı
süreler içinde farklı sistemler üzerinden toparlanarak getirilmesini
sağlamaktadır.
4. Yedekli çalışmaktadır. Bir veri, birden fazla sistem üzerinde
tutulduğundan dolayı, bir DB sisteminde yaşanacak olan problem
ya da veri kaybı, diğer sistemlerle tolere edilebilmektedir. RAID
sistemleri gibi düşünebilirsin salocum.
01. Nedir Dağıtık Veritabanı?
Neden tek veritabanı değil?
Tek bir sunucu üzerinde çalışan veritabanı kullanılmak yerine
veritabanını birçok sunucuya dağıtarak kullanmanın (sharding)
faydaları:
• Özellikle sunucuların farklı ortamlarda (bina, şehir) saklandığı
durumlarda eğer birisinde güç kesintisi veya donanım
problemi meydana gelirse sistemin diğeri tarafından devam
ettirilmesi sağlanır.
• Yük paylaşımı yapılarak, daha çok kullanıcıya daha kısa
sürelerde yanıt verilebilmesi sağlanır.
• Daha fazla depolama kapasitesi elde edilir.
• Bir sunucuda disk arızası olması durumunda verilerin
kaybolmaması sağlanır (aynı sunucuda replica kullanılması ile
de bu sağlanabilir).
02. Dağıtık Veritabanı Avantajları
02.01. Şeffaflık/Geçirgenlik (Transparency)
Kaynaklar ve işlemlerin ağ üzerinde dağıtık
olduğundan yapılan işlemler ve «dağıtım»
işlemleri görülebilir, yönetilebilir ve kontrol
edilebilmektedir.
Bu da, sistem üzerinde yaşanabilecek bir sorunun
local olarak gizli kalması yerine, birden fazla yerde
görülebilmesi ve önlem alınabilmesi gibi konuları
beraberinde getirmektedir.
02. Dağıtık Veritabanı Avantajları
02.02. Parçalama (Fragmentation)
Verinin farklı saklama düğümlerine gönderilmek üzere nasıl
parçalanacağı belirlenirken 3 farklı yöntemden biri tercih
edilebilir:
Dikey parçalama: Tablonun sütunlarının farklı düğümlerde
olacak şekilde parçalanması
Yatay parçalama: Belirli bir kriter ile kayıtların parçalanması
Hibrit parçalama: Belirli sütunlardaki verilerden seçilen
kritere göre kayıtların parçalanması
02. Dağıtık Veritabanı Avantajları
02.03. Yineleme (Replikasyon)
• Her parça sistemdeki tüm sunucularda saklanabilir veya
seçilmiş parçalar, seçilmiş sunucularda saklanabilir.
• İstemcinin bir sunucu üzerinde yaptığı değişikliğin diğer
sunuculara da yansıtılması gereklidir.
• Replication işlemi dağıtık veritabanında değişiklikler
arayan özel bir yazılım kullanmayı gerektirir.
• Değişiklikler tespit edildikten sonra, Replication işlemi
tüm sunucuların aynı olmasını sağlar.
• Replication dağıtık veritabanlarının boyutuna ve sayısına
bağlı olarak karmaşık ve zaman alıcı olabilir (bilgisayar
kaynaklarını çok kullanabilir).
02. Dağıtık Veritabanı Avantajları
02.04. Kısmi Yineleme (Partial Replikasyon)
• Her parça sistemdeki tüm sunucularda saklanabilir veya
seçilmiş parçalar, seçilmiş sunucularda saklanabilir.
• İstemcinin bir sunucu üzerinde yaptığı değişikliğin diğer
sunuculara da yansıtılması gereklidir.
• Replication işlemi dağıtık veritabanında değişiklikler
arayan özel bir yazılım kullanmayı gerektirir.
• Değişiklikler tespit edildikten sonra, Replication işlemi
tüm sunucuların aynı olmasını sağlar.
• Replication dağıtık veritabanlarının boyutuna ve sayısına
bağlı olarak karmaşık ve zaman alıcı olabilir (bilgisayar
kaynaklarını çok kullanabilir).
02. Dağıtık Veritabanı Avantajları
02.05. Kopyalama (Duplication)
• Duplication işleminde master olarak tanımlanan bir
veritabanı, belirli zaman aralıkları ile replica olarak
bilinen diğer veritabanlarına kopyalanır.
• Bu işlemde, istemciler yalnızca master veritabanı
üzerinde değişiklik yapabilir. Bu nedenle DML
işlemlerinde yük dengeleme yoktur.
• Sorgularda replica’lar kullanılabildiği için yük dengeleme
vardır.
• Master'dan replica'lara doğru tek yönlü bir güncelleme
yapıldığı için işlem basit ve hızlıdır.
02. Dağıtık Veritabanı Avantajları
02.06. Bölünmezlik (Atomicity)
• Hareket (transaction) işlemede Atomicity* özelliğini
sağlamak için Commit ve Rollback işlemlerinin
gerekliliğinden bahsetmiştik.
• Dağıtık VT sisteminde iki aşamalı Commit mekanizmasına
ihtiyaç vardır:
1. Transaction T'yi başlatan sunucu koordinatör olur ve T'yi
tamamlamak (commit) istediğinde diğer sunuculara
"prepare T" mesajı gönderir.
2. Mesajı alan sunucular "ready T" veya "don't commit T"
gönderir (bu işlem biraz zaman alabileceği için
koordinatör yanıtı alana kadar beklemelidir).
3. Eğer koordinatör herkesten "ready" yanıtı aldıysa bu defa
diğer sunuculara "commit T" mesajı gönderir. Bir
tanesinden bile "don't commit" aldıysa, "abort T" mesajı
gönderir.
4. Tüm sunucular aldıkları mesaja göre, kendi yerel
hareketlerini "commit" veya "rollback" ederler.
02. Dağıtık Veritabanı Avantajları
02.07. İzolasyon (Isolation)
• Okuma (Sorgular) ve Yazma(DML) işlemlerinde Isolation
özelliğini sağlamak için Kilit (Lock) mekanizmalarına
ihtiyaç vardır.
• Dağıtık Kilitleme 3 farklı yaklaşım ile yapılabilir:
1. Merkezi: Bir adanmış sunucu tüm kilit işlemlerinden
sorumlu olur (o sunucuda oluşacak olan hata sistemi
çalışmaz hale getirecek ve performans düşük olacak)
2. Temel-kopya: VT'deki her verinin temel kopyası farklı
düğümlerde kayıtlıdır ve o veriyi kilitlemek isteyen bir
hareket, o verinin sahibi olan düğümden kilit için izin
ister
3. Tam-dağıtık: Okuma için elemanın herhangi bir
kopyasını kilitleme, yazmak için ise tüm kopyalarını
kilitleme mantığı
02. Dağıtık Veritabanı Avantajları
02.08. Kümeleme (Cluster)
• Küme (cluster) yapısı kullanıldığından erişilen verinin
hangi düğümde saklandığı erişen istemci tarafından
bilinmez.
• Küme: Dışarıdan tek bir sunucuymuş gibi algılanan ama
aslında çok çok sunuculu veya çok lokasyonlu yapıdır.
Kullanıcı sorgu çektiğinde, 1 saniye içinde önüne sonuç
gelir. Bunun tek bir veritabanından geldiğini zannetse
de, arka planda onlarca veritabanından sorgu dönebilir.
02. Dağıtık Veritabanı Avantajları
02.09. Büyüme ve Genişleme
Cloud benzeri bir mimariye sahip olduğu için, kullanıcılar
tarafından ilk etapta ciddi bir yatırım gücü ayırmak yerine,
ilk etapta az bir kaynakla başlanan sistem, duruma göre
kaynaklar artırılarak genişletilebilmektedir.
Gerek performans anlamında, gerekse mimarinin
katmanlanması anlamında giderek gelişmeye hazır bir
yapıdır.
1 Milyon kayıtlık ve 2 sunucu ile başlanan bir sistem, ilerde
milyarlık kayıtlar, farklı lokasyonlar ve onlarca sunucuya
dönüşebilir. İhtiyaç duyulması halinde, sistem yükü
azaldıkça kaynaklar azaltılarak yapı tekrar küçültülebilir.
Performans anlamında da, veritabanı dağıtıklığı anlamında
da, lokasyon anlamında da genişletilebilir ve daraltılabilir
bir yapıya sahiptir.
03. Dağıtık Veritabanı Güvenliği
Dağıtık mimarinin getirdiği avantajlardan bir
tanesi de güvenlik anlamında verilerimizin daha
güvenli tutulmasının sağlanabilmesidir.
1. Gizlilik
Verinin yetkisi olmayan kişiler tarafından
erişilebilmesidir.
Dağıtık veritabanı sistemleri, şeffaf ve izlebilir
olması dolayısıyla gizlilik konusunda avantaj
sağlamaktadır.
03. Dağıtık Veritabanı Güvenliği
2. Erişilebilirlik
Verinin yalnızca yetkili kişiler tarafından
erişilebilmesidir. Dağıtık yapıda ve merkezi bir
kontrol sistemi olması dolayısıyla, erişilebilirlik
anlamında kullanıcılar için fayda sağlamaktadır.
Kullanıcılar, istedikleri yerden ve istedikleri kadar
(yetki dahilinde) veriye ulaşabilmektedir.
03. Dağıtık Veritabanı Güvenliği
3. Bütünlük
Verinin, tam ve doğru olmasıdır.
Verilerin, erişim yetkisi olan kötü niyetli kişiler veya
erişim yetkisi olmamasına rağmen erişmiş kişiler
tarafından değiştirilmesi, verilerin birden çok noktada
saklanması avantajıyla engellenebilmektedir.
Bitcoin’in temelinde yatan «Blockchain» teknolojisi de
bütünlük ve dağıtık veri olarak güzel bir örnektir.
Yapılan transaction’ların toplam block dizinlerinin
%51’i tarafından onaylanmadığı sürece doğru kabul
edilmemesi örnek olarak verilebilmektedir.
03. Dağıtık Veritabanı Güvenliği
DDoS Ataklarına Karşı Dayanıklı
Denial of Service olarak bilinen «hizmet aksatma
saldırıları», bilişim sistemlerine beklenenin çok
üzerinde istek gönderilerek sunucuların cevap
verememesini sağlamak üzere yapılmaktadır.
Bankacılık, online ticaret gibi sistemlerin, birkaç saatlik
devre dışı kalması gibi durumlarda, çok büyük
maliyetlerle karşı karşıya kalınmaktadır.
Dağıtık sistemlerde, bir lokasyondaki bir sunucuya
yapılabilecek atak, diğer sistemler tarafından tolere
edilerek, sorunsuz bir şekilde sistemin yanıt vermesini
sağlatılmaktadır.
04. Dağıtık Veritabanları
Dağıtık veritabanı sistemi terimi birbirine
bağlanabilen ve birbirlerindeki nesneleri
kullanabilen farklı veritabanı sistemlerinin bütünü
olarak kullanılır.
Sistemdeki tüm veritabanının aynı tipte olduğu
durum homojen sistem, farklı VTYS'ler bulunması
durumu ise heterojen sistem olarak adlandırılır.
Heterojen sistemlerde farklı VTYS'ler arası
haberleşme "gateway" adı verilen arayüzler ile
sağlanır.
*VTYS: Veritabanı Yönetim Sistemleri
04. Dağıtık Veritabanları
Veritabanı Bağı (Databases Link)
İki fiziksel veritabanı sunucusu arasındaki tek yönlü iletişim
yoludur.
• A veritabanına bağlı olan bir kullanıcı bu veritabanının
veri sözlüğüne eklenen bir bağ (dblink) ile B
veritabanındaki bilgilere ulaşabilir. Ama aynı bağlantı
kullanılarak B veritabanından A veritabanına ulaşılamaz
(B veritabanının sözlüğüne de A'ya ulaşabilmek için yeni
bir bağ eklenmelidir).
• Bulunulan veritabanındaki tüm kullanıcıların vt1
veritabanına bağlanabilmesi için:
CREATE PUBLIC DATABASE LINK vt1 USING 'vt1';
• Bulunulan veritabanındaki tüm kullanıcıların vt1'e, o
veritabanındaki bir kullanıcının üzerinden
bağlanabilmesi için:
CREATE DATABASE LINK vt1
CONNECT TO test IDENTIFIED BY abc123 USING 'vt1';
Diğer veritabanındaki personel tablosunu sorgulamak için bağ @
kullanılarak belirtilir:
SELECT * FROM personel@vt1;
04. Dağıtık Veritabanları
Veriyi dağıtma nasıl yapılır ?
• Eğer küme yapısı kullanıyorsak farklı düğümdeki tablo için
DBLink ismi vermeye gerek yoktur (kümeye bağlanan
istemciler sistemi tek VT olarak görür).
• İster küme, ister çoklu VT yapısı kullanıyor olalım, tablonun
tamamını başka bir düğüme taşıyarak veriyi dağıtmak
uygun bir çözüm olmayabilir.
• Çok sorgu gönderilen bir tablonun kopyalarını farklı
düğümlerde saklamak ve yük dengeleme* kullanmak hız
kazandırabilir.
• Fakat veride değişiklik olduğu zaman tüm diğer kopyalarda
ilgili güncellemenin yapılması da zaman alıcı olacaktır.
• Tabloyu bir bütün olarak ayırmak yerine, satır ve sütun
bazında parçalamak, sorguların ve DML işlemlerinin ilgili
parçalar üzerinde yapılmasını sağlamak çoğu zaman daha
etkili bir çözüm olacaktır.
04. Dağıtık Veritabanları
Sorguda veri birleştirme | Distributed Join
• Dağıtık veriyi sorgularda birleştirmek için farklı yaklaşımlar
kullanılabilir.
• R ve S tablolarının Y alanı üzerinden ilişkili olduğunu
düşünelim; R'yi S'nin tarafına veya S'yi Y'nin tarafına
göndermek ve JOIN işlemi uygulamak gönderilecek olan
verinin hacmi düşünüldüğünde pahalı bir işlemdir.
• Bunun yerine Semi Join veya Bloom Join işlemleri tercih
edilebilir.
04. Dağıtık Veritabanları
Semi Join
• R'ye sadece S.Y sütununu gönderip, join işlemini bu sütun
üzerinde yapma yaklaşımıdır:
• R'nin sadece join ile eşleşen tekrarsız kayıtlarını S'ye
göndermek ve burada son join işlemini gerçekleştirmek
suretiyle daha az ağ trafiği ve daha hızlı join işlemi
gerçekleştirilir.
04. Dağıtık Veritabanları
Bloom Join
• R'de K boyutunda bir bit vektör oluşturulur. (ilk başta tüm
bitleri 0 olacak)
• R'deki her kayıt için Y değerine bağlı olan ve 1 ile K arasında
bir sayı döndüren bir hash fonksiyonu yardımıyla bu bit
vektörünün eşleşen bitleri 1 yapılır.
• Oluşan bit vektörü S'ye gönderilir.
• S'de de aynı hash fonksiyonu kullanılarak oluşturulan bit
vektörü ile R'den alınan bit vektörü karşılaştırılır.
• Uyuşma olan kayıtlar join edilmesi muhtemel olan kayıtlar
olarak işaretlenir ve R'ye gönderilerek join edilir.
05. Üç Seviyeli (3-Tier) İstemci-Sunucu Mimarisi
Bir three-tier uygulama, her biri bir ağın farklı bir yerine
dağılmış, 3 ana parçadan oluşur. Bu parçalar:
• İş istasyonu veya sunum arayüzü
• İş mantığı
• Veritabanı ve veritabanı yönetimi ile ilgili program
05. Üç Seviyeli (3-Tier) İstemci-Sunucu Mimarisi
Bu mantıksal katmanlar Sunum, Uygulama ve Veri hizmetlerine
ayrılmıştır.
Sunum Hizmetleri
Uygulamanın kullanıcıya veri sağlayan kısmına tekabül eder. Ek
olarak, kullanıcının veri ile etkileşimini sağlayan yapıyı da
sağlar. Kısaca, sunum hizmeti kullanıcı ara yüzünü tanımlar ve
onunla etkileşir. Verinin sunumu genelde bazı geçerlilik
kurallarına sahip olmamalı.
İş Hizmetleri/Nesneleri
Uygulama hizmetlerinin bir kategorisidir. Bu hizmet, bir
organizasyonlar işi işlevlerini ve gereklerini içerir. Bu kurallar,
bir kuruluştaki günlük işlerin ortaya çıkma adımlarından
türetilir. Kurallar gelen bilginin geçerli bir tip ve formatta
olduğundan emin olmak için kullanılan geçerlilik kuralları veya
bir işlemi tamamlamak için takip edilen uygun iş adımlarından
emin olmak için kullanılan işlev kuralları olabilir.
Veri Hizmetleri
Konumundan bağımsız olarak veriye erişimi içerir.

More Related Content

What's hot

Oracle Data Protection - 2. část
Oracle Data Protection - 2. částOracle Data Protection - 2. část
Oracle Data Protection - 2. částMarketingArrowECS_CZ
 
MySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software TestMySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software TestI Goo Lee
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기NeoClova
 
MariaDB 마이그레이션 - 네오클로바
MariaDB 마이그레이션 - 네오클로바MariaDB 마이그레이션 - 네오클로바
MariaDB 마이그레이션 - 네오클로바NeoClova
 
Oracle Architecture
Oracle ArchitectureOracle Architecture
Oracle ArchitectureNeeraj Singh
 
memcached Binary Protocol in a Nutshell
memcached Binary Protocol in a Nutshellmemcached Binary Protocol in a Nutshell
memcached Binary Protocol in a NutshellToru Maesaka
 
Demystifying MySQL Replication Crash Safety
Demystifying MySQL Replication Crash SafetyDemystifying MySQL Replication Crash Safety
Demystifying MySQL Replication Crash SafetyJean-François Gagné
 
Cluster Tutorial
Cluster TutorialCluster Tutorial
Cluster Tutorialcybercbm
 
OLTP+OLAP=HTAP
 OLTP+OLAP=HTAP OLTP+OLAP=HTAP
OLTP+OLAP=HTAPEDB
 
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...turgaysahtiyan
 
MV2ADB - Move to Oracle Autonomous Database in One-click
MV2ADB - Move to Oracle Autonomous Database in One-clickMV2ADB - Move to Oracle Autonomous Database in One-click
MV2ADB - Move to Oracle Autonomous Database in One-clickRuggero Citton
 
How Safe is Asynchronous Master-Master Setup?
 How Safe is Asynchronous Master-Master Setup? How Safe is Asynchronous Master-Master Setup?
How Safe is Asynchronous Master-Master Setup?Sveta Smirnova
 
MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용I Goo Lee
 
Dağıtık Sistemler / Programlama
Dağıtık Sistemler / ProgramlamaDağıtık Sistemler / Programlama
Dağıtık Sistemler / ProgramlamaŞahabettin Akca
 
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
The Top 5 Reasons to Deploy Your Applications on Oracle RACThe Top 5 Reasons to Deploy Your Applications on Oracle RAC
The Top 5 Reasons to Deploy Your Applications on Oracle RACMarkus Michalewicz
 
Always on in sql server 2017
Always on in sql server 2017Always on in sql server 2017
Always on in sql server 2017Gianluca Hotz
 
Fatkulin hotsos 2014
Fatkulin hotsos 2014Fatkulin hotsos 2014
Fatkulin hotsos 2014Enkitec
 
The Cloud Cube
The Cloud CubeThe Cloud Cube
The Cloud CubeAdrius42
 

What's hot (20)

BTRisk Adli Bilişim Eğitimi Sunumu
BTRisk Adli Bilişim Eğitimi SunumuBTRisk Adli Bilişim Eğitimi Sunumu
BTRisk Adli Bilişim Eğitimi Sunumu
 
Oracle Data Protection - 2. část
Oracle Data Protection - 2. částOracle Data Protection - 2. část
Oracle Data Protection - 2. část
 
MySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software TestMySQL/MariaDB Proxy Software Test
MySQL/MariaDB Proxy Software Test
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
 
MariaDB 마이그레이션 - 네오클로바
MariaDB 마이그레이션 - 네오클로바MariaDB 마이그레이션 - 네오클로바
MariaDB 마이그레이션 - 네오클로바
 
Oracle Architecture
Oracle ArchitectureOracle Architecture
Oracle Architecture
 
memcached Binary Protocol in a Nutshell
memcached Binary Protocol in a Nutshellmemcached Binary Protocol in a Nutshell
memcached Binary Protocol in a Nutshell
 
Demystifying MySQL Replication Crash Safety
Demystifying MySQL Replication Crash SafetyDemystifying MySQL Replication Crash Safety
Demystifying MySQL Replication Crash Safety
 
Cluster Tutorial
Cluster TutorialCluster Tutorial
Cluster Tutorial
 
OLTP+OLAP=HTAP
 OLTP+OLAP=HTAP OLTP+OLAP=HTAP
OLTP+OLAP=HTAP
 
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
 
MV2ADB - Move to Oracle Autonomous Database in One-click
MV2ADB - Move to Oracle Autonomous Database in One-clickMV2ADB - Move to Oracle Autonomous Database in One-click
MV2ADB - Move to Oracle Autonomous Database in One-click
 
How Safe is Asynchronous Master-Master Setup?
 How Safe is Asynchronous Master-Master Setup? How Safe is Asynchronous Master-Master Setup?
How Safe is Asynchronous Master-Master Setup?
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용MySQL 상태 메시지 분석 및 활용
MySQL 상태 메시지 분석 및 활용
 
Dağıtık Sistemler / Programlama
Dağıtık Sistemler / ProgramlamaDağıtık Sistemler / Programlama
Dağıtık Sistemler / Programlama
 
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
The Top 5 Reasons to Deploy Your Applications on Oracle RACThe Top 5 Reasons to Deploy Your Applications on Oracle RAC
The Top 5 Reasons to Deploy Your Applications on Oracle RAC
 
Always on in sql server 2017
Always on in sql server 2017Always on in sql server 2017
Always on in sql server 2017
 
Fatkulin hotsos 2014
Fatkulin hotsos 2014Fatkulin hotsos 2014
Fatkulin hotsos 2014
 
The Cloud Cube
The Cloud CubeThe Cloud Cube
The Cloud Cube
 

Similar to Dağıtık Veritabanı Sistemleri

Oracle database architecture
Oracle database architectureOracle database architecture
Oracle database architectureHızlan ERPAK
 
İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19Cihan Özhan
 
Microsoft Azure Sql Server HADR
Microsoft Azure Sql Server HADRMicrosoft Azure Sql Server HADR
Microsoft Azure Sql Server HADRÖnder Değer
 
Ağ i̇şleti̇m si̇stemleri̇ne örnekler
Ağ i̇şleti̇m si̇stemleri̇ne örneklerAğ i̇şleti̇m si̇stemleri̇ne örnekler
Ağ i̇şleti̇m si̇stemleri̇ne örneklerAlonelaz
 
Kod günleri veritabnı
Kod günleri veritabnıKod günleri veritabnı
Kod günleri veritabnıMustafa Tepe
 
Sistem ve network
Sistem ve networkSistem ve network
Sistem ve networkAba Emekçi
 
6.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V26.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V2Ermando
 
Loglari nerede saklayalım?
Loglari nerede saklayalım?Loglari nerede saklayalım?
Loglari nerede saklayalım?Ertugrul Akbas
 
Lojistik Bilişim Sistemleri
Lojistik Bilişim SistemleriLojistik Bilişim Sistemleri
Lojistik Bilişim Sistemleriertekg
 
Cloud computing and technologies
Cloud computing and technologiesCloud computing and technologies
Cloud computing and technologiesBilal Dursun
 
Microsoft Exchange Server 2010 Genel
Microsoft Exchange Server 2010 GenelMicrosoft Exchange Server 2010 Genel
Microsoft Exchange Server 2010 GenelÇözümPARK
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices ArchitectureDilaver Demirel
 
Failover Clustering Sql Server
Failover Clustering Sql ServerFailover Clustering Sql Server
Failover Clustering Sql ServerHakan Yüksel
 
Windows Server 2012 Network ve File System Yenilikleri
Windows Server 2012 Network ve File System YenilikleriWindows Server 2012 Network ve File System Yenilikleri
Windows Server 2012 Network ve File System YenilikleriMustafa
 
Windows Server 2012 Network ve Dosya Sistemi Yenilikleri
Windows Server 2012 Network ve Dosya Sistemi YenilikleriWindows Server 2012 Network ve Dosya Sistemi Yenilikleri
Windows Server 2012 Network ve Dosya Sistemi YenilikleriMSHOWTO Bilisim Toplulugu
 
OSI Standartları.pptx
OSI Standartları.pptxOSI Standartları.pptx
OSI Standartları.pptxCanBerkARMAN
 
Azure Cloud Engineer - Bölüm 2
Azure Cloud Engineer - Bölüm 2Azure Cloud Engineer - Bölüm 2
Azure Cloud Engineer - Bölüm 2Önder Değer
 

Similar to Dağıtık Veritabanı Sistemleri (20)

Oracle database architecture
Oracle database architectureOracle database architecture
Oracle database architecture
 
İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19
 
Microsoft Azure Sql Server HADR
Microsoft Azure Sql Server HADRMicrosoft Azure Sql Server HADR
Microsoft Azure Sql Server HADR
 
Ağ i̇şleti̇m si̇stemleri̇ne örnekler
Ağ i̇şleti̇m si̇stemleri̇ne örneklerAğ i̇şleti̇m si̇stemleri̇ne örnekler
Ağ i̇şleti̇m si̇stemleri̇ne örnekler
 
Kod günleri veritabnı
Kod günleri veritabnıKod günleri veritabnı
Kod günleri veritabnı
 
Kod günleri veritabnı
Kod günleri veritabnıKod günleri veritabnı
Kod günleri veritabnı
 
Sistem ve network
Sistem ve networkSistem ve network
Sistem ve network
 
linux-enterprise-cluster
linux-enterprise-clusterlinux-enterprise-cluster
linux-enterprise-cluster
 
6.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V26.Oracle Day2009 Engin Senel V2
6.Oracle Day2009 Engin Senel V2
 
Loglari nerede saklayalım?
Loglari nerede saklayalım?Loglari nerede saklayalım?
Loglari nerede saklayalım?
 
Lojistik Bilişim Sistemleri
Lojistik Bilişim SistemleriLojistik Bilişim Sistemleri
Lojistik Bilişim Sistemleri
 
Cloud computing and technologies
Cloud computing and technologiesCloud computing and technologies
Cloud computing and technologies
 
12factor apps
12factor apps12factor apps
12factor apps
 
Microsoft Exchange Server 2010 Genel
Microsoft Exchange Server 2010 GenelMicrosoft Exchange Server 2010 Genel
Microsoft Exchange Server 2010 Genel
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
Failover Clustering Sql Server
Failover Clustering Sql ServerFailover Clustering Sql Server
Failover Clustering Sql Server
 
Windows Server 2012 Network ve File System Yenilikleri
Windows Server 2012 Network ve File System YenilikleriWindows Server 2012 Network ve File System Yenilikleri
Windows Server 2012 Network ve File System Yenilikleri
 
Windows Server 2012 Network ve Dosya Sistemi Yenilikleri
Windows Server 2012 Network ve Dosya Sistemi YenilikleriWindows Server 2012 Network ve Dosya Sistemi Yenilikleri
Windows Server 2012 Network ve Dosya Sistemi Yenilikleri
 
OSI Standartları.pptx
OSI Standartları.pptxOSI Standartları.pptx
OSI Standartları.pptx
 
Azure Cloud Engineer - Bölüm 2
Azure Cloud Engineer - Bölüm 2Azure Cloud Engineer - Bölüm 2
Azure Cloud Engineer - Bölüm 2
 

Dağıtık Veritabanı Sistemleri

  • 2. 01. Nedir Dağıtık Veritabanı? Dağıtık veri tabanı yönetim sistemi, dağıtık bir veri tabanının yönetilmesini ve verilerin kullanıcılara sunulmasını sağlayan bir yazılım sistemidir. Dağıtık veri tabanı ise bir bilgisayar ağı ile bağlı ancak birbirinden ayrı veri tabanıdır. Bu sayede dağıtık bir veri tabanı yönetim sistemi aynı anda birden fazla veri tabanı üzerinde işlem yapabilir.
  • 3. 01. Nedir Dağıtık Veritabanı? Dağıtık sistemler, farklı bilgisayarlardaki donanım ve yazılım bileşenleri arasında verilerin daha güvenli, daha şeffaf ve daha performanslı olarak tutulmasını sağlayan sistemdir. Dağıtık sistemlerin var oluş amacı, kaynakları paylaşmaya duyulan gerekliliktir. Bu kaynaklar, donanımsal olabileceği gibi veritabanları gibi yazılımsal varlıklar da olabilir. Büyük ağlarda, dağıtık sistemler, tek bir bilgisayar gibi davranır ve en iyi performansı sağlar.
  • 4. 01. Nedir Dağıtık Veritabanı? Dağıtık sistemler, farklı bilgisayarlardaki donanım ve yazılım bileşenleri arasında verilerin daha güvenli, daha şeffaf ve daha performanslı olarak tutulmasını sağlayan sistemdir. Dağıtık sistemlerin var oluş amacı, kaynakları paylaşmaya duyulan gerekliliktir. Bu kaynaklar, donanımsal olabileceği gibi veritabanları gibi yazılımsal varlıklar da olabilir. Büyük ağlarda, dağıtık sistemler, tek bir bilgisayar gibi davranır ve en iyi performansı sağlar.
  • 5. 01. Nedir Dağıtık Veritabanı? Genel manada, dağıtık veritabanı sistemlerinin bize avantajları şu şekildedir. 1. İzole değildir, genişlemeye hazır yapıların temelini oluşturmaktadır. 2. Cloud’un temelini oluşturmaktadır. Dağıtık mimariler, bulut sistemleri gibi davranarak, farklı yapıları tek bir yapı olarak göstererek, bir çok avantaj kazanımını da beraberinde getirmektedir. 3. Senkron ve replikedir. Sürekli olarak yedekleri alınarak, CDN gibi teknolojilerle sürekli dağıtılarak, veriler ve raporların çok hızlı süreler içinde farklı sistemler üzerinden toparlanarak getirilmesini sağlamaktadır. 4. Yedekli çalışmaktadır. Bir veri, birden fazla sistem üzerinde tutulduğundan dolayı, bir DB sisteminde yaşanacak olan problem ya da veri kaybı, diğer sistemlerle tolere edilebilmektedir. RAID sistemleri gibi düşünebilirsin salocum.
  • 6. 01. Nedir Dağıtık Veritabanı? Neden tek veritabanı değil? Tek bir sunucu üzerinde çalışan veritabanı kullanılmak yerine veritabanını birçok sunucuya dağıtarak kullanmanın (sharding) faydaları: • Özellikle sunucuların farklı ortamlarda (bina, şehir) saklandığı durumlarda eğer birisinde güç kesintisi veya donanım problemi meydana gelirse sistemin diğeri tarafından devam ettirilmesi sağlanır. • Yük paylaşımı yapılarak, daha çok kullanıcıya daha kısa sürelerde yanıt verilebilmesi sağlanır. • Daha fazla depolama kapasitesi elde edilir. • Bir sunucuda disk arızası olması durumunda verilerin kaybolmaması sağlanır (aynı sunucuda replica kullanılması ile de bu sağlanabilir).
  • 7. 02. Dağıtık Veritabanı Avantajları 02.01. Şeffaflık/Geçirgenlik (Transparency) Kaynaklar ve işlemlerin ağ üzerinde dağıtık olduğundan yapılan işlemler ve «dağıtım» işlemleri görülebilir, yönetilebilir ve kontrol edilebilmektedir. Bu da, sistem üzerinde yaşanabilecek bir sorunun local olarak gizli kalması yerine, birden fazla yerde görülebilmesi ve önlem alınabilmesi gibi konuları beraberinde getirmektedir.
  • 8. 02. Dağıtık Veritabanı Avantajları 02.02. Parçalama (Fragmentation) Verinin farklı saklama düğümlerine gönderilmek üzere nasıl parçalanacağı belirlenirken 3 farklı yöntemden biri tercih edilebilir: Dikey parçalama: Tablonun sütunlarının farklı düğümlerde olacak şekilde parçalanması Yatay parçalama: Belirli bir kriter ile kayıtların parçalanması Hibrit parçalama: Belirli sütunlardaki verilerden seçilen kritere göre kayıtların parçalanması
  • 9. 02. Dağıtık Veritabanı Avantajları 02.03. Yineleme (Replikasyon) • Her parça sistemdeki tüm sunucularda saklanabilir veya seçilmiş parçalar, seçilmiş sunucularda saklanabilir. • İstemcinin bir sunucu üzerinde yaptığı değişikliğin diğer sunuculara da yansıtılması gereklidir. • Replication işlemi dağıtık veritabanında değişiklikler arayan özel bir yazılım kullanmayı gerektirir. • Değişiklikler tespit edildikten sonra, Replication işlemi tüm sunucuların aynı olmasını sağlar. • Replication dağıtık veritabanlarının boyutuna ve sayısına bağlı olarak karmaşık ve zaman alıcı olabilir (bilgisayar kaynaklarını çok kullanabilir).
  • 10. 02. Dağıtık Veritabanı Avantajları 02.04. Kısmi Yineleme (Partial Replikasyon) • Her parça sistemdeki tüm sunucularda saklanabilir veya seçilmiş parçalar, seçilmiş sunucularda saklanabilir. • İstemcinin bir sunucu üzerinde yaptığı değişikliğin diğer sunuculara da yansıtılması gereklidir. • Replication işlemi dağıtık veritabanında değişiklikler arayan özel bir yazılım kullanmayı gerektirir. • Değişiklikler tespit edildikten sonra, Replication işlemi tüm sunucuların aynı olmasını sağlar. • Replication dağıtık veritabanlarının boyutuna ve sayısına bağlı olarak karmaşık ve zaman alıcı olabilir (bilgisayar kaynaklarını çok kullanabilir).
  • 11. 02. Dağıtık Veritabanı Avantajları 02.05. Kopyalama (Duplication) • Duplication işleminde master olarak tanımlanan bir veritabanı, belirli zaman aralıkları ile replica olarak bilinen diğer veritabanlarına kopyalanır. • Bu işlemde, istemciler yalnızca master veritabanı üzerinde değişiklik yapabilir. Bu nedenle DML işlemlerinde yük dengeleme yoktur. • Sorgularda replica’lar kullanılabildiği için yük dengeleme vardır. • Master'dan replica'lara doğru tek yönlü bir güncelleme yapıldığı için işlem basit ve hızlıdır.
  • 12. 02. Dağıtık Veritabanı Avantajları 02.06. Bölünmezlik (Atomicity) • Hareket (transaction) işlemede Atomicity* özelliğini sağlamak için Commit ve Rollback işlemlerinin gerekliliğinden bahsetmiştik. • Dağıtık VT sisteminde iki aşamalı Commit mekanizmasına ihtiyaç vardır: 1. Transaction T'yi başlatan sunucu koordinatör olur ve T'yi tamamlamak (commit) istediğinde diğer sunuculara "prepare T" mesajı gönderir. 2. Mesajı alan sunucular "ready T" veya "don't commit T" gönderir (bu işlem biraz zaman alabileceği için koordinatör yanıtı alana kadar beklemelidir). 3. Eğer koordinatör herkesten "ready" yanıtı aldıysa bu defa diğer sunuculara "commit T" mesajı gönderir. Bir tanesinden bile "don't commit" aldıysa, "abort T" mesajı gönderir. 4. Tüm sunucular aldıkları mesaja göre, kendi yerel hareketlerini "commit" veya "rollback" ederler.
  • 13. 02. Dağıtık Veritabanı Avantajları 02.07. İzolasyon (Isolation) • Okuma (Sorgular) ve Yazma(DML) işlemlerinde Isolation özelliğini sağlamak için Kilit (Lock) mekanizmalarına ihtiyaç vardır. • Dağıtık Kilitleme 3 farklı yaklaşım ile yapılabilir: 1. Merkezi: Bir adanmış sunucu tüm kilit işlemlerinden sorumlu olur (o sunucuda oluşacak olan hata sistemi çalışmaz hale getirecek ve performans düşük olacak) 2. Temel-kopya: VT'deki her verinin temel kopyası farklı düğümlerde kayıtlıdır ve o veriyi kilitlemek isteyen bir hareket, o verinin sahibi olan düğümden kilit için izin ister 3. Tam-dağıtık: Okuma için elemanın herhangi bir kopyasını kilitleme, yazmak için ise tüm kopyalarını kilitleme mantığı
  • 14. 02. Dağıtık Veritabanı Avantajları 02.08. Kümeleme (Cluster) • Küme (cluster) yapısı kullanıldığından erişilen verinin hangi düğümde saklandığı erişen istemci tarafından bilinmez. • Küme: Dışarıdan tek bir sunucuymuş gibi algılanan ama aslında çok çok sunuculu veya çok lokasyonlu yapıdır. Kullanıcı sorgu çektiğinde, 1 saniye içinde önüne sonuç gelir. Bunun tek bir veritabanından geldiğini zannetse de, arka planda onlarca veritabanından sorgu dönebilir.
  • 15. 02. Dağıtık Veritabanı Avantajları 02.09. Büyüme ve Genişleme Cloud benzeri bir mimariye sahip olduğu için, kullanıcılar tarafından ilk etapta ciddi bir yatırım gücü ayırmak yerine, ilk etapta az bir kaynakla başlanan sistem, duruma göre kaynaklar artırılarak genişletilebilmektedir. Gerek performans anlamında, gerekse mimarinin katmanlanması anlamında giderek gelişmeye hazır bir yapıdır. 1 Milyon kayıtlık ve 2 sunucu ile başlanan bir sistem, ilerde milyarlık kayıtlar, farklı lokasyonlar ve onlarca sunucuya dönüşebilir. İhtiyaç duyulması halinde, sistem yükü azaldıkça kaynaklar azaltılarak yapı tekrar küçültülebilir. Performans anlamında da, veritabanı dağıtıklığı anlamında da, lokasyon anlamında da genişletilebilir ve daraltılabilir bir yapıya sahiptir.
  • 16. 03. Dağıtık Veritabanı Güvenliği Dağıtık mimarinin getirdiği avantajlardan bir tanesi de güvenlik anlamında verilerimizin daha güvenli tutulmasının sağlanabilmesidir. 1. Gizlilik Verinin yetkisi olmayan kişiler tarafından erişilebilmesidir. Dağıtık veritabanı sistemleri, şeffaf ve izlebilir olması dolayısıyla gizlilik konusunda avantaj sağlamaktadır.
  • 17. 03. Dağıtık Veritabanı Güvenliği 2. Erişilebilirlik Verinin yalnızca yetkili kişiler tarafından erişilebilmesidir. Dağıtık yapıda ve merkezi bir kontrol sistemi olması dolayısıyla, erişilebilirlik anlamında kullanıcılar için fayda sağlamaktadır. Kullanıcılar, istedikleri yerden ve istedikleri kadar (yetki dahilinde) veriye ulaşabilmektedir.
  • 18. 03. Dağıtık Veritabanı Güvenliği 3. Bütünlük Verinin, tam ve doğru olmasıdır. Verilerin, erişim yetkisi olan kötü niyetli kişiler veya erişim yetkisi olmamasına rağmen erişmiş kişiler tarafından değiştirilmesi, verilerin birden çok noktada saklanması avantajıyla engellenebilmektedir. Bitcoin’in temelinde yatan «Blockchain» teknolojisi de bütünlük ve dağıtık veri olarak güzel bir örnektir. Yapılan transaction’ların toplam block dizinlerinin %51’i tarafından onaylanmadığı sürece doğru kabul edilmemesi örnek olarak verilebilmektedir.
  • 19. 03. Dağıtık Veritabanı Güvenliği DDoS Ataklarına Karşı Dayanıklı Denial of Service olarak bilinen «hizmet aksatma saldırıları», bilişim sistemlerine beklenenin çok üzerinde istek gönderilerek sunucuların cevap verememesini sağlamak üzere yapılmaktadır. Bankacılık, online ticaret gibi sistemlerin, birkaç saatlik devre dışı kalması gibi durumlarda, çok büyük maliyetlerle karşı karşıya kalınmaktadır. Dağıtık sistemlerde, bir lokasyondaki bir sunucuya yapılabilecek atak, diğer sistemler tarafından tolere edilerek, sorunsuz bir şekilde sistemin yanıt vermesini sağlatılmaktadır.
  • 20. 04. Dağıtık Veritabanları Dağıtık veritabanı sistemi terimi birbirine bağlanabilen ve birbirlerindeki nesneleri kullanabilen farklı veritabanı sistemlerinin bütünü olarak kullanılır. Sistemdeki tüm veritabanının aynı tipte olduğu durum homojen sistem, farklı VTYS'ler bulunması durumu ise heterojen sistem olarak adlandırılır. Heterojen sistemlerde farklı VTYS'ler arası haberleşme "gateway" adı verilen arayüzler ile sağlanır. *VTYS: Veritabanı Yönetim Sistemleri
  • 21. 04. Dağıtık Veritabanları Veritabanı Bağı (Databases Link) İki fiziksel veritabanı sunucusu arasındaki tek yönlü iletişim yoludur. • A veritabanına bağlı olan bir kullanıcı bu veritabanının veri sözlüğüne eklenen bir bağ (dblink) ile B veritabanındaki bilgilere ulaşabilir. Ama aynı bağlantı kullanılarak B veritabanından A veritabanına ulaşılamaz (B veritabanının sözlüğüne de A'ya ulaşabilmek için yeni bir bağ eklenmelidir). • Bulunulan veritabanındaki tüm kullanıcıların vt1 veritabanına bağlanabilmesi için: CREATE PUBLIC DATABASE LINK vt1 USING 'vt1'; • Bulunulan veritabanındaki tüm kullanıcıların vt1'e, o veritabanındaki bir kullanıcının üzerinden bağlanabilmesi için: CREATE DATABASE LINK vt1 CONNECT TO test IDENTIFIED BY abc123 USING 'vt1'; Diğer veritabanındaki personel tablosunu sorgulamak için bağ @ kullanılarak belirtilir: SELECT * FROM personel@vt1;
  • 22. 04. Dağıtık Veritabanları Veriyi dağıtma nasıl yapılır ? • Eğer küme yapısı kullanıyorsak farklı düğümdeki tablo için DBLink ismi vermeye gerek yoktur (kümeye bağlanan istemciler sistemi tek VT olarak görür). • İster küme, ister çoklu VT yapısı kullanıyor olalım, tablonun tamamını başka bir düğüme taşıyarak veriyi dağıtmak uygun bir çözüm olmayabilir. • Çok sorgu gönderilen bir tablonun kopyalarını farklı düğümlerde saklamak ve yük dengeleme* kullanmak hız kazandırabilir. • Fakat veride değişiklik olduğu zaman tüm diğer kopyalarda ilgili güncellemenin yapılması da zaman alıcı olacaktır. • Tabloyu bir bütün olarak ayırmak yerine, satır ve sütun bazında parçalamak, sorguların ve DML işlemlerinin ilgili parçalar üzerinde yapılmasını sağlamak çoğu zaman daha etkili bir çözüm olacaktır.
  • 23. 04. Dağıtık Veritabanları Sorguda veri birleştirme | Distributed Join • Dağıtık veriyi sorgularda birleştirmek için farklı yaklaşımlar kullanılabilir. • R ve S tablolarının Y alanı üzerinden ilişkili olduğunu düşünelim; R'yi S'nin tarafına veya S'yi Y'nin tarafına göndermek ve JOIN işlemi uygulamak gönderilecek olan verinin hacmi düşünüldüğünde pahalı bir işlemdir. • Bunun yerine Semi Join veya Bloom Join işlemleri tercih edilebilir.
  • 24. 04. Dağıtık Veritabanları Semi Join • R'ye sadece S.Y sütununu gönderip, join işlemini bu sütun üzerinde yapma yaklaşımıdır: • R'nin sadece join ile eşleşen tekrarsız kayıtlarını S'ye göndermek ve burada son join işlemini gerçekleştirmek suretiyle daha az ağ trafiği ve daha hızlı join işlemi gerçekleştirilir.
  • 25. 04. Dağıtık Veritabanları Bloom Join • R'de K boyutunda bir bit vektör oluşturulur. (ilk başta tüm bitleri 0 olacak) • R'deki her kayıt için Y değerine bağlı olan ve 1 ile K arasında bir sayı döndüren bir hash fonksiyonu yardımıyla bu bit vektörünün eşleşen bitleri 1 yapılır. • Oluşan bit vektörü S'ye gönderilir. • S'de de aynı hash fonksiyonu kullanılarak oluşturulan bit vektörü ile R'den alınan bit vektörü karşılaştırılır. • Uyuşma olan kayıtlar join edilmesi muhtemel olan kayıtlar olarak işaretlenir ve R'ye gönderilerek join edilir.
  • 26. 05. Üç Seviyeli (3-Tier) İstemci-Sunucu Mimarisi Bir three-tier uygulama, her biri bir ağın farklı bir yerine dağılmış, 3 ana parçadan oluşur. Bu parçalar: • İş istasyonu veya sunum arayüzü • İş mantığı • Veritabanı ve veritabanı yönetimi ile ilgili program
  • 27. 05. Üç Seviyeli (3-Tier) İstemci-Sunucu Mimarisi Bu mantıksal katmanlar Sunum, Uygulama ve Veri hizmetlerine ayrılmıştır. Sunum Hizmetleri Uygulamanın kullanıcıya veri sağlayan kısmına tekabül eder. Ek olarak, kullanıcının veri ile etkileşimini sağlayan yapıyı da sağlar. Kısaca, sunum hizmeti kullanıcı ara yüzünü tanımlar ve onunla etkileşir. Verinin sunumu genelde bazı geçerlilik kurallarına sahip olmamalı. İş Hizmetleri/Nesneleri Uygulama hizmetlerinin bir kategorisidir. Bu hizmet, bir organizasyonlar işi işlevlerini ve gereklerini içerir. Bu kurallar, bir kuruluştaki günlük işlerin ortaya çıkma adımlarından türetilir. Kurallar gelen bilginin geçerli bir tip ve formatta olduğundan emin olmak için kullanılan geçerlilik kuralları veya bir işlemi tamamlamak için takip edilen uygun iş adımlarından emin olmak için kullanılan işlev kuralları olabilir. Veri Hizmetleri Konumundan bağımsız olarak veriye erişimi içerir.