160 likes | 309 Views
RAC ortamında yazılım geliştirme TROUG RAC SIG etkinliği Spring Giz Oracle Eğitim Merkezi, Maslak 09/10/2010. H.Tonguç Yılmaz - tonguc . yilmaz @ gmail .com http://friendfeed.com/TongucY. http://tonguc.wordpress.com/about/.
E N D
RAC ortamında yazılım geliştirme TROUG RAC SIG etkinliği Spring Giz Oracle Eğitim Merkezi, Maslak 09/10/2010 H.Tonguç Yılmaz - tonguc.yilmaz@gmail.com http://friendfeed.com/TongucY
http://tonguc.wordpress.com/about/ • H.Tonguç Yılmaz: Oracle veritabanı uzmanı - iyi bir Fenerbahçe taraftarı - Metal müzik sever - Bol bol DVD izler vs. • Fethiye Lisesi, İTÜ Bilgisayar Müh., Bilgi MBA • C Developer, Informix DBA-Hp Unix Admin, Oracle DBA, Oracle ETL Developer, DW Development Team Leader • 1996 Tekstilbank, 2000 Turkcell, 2008 Turkcell Teknoloji • 10+ sene Oracle veritabanı tecrübesi, Oracle 8i,9i,10g OCP & 2007 Oracle ACE, 2005 Oracle blogger • 2002 Turkcell Akademi Oracle veritabanı iç eğitmeni & 2002 TTech Paf koçu • 1999 OracleTurk moderatör, 2010 TROUG kurucu üye
Real Application Clusters – Tehlikeli Algılar • “RAC uygulamalara saydamdır; single instance bir Oracle veritabanı uygulaması hiç değişiklik yapmasan da RAC ile daha AZ erişebilir veya AZ performanslı çalışmaz.” hmm • “CV’de çok karizmatik duruyor bu RAC, neler gördük biz haydi hemen geçelim bundan mı korkacağız.” hmm • Bence; özellikle 11g ile RAC olgun ve güçlü bir silah ama yanlış ellerde hala ciddi zarar verebilir • Bence; farkındalık & uzmanlık & ilişkiler zarar görmemek için önemli
Real Application Clusters - Tanımlar • Cluster birden fazla makinenin tek bir hizmeti istemcilerine saydam olarak sunabilmeleri için bir araya getirilmeleriyle oluşturulan yapıdır. • Real Application Clusters Oracle veritabanı servisini birden fazla makinenin oluşturduğu bir cluster üzerinden sunabilmemizi sağlayan teknolojidir. • RAC, sunucular arası paylaşımlı bellek mimarisinin en gelişmiş örneklerinden biridir. Tüm sunucuların belleği tek bir bellekmiş gibi davranır. Verinin paylaşımlı bellekte bir anda sadece bir kopyası bulunur; mükerrer kopyalar bulunmaz. • Veritabanına ait dosyalar üye sunucuların tamamının I/O yapabildiği ortak bir diskte bulunurlar. • Üye sunucuların tamamı private interconnect adı verilen bir ağa dâhildirler. Sunucular veri bloklarını, global kilitleri ve SCN değerlerini birbirlerine gönderirken bu ağı kullanırlar.
Real Application Clusters – Dikkat 1/2 • Yüksek erişilebilirlik: Failover durumunda uygulama ne yapacak • Ölçeklenebilirlik: Tek instance performans sorunu ile RAC geçişi tehlikeli, büyüteç etkisi • OLTP için FTS tehlikesi • Indexing, partitioning ve clustering tasarım kararları • Sequence cache miktarları • OLTP için hard-parse tehlikesi • OLTP için DDL etkisi • DBA-Developer etkileşimi • ASSM(otomatik freelist yönetimi), PQ ayarları • UTL_FILE & External Table kullanımı • Uygulama bölümleme için Servis kullanımı(Scheduler,Tracing,Monitoring,Resource Manager kolaylıkları)
Real Application Clusters – Dikkat 2/2 • DBA-Developer-Quality Assurance etkileşimi • OLTP için canlı ortam yükü testleri, 11g ile RAT opsiyonu lisansı • RAC‘ın kendi donanım ve yazılım lisans maliyetlerinin hesaplanması • Grid Control, AWR, ADDM siz RAC ortamiı (özellikle 11g ile) düşünülemez • Değişiklikleri denemek için canlı ortamı temsil edebilecek bir test cluster ortam ihtiyacı • Sonuç: RAC farkında developer-tester-dba-unix admin ihtiyacı
Real Application Clusters ile Yüksek ErişilebilirlikTemel Topoloji • Disk • I/O kartı – HBA • Ağ kartı – NIC • Ağ Switch • SAN Switch
Oracle Veritabanı için Yüksek Erişilebilirlik Plansız Kesintilere Çözümler • Sunucu çökmelerine karşı; • Real Application Clusters (RAC) • Disk ve saklama ünitesi çökmelerine karşı; • Automatic Storage Management (ASM) • İnsani hatalardan kaynaklanan veri kayıplarına karşı; • LogMiner • Flashback Technologies • Streams • Disk üzerindeki veri bozulmalarına ve/veya kayıplarına karşı; • Recovery Manager (RMAN) • Oracle Secure Backup • Doğal felaketler sonucu yaşanan makine parkı kayıplarına karşı; • Data Guard
Oracle Veritabanı için Yüksek Erişilebilirlik Planlı Kesintilere Çözümler • Veritabanı bakımı için; • Online Schema and Data Reorganization • Partitioning • Boyutlandırma değişiklikleri için; • Real Application Clusters (RAC) - Online Reconfiguration • Yama yüklemeleri için; • Real Application Clusters (RAC) – Sıralı Yama Yüklemeleri • Sürüm yükseltimleri için; • Logical Data Guard (SQL Apply) – Sıralı Sürüm Yükseltimleri
Real Application Clusters ile Yüksek ErişilebilirlikBağlantı Kurtarma Yöntemleri • Transparent Application Failover - TAF • Oracle Client, uygulamanızın bağlı olduğu üye sunucu çöktüğünde, bağlantıyı saydam bir şekilde ayakta kalan üye sunuculardan birine yönlendirir. • Uygulamanızın TAF yapılandırmasını desteklemesi için ek kodlama yapmanız gerekir. • Fast Application Notification – FAN • Oracle Server, uygulamanızın bağlı servislerin sunan sunucuların durumlarında bir değişiklik olduğunda uygulamanıza bir bilgilendirme mesajı gönderir. • Uygulamanızı geliştirdiğiniz ortama bağlı olarak ek kodlama yapmanız gerekmeyebilir.
RAC alternatifleri(mi) • Active - Passive cluster • Oracle Data Guard • Streams/Advanced Replication
Tamamlayıcı Okuma, Kapanış May 18, 2009 “RAC Aware Software Development” Discussion: http://tonguc.wordpress.com/2009/05/18/rac-aware-software-development-discussion/ This is very true but I wish companies first develop RDBMS vendor Aware software before RAC. I have suffered from RAC unaware software but I suffered more Oracle unaware develop once run on all RDBMS type softwares. Comment by coskan — May 18, 2009 Hmmm :)
Oku, dene, sorgula, geliştir, *paylaş* .. Kaynakça – • Oracle University - Oracle 11g: RAC and Grid Infrastructure Administration Accelerated Konu 14 RAC Database Monitoring and Tuning Konu 15 Services Ek D: High Availability of Connections • Introduction to Oracle Real Application Clusters, Ogün Heper Istanbul, 30.07.2008 • http://www.juliandyke.com/Presentations/ • Oracle RAC Tuning Tips by Joel Goodman • Understanding RAC Internals by Barb Lundhild
Oracle Türkiye ve Yasin Saygılı’ya destekleri için çok teşekkürler ? ? ? ? ? Sorularınız ve/veya yorumlarınız ? ? ? ? ? ? H.Tonguç Yılmaz - tonguc.yilmaz@gmail.com http://friendfeed.com/TongucY
Bir sonraki Özel İlgi Grubu otumu için önerim - Oracle Maximum Availability Architecture • Real Application Clusters + Data Guard; Yüksek Erişilebilirlik için veritabanı seviyesinde uçtan uca veri koruması ve erişilebilirlik sağlayan bir çözüm. • Data Guard sayesinde tek bir konfigürasyon olarak yönetilir.