Sept 2004 C-JDBC (Clustered Java™ DataBase Connectivity) açık kaynak kodlu veritabanı kümeleme (cluster) ortakatman yazılımıdır. Her türlü uygulamanın, JDBC üzerinden kümelenmi veritabanlarına açık ula ımını sa lar. C-JDBC, da ıtık ve bir çok replike edilmi uçtan olu an veritabanına sorgu yüklerini da ıtır. CJDBC bir RAIDb (Redundant Array of Inexpensive Databases, ilerleyen bölümlere bakınız) yazılım implementasyonudur. C-JDBC bir ObjectWeb projesidir ve GNU LGPL lisansı ile da ıtılmaktadır. • Mevcut uygulamalarda kod düzenlemesi gerekmez, • JDBC sürücüsü bulunan her veritabanı sunucu yazılımı ile çalı abilme, • RAIDb yazılımı implementasyonu ile sa lanan Performans ölçekleme ve hata toleransı, • Çoklu platformları destekleyen %100 Java uygulaması. C-JDBC iki bile en sa lar: bir sürücü (driver) ve bir kontrolör (controller). C-JDBC Sürücü C-JDBC, istemci tarafından kullanılan veritabanının kendi JDBC sürücünün yerini alan standart bir JDBC 2.0 sürücüsüdür. C-JDBC sürücü SQL isteklerini C-JDBC kontrolörüne RMI™ üzerinden yönlendirir ve ili kili sonuçları alır. C-JDBC Kontrolör C-JDBC kontrolör be ana bile enden olu an düzgün bir Java uygulamasıdır. Authentication Manager istemci tarafından gönderilen kullanıcıadı/ ifre’yi denetler ve onaylar. Scheduler C-JDBC’ den gelen istekleri alır ve güvenli i lem (transactional-safe) emirlerini düzenlemek için senkronize eder. Opsiyonel olan Query Cache ise, sorgu sonuçlarını, performans ölçeklenmesini artırmak ve cevap zamanını minimize etmek için, önbelle e (cache) alabilir. Load Balancer, de i ik ve birçok derecede yük da ılımı ve hata toleransı ba arımı için bütün RAIDb seviyeleri yazılım implementasyonlarını sunar. Son olarak, Connection Manager veritabanı JDBC sürücüleri üzerinden, arka katmanlara ba lanmak için açık ba lantı havuzları (connection pooling) sa lar. Servlet/JSP server Tomcat, Jetty, ... Servlet/JSP server Tomcat, Jetty, ... Database JDBC driver JVM C-JDBC driver J2EE Server JOnAS, W ebLogic, JBoss, W ebSphere, ... Database JDBC driver Java client program Database JDBC driver JVM JVM Java client program C-JDBC driver JVM J2EE Server JOnAS, WebLogic, JBoss, W ebSphere, ... C-JDBC driver JVM JVM C-JDBC Controller No scalability No fault tolerance No failover Scalability - High Availability - Failover Caching - Connection Pooling - ... Database JDBC driver Database MySQL, PostgreSQL, SAP DB, Oracle, DB2, InstantDB, ... Database Database Database Database Database MySQL, PostgreSQL, SAP DB, Oracle, DB2, InstantDB, ... Ölçekleme ve Hata Toleransı C-JDBC kontrolörleri, çok daha iyi performans ölçeklenmesi ve hata toleransı sa lamak için replikasyon ve gruplama yapabilir. C-JDBC sürücüleri, yardımcı kontrolörler arasında açık failover yapısını destekler. yile tirilmi Sorgu Önbelle i Her C-JDBC kontrolörü içerisinde, bir sorgu önbelle i etkin kılınabilir. Detaylı sorgu çözümlemesi, eCommerce uygulamaları için, yüksek önbellek ula ım oranları ve dü ük cevap zamanları demektir. Ba lantı Havuzu (Connection Pooling) C-JDBC ba lantı havuzu sa lamaktadır. Her veri kayna ının ba lantı havuzunun performansı biribirinden ba ımsız iyile tirilebilir. Çoklu Ortam Deste i C-JDBC, JDBC sürücüsüne sahip de i ik veritabanlarının olu turdu u kümeleme yapılarını destekler. Bir tek gereksinim vardır; o da bütün veritabanlarının uygulamadaki SQL cümlelerini aynı ekilde çalı tırabilmesi. Açık Sistem Altyapısı C-JDBC, bir açık kaynak (open source) giri imdir. Her C-JDBC bile eni, özel kullanıcı ihtiyaçlarına veya mimari ortama gore yerde i ebilir ve özelle ebilir. araçlar bulunmaktadır. 2002 yılında Bull, France Telecom ve INRIA tarafından kurulmu tur ve INRIA tarafından host edilmekte, Together Teamlösungen GmbH tarafından da sponsorlu u yapılmaktadır. ObjectWeb hakkında daha fazla bilgi için, http://www.objectweb.org adresini ziyaret edebilirsiniz. ! "# $% &' & & RAIDb, çoklu veritabanı örneklerini, bir veritabanı dizini içerisinde birle tirerek, daha iyi performans ve hata toleransını, tek bir veritabanı gibi dü ük maliyetlerle elde etmeyi amaçlamaktadır. Birçok mevcut RAIDb seviyesi, de i ik performans ve hata toleransına ula mak için tanımlanmı tır. RAIDb-0 (tam bölümleme): Veritabanı tabloları arka planda da ıtık. S Q L requests R A ID b -0 co n tro ller table 1 tab le 2 & 3 table ... tab le n-1 table n RAIDb-1 (tam replikasyon): Veritabanı tamamıyle arka planda replike edilmi . SQ L requests R A ID b-1 controller INRIA, Fransız Ulusal Bilgisayar Bilimi ve Kontrol Ara tırma Enstitüsü’ dür (French National Institute for Research in Computer Science and Control). INRIA Rhône-Alpes’ deki “Sardes” Projesi (http://sardes.inrialpes.fr/), RAIDb içeri ini tanımlamakta ve C-JDBC projesi geli imine liderlik etmektedir. Full D B Full D B Full D B Full D B Full D B RAIDb-2 (parçalı replikasyon): her veritabanı tablosu, en az iki defa arka planda sunulmakta. SQ L requests ObjectWeb, dünya çapında lider firmaların ve ara tırma organizasyonlarının olu turdu u bir konsorsiyumdur. Bunlar, yeni nesil Açık Kaynak Ortakatman üretmek için güçlerini birle tirmi lerdir. Açık standartlara dayalı ObjectWeb’in ortakatman çözümlerinde, uygulama sunucusu yazılımları, bile enler, framework’ler, ve R A ID b-2 controller Full D B table x table y table x & y table z ndirmek için: http://c-jdbc.objectweb.org Bize katılın: [email protected] Bütün isimler ve markalar ki isel sahiplerine aittir. ObjectWeb, INRIA tarafından host edilen bir konsorsiyumdur www.objectweb.org - [email protected] Java, JDBC, RMI ve bütün Java tabanlı markalar Sun Microsystems, Inc.' ın tescilli markalarıdır.