Video: HDInsight: Fast Interactive Queries with Hive on LLAP | Azure Friday 2024
Gösterilen Apache Hive öğelerini incelerken, Alt kısımda Hive'nin Hadoop Dağıtılmış Dosya Sisteminin (HDFS) üstünde yer aldığını görebilirsiniz) ve MapReduce sistemleri.
MapReduce'da, şekillerde hem Hadoop 1 hem de Hadoop 2 bileşenleri gösterilmektedir. Hadoop 1 ile Hive sorguları, MapReduce koduna dönüştürülür ve JobTracker ve TaskTracker gibi MapReduce v1 (MRv1) altyapısı kullanılarak çalıştırılır.
Hadoop 2 ile YARN kaynak yönetimi ve planlamayı MapReduce çerçevesinden ayırmıştır. Hive sorguları yine MapReduce koduna dönüştürülebilir ve şimdi MapReduce v2 (MRv2) ve YARN altyapısıyla idam edilebilir.
Toplu stil sorguları için Hive performansını iyileştirmek ve daha küçük etkileşimli ( gerçek zamanlı olarak da bilinir) sorgularını desteklemek için geliştirilen Apache Tez adı verilen yeni bir geliştirme çerçevesi var. Yazı yazarken Apache Tez projesi hala kuluçka aşamasında ve henüz üretim için hazır bir sürüm içermiyor.
Bütün parçaların nasıl bir araya geldiğini görmenize yardımcı olursa, HDFS ve MapReduce sistemlerini Apache Hadoop işletim sisteminin bir parçası olarak, Hive ile birlikte - HBase gibi diğer bileşenleri düşünün. - Üst düzey işlevler veya uygulamalar olarak. (Ortak bir temanın ortaya çıkabileceğini görebilirsiniz: HDFS depolama alanı sağlar ve MapReduce, Hadoop ekosistemi içindeki üst düzey işlevler için paralel işleme yeteneği sağlar.)
Diyagramı yukarı çektiğinizde, HiveQL'yi derleyen, optimize eden ve yürüten Hive Sürücüsünü bulursunuz. Hive Sürücüsü, eldeki görece HiveQL ifadelerini ve komutlarını yerel olarak yürütmeyi veya bir MapReduce işi oluşturmayı seçebilir. Hive Sürücü, tablo meta verilerini metastaza ve veritabanına depolar.
Muhtemelen SQL ve RDBMS dünyasındaki ilişkisel veri tabanı modeline aşinasınızdır. tablosu veya ilişki dikey sütunlardan ve yatay satırlardan oluşur. Hücreler , satırların ve sütunların kesiştiği yerde saklanır. SQL ve ilişkisel veritabanı modeli hakkında bilginiz yoksa, en sevdiğiniz arama motorunu kullanarak yararlı öğrenme kaynakları bulabilirsiniz.
Varsayılan olarak, Hive, gömülü modda metastore ile yapılandırılmış Apache Derby RDBMS'yi içerir. Katıştırılmış mod , Hive Sürücüsü, metastaz ve Apache Derby'nin hepsinin bir Java Sanal Makinesi'nde (JVM) çalıştığını gösterir.
Bu yapılandırma öğrenme amacıyla iyidir, ancak gömülü mod yalnızca tek bir Hive oturumunu destekleyebilir, bu nedenle normal olarak çok kullanıcılı üretim ortamlarında kullanılmaz.Üretim ortamlarındaki çoklu Kovan oturumlarını daha iyi destekleyebilen diğer iki mod - yerel ve uzak bulunur. Ayrıca, Java Database Connectivity (JDBC) Uygulama Programlama Arabirimi (API) paketi ile uyumlu olan herhangi bir RDBMS'yi yapılandırabilirsiniz. (Örnekler burada MySQL ve DB2'yi içerir.)
Uygulama desteğinin anahtarı zengin bir istemci grubunun Hive alt sistemine erişmesini sağlayan Hive Thrift Sunucusudur. Açık kaynaklı SQuirreL SQL istemcisi örnek olarak verilmiştir. Ana nokta, JDBC uyumlu herhangi bir uygulamanın birlikte verilen JDBC sürücüsü aracılığıyla Hive'a erişebilmesidir.
Aynı açıklama, Open Database Connectivity (ODBC) ile uyumlu istemciler için geçerlidir - örneğin, Linux ile birlikte verilen unixODBC ve isql yardımcı programı, uzak Linux istemcilerinden Hive erişimi sağlar.
Buna ek olarak, Microsoft Excel kullanıyorsanız, Microsoft ODBC sürücüsünü istemci sisteminize kurduktan sonra Kovan'a erişebildiğinizi bilmekten mutluluk duyacaksınız. Son olarak, Hive'e Java dışındaki programlama dillerinden erişmek isterseniz (örneğin PHP veya Python), Apache Thrift cevabıdır. Apache Thrift müşterileri, JDBC ve ODBC istemcilerinin yaptığı gibi Hive Thrift Sunucusu aracılığıyla Hive'a bağlanır.
Hive mimari çizimine devam etmek için, Hive'ın sorguları ve yönetici komutlarını Doğrudan Hive Sürücüsüne göndermek için bir Linux terminal penceresi kullanabileceğiniz bir Komut Satırı Arabirimi (CLI) içerdiğini unutmayın. Grafiksel bir yaklaşım sizin hızınızdan daha fazla olursa, kullanışlı bir web arayüzü de var, böylece Hive tarafından yönetilen tablolarınıza ve verilerinize favori tarayıcınızdan erişebilirsiniz.
Hue olarak bilinen ve Apache Hive için bir grafik kullanıcı arabirimi (GUI) sağlayan başka bir web tarayıcı teknolojisi var. Bazı Hadoop kullanıcıları sadece bir komut satırı arabirimi (CLI) yerine bir GUI'ye sahip olmak ister. Hue ile birlikte Hue HDFS, MapReduce / YARN, HBase, Zookeeper, Oozie, Domuz ve Sqoop gibi diğer önemli Hadoop teknolojilerini de desteklemektedir. Hue'nun Apache Hive GUI'sinin adını beğeneceksiniz - buna Beeswax deniyor.