Oracle Exadata’ yı Hızlı Yapan Nedir? Bölüm 1

Değerli Dostlar,

Bildiğiniz üzere Oracle Exadata makinasının X8M sürümü duyuruldu. Bir çok çevrede bu ürünün neden bu kadar pahalı yada verdiğimiz paranın hakkını veriyor mu? sorularını sık sık duyuyoruz. 2020 yılına girişimizle beraber , Ocak ayının 3. haftasında Oracle duayenlerinden Cem zorba özel bir etkinlikte ürün hakkında nefis bilgiler sundu. Bende yaptığım araştırmaları ve tecrübeleri dilim döndüğünce sizlerle paylaşmak istedim. Bu makalede Oracle Exadata’yı bu kadar iyi ve rakipsiz yapan şey nedir onu irdeleyeceğiz.

Oracle Exadata’nın günümüzde en çok kıyaslamayı IBM Power serisi ile yaşadığını görüyoruz. Bununla beraber Exadata Dell / EMC yada Purge Storage gibi All-Flash diskleri bulunan ürünlerlede karşılaştırıldığını görebilirsiniz.Bir çok karşılaştırma testinde Exadata makinasının ( özellikle makina olarak belirtiyorum ) bu ürünlere açık ara fark yarattığını fark edeceksiniz. Peki bu nasıl oluyor ?

Bütünleşik Donanım ve Yazılım
Öncelikle belirtmeliyim ki ilk fark aslında mimarinin temelinde ortaya çıkıyor. Exadata gerek yazılımı gerekse donanımı ile bütünleşik bir ürün olarak ortaya çıkarken rakipleri bir bileşen olarak kendini göstermektedir. Exadata makinası ilk duyurulduğu dönemlerde HP ürünlerini kabin içerisinde kullanırken, Sun Microsystem satın alması ile artık kendi stratejisi ile ürettiği ürünleri kullanmaktadır ve bileşenleri aşağıdaki gibidir.

  • Clustered Servers
  • Cluster Interconnect Network
  • Storage Network
  • Active Storage
  • Software

Yapının bütünleşik olması bize elma ile elmayı, armut ile armutu karşılaştırmamız gerektiğini gösterir. Örneğin Exadata makinasını bir IBM sunucu ile karşılaştırırsanız Exadata Cell yani storage’leri yok sayarsınız. Yine Exadata makinasını Full-Flash storage ürünleri ile karşılaştırırsanız bu seferde üzerinde bulunan sunucuları yok sayarsanız. Exadata makinası bir bütündür ve bütünü oluşturan parçalar sinerji oluşturarak bize fazlasını sağlar. Bu sebeple bir karşılaştırma yaparken aynı çizgide bütünleşik bir mimari ile karşılaştırılması gerekir.

Oracle Database ile tam entegrasyon
Oracle Database tartışmasız olarak dünyanın en iyi veri tabanı olduğu ortadadır ve neredeyse bütün platformlarda performanslı olarak çalışabilir. Özellikle açık kaynak sistemleri desteklemesi ile kazandığı işletim sistemi tecrübesi ve uyguladığı innavasyon günümüz sistemlerinin ilerisinde bir noktaya taşıyınca bütünleşik bir mimarinin gerekliliği ortaya çıktı. Exadata’nın ortaya çıkışı Oracle Database ve Oracle Linux ile birlikte tamamen bütünleşik bir yapı oluşturdu. Bu sayede birbiri ile konuşan tam stabil bir ürün ortaya çıktı.

Yüksek Kullanılabilirlik, Yedeklilik ve Ölçeklendirme
Exadata’nın yüksek kullanılabilirlik ve ölçeklenebilir yapısı ayrıca tamamen yedekli olarak çalışmaktadır. Sistem mimarisindeki bu gerçek, Exadata makinasındaki tasarımın temelini oluşturur. Örneğin Exadata üzerinde en az üç adet Exadata Cell bulunur. Ürünün üç adet olması bize öncelikli olarak yedekliliği ve kesinti yapmadan yama geçme yeteneği katar. Oracle Exadata üzerinde kesintisiz storage patch geçebilir yada üzerindeki mevcut storage’leri dönüşümlü olarak bakıma alabilirsiniz. Aynı zamanda üzerinde buluan 2 adet Node sayesinde Cluster yapısı gelmektedir.

