您好,登錄后才能下訂單哦!
本篇內容主要講解“大數據和開源查詢和框架有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“大數據和開源查詢和框架有哪些”吧!
阿帕奇Hive
Apache Hive是基于Hadoop生態系統的旗艦數據倉庫工具。它不僅將結構化的數據文件映射到數據庫表,而且還提供SQL(HQL)查詢功能(例如SQL語句)并將SQL語句轉換為MapReduce任務以供執行。
它是由Facebook開發的,于2008年進入Apache孵化器,并于2010年9月成為優秀Apache項目。背后的原理是利用熟悉的SQL模型來處理HDFS(Hadoop)上的數據。借助Hive,學習成本低,并且可以通過HQL語句快速轉換簡單的MapReduce統計信息,而無需擔心開發其他特殊的MapReduce應用程序。
Hive非常方便地在整個企業范圍內對數據倉庫進行建模和構建,而Hive SQL模型則可以對數據倉庫中的數據進行統計和分析。
但是,Hive的底層被轉換為MR,而MR的改組依賴于系統磁盤,因此它只能處理離線分析,這效率相對較低,在開發人員社區中不可接受。Hive通常使用Hive在整個組織中構建數據倉庫。
Apache SparkSQL
Apache SparkSQL是主要的Spark組件構建,用于處理結構化數據。Spark SQL于2014年發布,并吸收了Hive-on-Spark項目,該項目現在是使用最廣泛的Spark模塊。它提供了一個稱為DataFrames的可編程抽象數據模型,并被視為分布式SQL查詢引擎。
SparkSQL取代了Hive的查詢引擎,但也與hive系統兼容。關于Spark RDD API,Spark SQL提供的接口將為Spark提供有關結構化數據和計算的更多信息。SparkSQL最底層是Spark Core,它使您可以輕松地在不同的SQL和API之間切換。
Presto
Presto是一個分布式數據查詢引擎,但從不存儲數據本身Presto將提供對多個數據源的訪問,并支持跨不同數據源的級聯查詢。它是一個分布式SQL交互式查詢引擎,它也在2012年由Facebook開發,并于2013年開源。
Presto是一種OLAP工具,適用于海量數據的復雜分析,但不適用于OLTP方案。Presto僅提供計算和分析功能,而不能用作數據庫系統。
就Hive而言,Presto是一種低延遲,高并發性的內存計算引擎。它的執行效率比Hive高得多。它的MPP(大規模并行處理)模型可以處理PB級數據。Presto的原理只是將一些數據放入內存中進行計算,完成后將其取出,然后再次處理其他一些數據,例如循環和類似于管道處理模式。
Apache Kylin
Apache Kylin是針對Hadoop生態系統的開源分布式分析引擎。其針對Hadoop / Spark的SQL查詢接口和OLAP功能廣泛支持超大規模數據。它使用基于多維數據集的預計算技術,該技術可快速高效地處理大數據SQL查詢。Kylin由eBay開發,并于2014年11月進入Apache孵化器。
凱林(Kylin)的出現是為了解決分析需要的TB數據。它可以在蜂巢中預先計算數據,并使用Hadoop的MapReduce框架實施。它可以在幾秒鐘內查詢大量的Hive表。
麒麟最關鍵的兩個過程是
多維數據集的預計算過程,并將SQL查詢轉換為多維數據集。
此外,在查詢時要預先計算匯總結果并同時獲得查詢結果,避免直接掃描。
Apache Impala
與其他框架相比,它是用于大數據的實時交互式SQL查詢引擎。Apache Impala是由Cloudera開發的SQL MPP查詢工具,受Google Dremel的啟發,后來于2012年10月開源,并于2017年11月28日成為優秀項目。
Impala使用完全開放且不同的形式集成到Hadoop生態系統中,從而使其使用者可以使用SQL來處理Hadoop生態系統中的大量數據。
目前,它支持多種類型的存儲選項,例如:
Apache Kudu
亞馬遜S3
微軟ADLS
本地存儲
它誕生時僅支持對大量HDFS數據的交互式分析。它的靈活性和領先的分析數據庫性能促進了在全球企業中的大量部署。
Ir為企業業務提供BI和交互式SQL高效分析,并允許第三方生態系統快速增長。
Apache Druid
Apache Druid是用于實時數據分析的開源工具,旨在快速處理大規模數據。它的分布式實時分析通過快速查詢和大規模數據集解決了復雜的任務。
2018年2月28日進入Apache孵化器。它提供了以交互方式訪問數據的功能。進入Druid系統后,可以實時攝取數據并立即進行驗證。輸入的數據a幾乎是不可變的。通常是基于時間順序的事實事件。
Elastic Search
它是一個分布式,可伸縮的實時搜索和分析引擎。它由Shay Banon于2010年建造,后來開源。它具有全文搜索引擎的功能,并具有RESTful Web界面的分布式多用戶支持。
ES的工作原理主要分為以下幾個步驟。
首先,用戶將數據輸入ES數據庫
然后利用分詞控制器對相應的句子進行分段
存儲細分結果的權重。
當用戶搜索特定數據時,將根據權重對結果進行排名和評分,然后返回給用戶。ES是完全用Java開發的,并且是當前比較受歡迎的企業搜索引擎。
它穩定,可靠,快速且易于安裝,專為在云計算環境中使用而設計。
官方客戶提供以下語言版本
Java
.NET(C#)
PHP
Python
Apache Groovy
Ruby
Apache HAWQ
Apache HAWQ(帶有查詢的Hadoop)是Hadoop本機并行SQL分析引擎。它是Pivotal在2012年推出的具有商業許可的高性能SQL引擎。
它是Hadoop的本機SQL查詢引擎,結合了MPP數據庫的技術優勢,巨大的可擴展性和Hadoop的便利性。
經驗證,HAWQ的OLAP性能是Hive和Impala的4倍以上。它非常適合在Hadoop平臺上快速構建數據倉庫系統。
HAWQ具有以下功能,例如
大規模并行處理
完全的SQL兼容性,
支持存儲過程和事務。
它也可以輕松地與其他開源數據挖掘庫(如MADLib)集成。
Apache Lucene
Apache Lucene是基于Java的開源全文搜索引擎工具箱。它是功能比較強大且被廣泛采用的搜索引擎。Lucene不是完整的搜索引擎,而是全文搜索引擎體系結構,使用此原型,您可以制造其他搜索引擎產品。它是一種全文本搜索引擎體系結構,可提供完整的索引創建和查詢索引以及文本分析引擎。
Lucene的目標是為軟件開發人員提供一個簡單易用的工具包,以促進在所需系統中實現全文搜索功能,甚至基于此原型構建完整的全文搜索引擎。它提供了一個簡單但功能強大的應用程序編程接口(API),可以進行全文索引和搜索。
Apache Solr
Apache Solr是一個基于Apache Lucene架構的開源企業搜索平臺。它于2004年發布,于2007年1月17日成為Apache優秀項目。
它的高可靠性,可伸縮性和容錯能力提供分布式索引,復制和負載平衡查詢,自動故障轉移,恢復和集中式配置。它是一個完全用Java語言編寫的獨立全文搜索服務器,并在Servlet容器環境(Apache Tomcat或Jetty)中運行。
Solr依靠Lucene Java搜索庫進行全文索引和搜索,并使用HTTP / XML和JSON API執行類似REST的操作。Solr強大的外部配置功能使其無需使用Java語言即可進行調整,以適合多種類型的軟件。Solr支持許多大型Internet企業站點的搜索和導航功能。
Apache Phoenix
Apache Phoenix是基于HBase的SQL類型框架。Apache Phoenix JDBC API取代了傳統的HBase客戶端API的需求,它還創建表,插入數據和查詢HBase數據。基本上,這是Java中間層,允許開發人員使用HBase中的數據表,例如關系數據庫(例如,通過Phoenix的MySQL)。
Phoenix會將SQL查詢語句編譯為一系列Scan操作,并生成JDBC結果集并將其返回給服務使用者。它使您能夠使用基礎層,例如HBase協處理器和過濾器。無論數據響應時間以秒為單位,小規模查詢都會以毫秒為單位進行響應。
到此,相信大家對“大數據和開源查詢和框架有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。