Developersland

Teknoloji ve Yazılım Blogu

  • Yazıtipi boyutunu arttır
  • Varsayılan yazıtipi boyutu
  • Yazıtipi boyutunu azaltır

Hbase Nedir ?

hbase nedirHbase Apache Software Foundation tarafından geliştirilmekte olan açık kaynak kodlu Apache hadoop projesinin bir alt projesidir. HBase çok büyük boyutlara sahip verilere gerçek zamanlı read/write erişimi yapmak gerektiği zamanlarda kullanılır. Hbase Google'ın kullandığı BigTable'dan esinlenerek geliştirilmektedir. Hbase sütun bazlı bir veritabanıdırve capabilitilere benzer bir yapı sağlamaktadır. Capabilitiler işletim sistemleri dersinde protection mechanisms konusu başlığı altında araştırdığım bir konu. Bir kaynağa hangi proseslerin hangi izinlerle erişebileceğinin bilgisini tutmak için tutulan bir listedir kısaca böyle özetleyebilirim. Daha fazla ayrıntıyı merak edenler burdan bakabilirler. Hbase JAVA kullanılarak yazılmıştır. Hbase yapısı alışkın olduğumuz geleneksel veritabanı yapısından farklıdır. Örneğin aynı tabloda bulunan iki satır birbirinden çok farklı sütunlara sahip olabilir.Hbase ve BigTable'ın temeli map'lere dayanmaktadır. Map kavramını Hash olarak düşünebiliriz yani veriler key-value çiftleri şeklinde tutulmaktadır. Hbase ve BigTable dağıtık sistemler olarak tasarlanmıştır. Bunun anlamı verilerin birden çok makineye dağıtılarak saklanabilmesidir.Dolayısıyla Hbase kullanılırken distributed file system kullanılacaktır. Distributed File Sistemlerine örnek olarak aşağıdaki File Sitemleri gösterebiliriz:

-HDFS (Hadoop Distributed File System)
-S3 (Simple Storage Service - Amazon kullanmaktadır bunu)
-GFS (Google File System -Bigtable'ın kullandığı File System)

Hbase key-value çiftlerini alfabetik sıraya uygun olarak tutmaktadır. Hbase özellikle seyrek veritabanları açısından çok verimlidir. Seyrek veritabanına örnek olarak 1000 satırdan oluşan bir tabloda sadece bir satır için belli bir sütunda veri tutulması örnek verilebilir böyle bir durumda diğer 999 satır için boşu boşuna alan ayırmak zorunda kalınacaktır. Hbase'in bir diğer güçlü yanı her veri için timestamp bilgisi tutmasıdır. Bu timestamp bilgisi bize sonradan verilerin zamanla nasıl bir değişim geçirdiğini inceleme fırsatı sunmaktadır. Hbase kullanan şirketlerin listesini burdan inceleyebilirsiniz. HBase ile ilgili her türlü bilgiyi burdan elde edebilirsiniz.


Kaynaklar

http://en.wikipedia.org/wiki/HBase
http://hbase.apache.org/
http://jimbojw.com/wiki/index.php?title=Understanding_Hbase_and_BigTable

 

Yorum ekle


Güvenlik kodu
Yenile