热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

大数据和开源查询和分析框架

阿帕奇HiveApacheHive是基于Hadoop生态系统的旗舰数据仓库工具。它不仅将结构化的数据文件映射到数据库表,而且还提供SQL(HQL)查询功能(例如SQL语句)并将SQ


阿帕奇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协处理器和过滤器。无论数据响应时间以秒为单位,小规模查询都会以毫秒为单位进行响应。




推荐阅读
  • Spark学习之路(一)Spark概述
    一,什么是spark定义:Spark一种基于内存的快速,通用,可扩展的大数据分析引擎.官网地址:http:spark.apache.org历史:2009年诞生于加州伯 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 什么是大数据lambda架构
    一、什么是Lambda架构Lambda架构由Storm的作者[NathanMarz]提出,根据维基百科的定义,Lambda架构的设计是为了在处理大规模数 ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • 《Spark核心技术与高级应用》——1.2节Spark的重要扩展
    本节书摘来自华章社区《Spark核心技术与高级应用》一书中的第1章,第1.2节Spark的重要扩展,作者于俊向海代其锋马海平,更多章节内容可以访问云栖社区“华章社区”公众号查看1. ... [详细]
  •        在搭建Hadoop环境之前,请先阅读如下博文,把搭建Hadoop环境之前的准备工作做好,博文如下:       1、CentOS6.7下安装JDK,地址:http:b ... [详细]
  • 一、背景1、起源MapReduce编程模型的思想来源于函数式编程语言Lisp,由Google公司于2004年提出并首先应用于大型集群。同时,Google ... [详细]
  • 2017-11-05卓明_开源中国开源中国开源中国微信号oschina2013功能介绍OSChina开源中国官方微信账号业务系统中,通常会遇到这些场景:A系统向B系统主动推送一个处 ... [详细]
  • 这篇文章给大家分享的是有关kylin怎样安装使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 环境我选的kylin版 ... [详细]
  • 大数据学习路线!
    大数据如此火热的现在,想必许多小伙伴都想要加入这个行业。也是AI菌今天就要拿出收藏已久的大数据学习计划。帮助你不走弯路,迈向大数据之路。1大数据应用离不开基础软件的支撑,且大部分大 ... [详细]
  • [说明] Doris使用培训
    参考文献apachedoris在蜀海供应链数仓建设中的实践应用实践|数仓体系效率全面提升!同程数科基于ApacheDoris的数据仓库建设一、doris的背景介绍 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • Kylin 单节点安装
    软件环境Hadoop:2.7,3.1(sincev2.5)Hive:0.13-1.2.1HBase:1.1,2.0(sincev2.5)Spark(optional)2.3.0K ... [详细]
  • 本文整理了Java中org.apache.spark.api.java.JavaPairRDD.coalesce()方法的一些代码示例,展示了JavaPai ... [详细]
  • 探索 AI + Big Data 的更多可能,精彩分享就在 Ray Summit 2021 !
    带你体验简化和自 ... [详细]
author-avatar
无情的有情人家_834
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有