Video: Çin'den büyük 'büyük veri' yatırımı 2024
Hive, Hadoop'un (HDFS ve MapReduce) temel unsurları üzerine kurulmuş, toplu-odaklı, veri-depo katmanıdır ve büyük verilerde çok yararlıdır. SQL tanıyan kullanıcılara, harita oluşturucular ve redüktörler aracılığıyla erişimlerinden ödün vermeden HiveQL olarak adlandırılan basit bir SQL-lite uygulaması sağlar. Hive ile her iki dünyanın en iyisini elde edebilirsiniz: Yapılandırılmış verilere SQL benzeri erişim ve MapReduce ile sofistike büyük veri analizi.
Hive, çoğu veri ambarından farklı olarak, sorgulara hızlı yanıtlar için tasarlanmamıştır. Aslında, sorgular karmaşıklığa bağlı olarak birkaç dakika veya hatta saatler sürebilir. Sonuç olarak, Hive en iyi veri madenciliği ve gerçek zamanlı davranışlar gerektirmeyen daha derin analizler için kullanılır. Hadoop vakfına bağlı olduğundan, çok genişleyebilir, ölçeklenebilir ve esnektir; bu da ortalama bir veri ambarı olmayan bir şeydir.
Hive, veri organizasyonu için üç mekanizma kullanır:
-
Tablolar: Yığın tabloları, satırlar ve sütunlardan oluşan RDBMS tablolarıyla aynıdır. Hive, Hadoop HDFS'de katmanlı olduğu için, tablolar dosya sistemindeki dizinlere eşlenir. Buna ek olarak, Hive diğer yerli dosya sistemlerinde saklanan tabloları destekler.
-
Bölümler: Bir Kovan tablo, bir veya daha fazla bölümü destekleyebilir. Bu bölümler altta yatan dosya sistemindeki alt dizinlere eşlenir ve verilerin tablonun her yerinde dağılımını gösterir. Örneğin, bir tablo, 12345 anahtar değerine ve Ford, üreticisi değerine sahip otomobiller, olarak adlandırılmışsa, bölüme giden yol / hivewh / otomobil / kv = 12345 / Ford.
-
Kovalar: Buna karşılık veriler kovalara bölünebilir. Kovalar alttaki dosya sistemindeki bölüm dizininde dosyalar olarak saklanır. Kovalar tablodaki bir sütunun karmasına dayanır. Önceki örnekte, bir Ford Focus otomatikinin tüm özelliklerini içeren Odak, adlı bir kovanız olabilir.
Yığın meta verileri harici olarak "metastore" da saklanır. "Metastore, Hive şemasının, sütun türleri, sahipleri, anahtar ve değer verileri, tablo istatistiği vb. Gibi ayrıntılı açıklamalarını içeren bir ilişkisel veritabanıdır. Metastore, katalog verilerini Hadoop ekosistemindeki diğer metadata hizmetleri ile senkronize edebilir.
Hive, HiveQL adlı SQL benzeri bir dili destekliyor. HiveQL select, join, aggregate, union all ve benzeri gibi birçok SQL ilkelini destekler. Ayrıca, birden çok sorguyu ve ekleri, girilen verileri tek bir HiveQL ifadesinde paylaşarak destekler. HiveQL, kullanıcı tanımlı toplama, sütun dönüşümü ve gömülü MapReduce komut dosyalarını desteklemek üzere genişletilebilir.