Büyük Bellek Özellikleri ( DRAM )
Exadata büyük ve hız gerektiren veritabanı sunucuları arasında farklı olarak DRAM özelliğine sahiptir. X7-2 modeli ile beraber Nod başına 1.5TB DRAM ile birlikte gelir. Bununla her Nod yatay olarak 12TB kapasiteye kadar genişleyebilir. DRAM sayesinde veritabanı işlemleri fiziksel diskten önce bellek üzerinde işenir ve bu performans sağlar.

Exadata’yı özel kılan nedir ?
Yukarıda Oracle Exadata makinasındaki en belirgin özellikleri en basit hali ile aktarmaya çalıştım. Bununla birlikte alt özelliklerede değinmek gerekir.

  • SQL Offload
  • Active Storage – Cell Offload
  • Massively Parallel Processing (MPP) Design
  • Bloom Filters
  • Storage Indexes
  • High Bandwidth, Low Latency Storage Network
  • High Bandwidth, Low Latency Cluster Interconnect
  • Fast Node Death Detection
  • Smart Flash Cache
  • Write-Back Flash Cache
  • Large Write Caching & Temp Performance
  • Smart Flash Logging
  • Smart Fusion Block Transfer
  • NVMe Flash Hardware
  • Columnar Flash Cache
  • In-Memory Fault Tolerance
  • Adaptive SQL Optimization
  • Exadata Aware Optimizer Statistics
  • DRAM Cache in Storage

SQL Offload
Exadata ilk çıkışı ile beraber yaptığı yenilik SQL Offload olarak görücüye çıktı. Yukarıda bahsettiğimiz gibi Exatada’nın bütünleşik bir mimari olması ve Cell adını verdiğini storage yapısı rutin sorgulardaki işleyişi ters düz etti. Normal şartlarda veri tabanında istenilen veriler sunucu üzerinde işlenirken Exadata üzerinden çağırılan veriler cell üzerinden döner ve bu performans üzerinde ciddi kazanımlar sağlar.

Farklı bir değişle çağırdığınız sorgular Node üzerindeki değil, storage üzerindeki işlemcide işlenir.

High Bandwidth, Low Latency Storage Network
Exadata üzerinde barındırdığı ürünler arasında Infiniband teknolojisi ile haberleşir.Mevcut ağ yapısı Exadata makinasının konumlandığı ağ üzerinden izole şekilde çalıştığı için public olarak tanımlanmaktadır. Bu sayede güvenli bir iletişim sağlanır. Oracle tavsiyelerinde bu ağın genişletilmesini önermez.

Exadata içerisindeki Infiniband ağı saniyede 40 Gigabit olarak çalışır.DWH ortamlarında ve Büyük veri çalışmalarında bant genişliği önemlidir. Infiniband sayesinde Exadata makinası yüke binmeden veri trafiğinin üstesinden gelebilir.

Bununla birlikte Oracle veritabanı için REDO LOG kavramı hayati bir önem taşımaktadır. Redo Log yazma işlemleri I/O Wait ve commit işlemlerine duyarlı olduğu için storage üzerindeki işlemlerin maksimum seviyede olması istenir. Infiniband sayesinde bu süreç problemsiz giderilir.

DRAM Cache in Storage

Oracle Exadata veri erişiminde öncelikle DRAM teknolojisini kullanır. Mevcut veriler bu sayede ilk olarak Disk yerine DRAM üzerindeki önbellekten okunmaktadır. Exadata Smart Flash Cache hızına ek olarak 2.5 kat daha fazla verim elde edilir.

Yukarıdaki görsel örnekte görüldüğü üzere Exadata bellek yapısında minumum I/O ile yüksek performans sağlamaktadır. DRAM cache özelliğini daha geniş incelemek için aşağıdaki video takip edilebilir.

In-Memory Fault Tolerance
Oracle In-Memory özelliği duyurulduğu 12C sürümü ile birlikte bütün platformlarda desteklenmektedir. Bu özelliği Oracle Exadata makinasında çalıştırmanız bazı avantajları bulunur. In-Memory özelliğini Exadata üzerinde çalıştırmanız en önemli avantajı yine Exadata’ya özgü bellek içi hata töleransıdır.

In-Memory Fault Tolerance verilerin Exadata üzerinde koşan Oracle veri tabanı node’ları arasında etkili bir şekilde mirror edilebileceği anlamına gelir. Bu özellik geliştiricilere DRAM ön belleğini daha agrasif kullanma avantajlarını sağlatabilir.

Oracle Exadata makinasının fiziksel ve yapısal özelliklerini tanıttığımız bu yazı dizimizin sonuna geldik. Bölüm 2 de görüşmek üzere.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir