不同Hadoop上的SQL数据库引擎如何适配BI工作

Hadoop上的SQL引擎Impala是一种新型查询系统基准,发现Spark和Hive在BI的工作负载中有自己的优势与弱势。

根据最新的基准,三个主要的SQL-on-Hadoop引擎,Apache Impala 2.3, Apache Spark 1.6 和Apache Hive 1.2,都有各自独特的优势和劣势,这令他们能很好的适应一些BI用例,而不是其他智能。

“一个引擎是无法满足所有需求的”,Dave Mariani,大规模AtScale的CEO和创始人,AtScale是一个专门在hadoop上实现BI的创新企业。“我们已经完成了布置,对于我们的客户而言这是多个引擎的补充。”

关于在Hadoop基础上的商业智能,AtScale帮助技术评估者选择最好的SQL –on-Hadoop技术,以帮助他们完成BI用例。AtScale测试团队使用星型架构基准(SSB)数据集,基于广泛使用的TPC-H数据(TPC- H是事务处理性能委员会公布的一套针对数据库决策支持能力的测试基准),将其进行修改使之更加 精确的表现一个面向BI的数据布局。数据集允许数据团队测试大型表的查询:在线订购表含有接近6百万行,大型客户表含有超过十亿行。

SQL-on-Hadoop引擎有不同的“甜区”工作负载

Mariani解释AtScale根据三个关键要求评价SQL-on-Hadoop引擎,以及它们的适应度是否能满足BI工作负载。

在大数据上执行。SQL-on-Hadoop引擎必须能够连续不断的分析十亿百亿行数据,并且没有生成错误,对命令的反应时间是10s或者是100s。

在小数据上速度快。引擎需要传递相互表现到已知查询模式,因此,

SQL-on-Hadoop引擎在处理小数据时,不超过几秒钟就能将结果返回。(小数据是指有着成千上百万的命令行的数据)。

对用户来说是稳定的。企业级BI用户的基础是由成百上千的数据工作人员组成。SQL-on-Hadoop引擎必须在高度并行分析的工作负载中运行可靠。

Mariani领导团队为雅虎的BI创建了可能是世界上最大的在线分层分析!他相信这三个标准是基本要求的代表,是企业在Hadoop上实现BI时都会遇到的。这个标准,是测试团队和大量行业企业合作得出的,包括金融服务,医疗,零售,电信等。

“我们使用了真实世界的的经验去形成文档,每一个技术评估者可以将其作为是评估流程的一部分”。Josh Klahr补充,AtScale.生产部门副总裁。

测试团队发现三个引擎都通过了测试,足够稳定去支持BI工作负载,但是一个引擎不能满足所有需求。每个引擎都有自己的“甜区”,企业有可能去寻找所有引擎的混合用法,他们相信这有可能最适合他们的目标。

当Hive在逐渐思考SQL-on-Hadoop的默认值时,它将基准中引擎运行最慢的情况放置一边,令其不能很好的配合相互查询。

“如果你使用Hive Tez作为你的相互查询引擎,你能做到的最佳是2.4秒”。Mariani 说。

但是它可能缓慢,Hive也是三个引擎中最稳定的,在多个查询类型中有着最好的连贯性。

“Hive Tez就像乌龟。”. Mariani 说,“它总是能完成竞赛,但是不是在壮观,迅速的时尚下。但是它是最可靠的。”

Impala和Spark,从利益方面来说,在处理小数据集时,他们是最好的。Impala会在大量的工作负载中覆盖了Spark,但是 Mariani提到Spark1.6相比Spark1.5有了巨大的性能改变,他希望Spark能继续保持这样的发展趋势,因为Spark已经划出一块大的开源社区,关注着它的发展。数据管理公司云纪元公司(Cloudera)最近计划捐赠Impala给Apache软件基金会,这可以为其发展增加势头。

现在,Impala是用例的王者,它需要大量的用户

“Impala在并发上真的很棒,” Mariani 说,“如果你打算拥有一大堆用户,让他们去使用小的快速的查询,Impala相比Spark是更好的选择。”

“如果速度不是最重要的,但是稳定性和可靠性很重要,我会选择使用Hive Tez作为我的数据管线引擎”,他补充道,“对于那些需要大批处理的工作负载,我会选择Hive Tez。如果我想要我的BI用户接入我的数据仓库,我会使用Spark或者Impala。”

Mariani 提到,虽然团队不能把其他引擎作为基准,如Apache Drill或者 Apache Presto,但是他们会在下次尝试。

他说,“你永远不知道引擎与引擎之间,谁将是可以作为赌注的更好的马。”

本文作者:Optimus Prime

来源:51CTO

时间: 2024-10-23 21:50:17

不同Hadoop上的SQL数据库引擎如何适配BI工作的相关文章

SQLite 3.19.0 发布,零配置 SQL 数据库引擎

SQLite 3.19.0 已发布,SQLite 是一个开源.跨平台.免费的小型 C 库,实现了一个独立的.可嵌入的.事务性的.无服务器的和零配置的 SQL 数据库引擎. 更新内容: 在表达式上使用索引时,尝试使用索引中已有的表达式值,而不是加载原始列并重新计算表达式. 优化 flattening optimization ,使其能够 flatten LEFT JOIN 右侧的视图. 使用 replace()而不是 char(),来转义嵌入在命令行 shell 的 .dump 输出中的字符串中的

悬赏:如何将公司服务器上的SQL数据库下载到自己的电脑上?

问题描述 悬赏:如何将公司服务器上的SQL数据库下载到自己的电脑上? 刚进公司,想把数据库弄到自己电脑上,但是电脑上只有一个SQL客户端,求高手解答一下 谢谢 解决方案 一定要先问问管理员,这么做是否合法.如果非法复制公司的数据库,涉嫌非法入侵计算机系统罪和盗窃商业机密罪.你刚进公司,不要忽视了这些.人家服务器有日志,控制台有监控.你拷贝了东西,如果此时公司有发现,即便你只是自己拷贝了学习学习,但是也说不清楚了. 解决方案二: 特别是你刚进公司,公司对你背景一无所知.你很容易被当作商业间谍.而且

如何在vs2005上连接sql数据库

问题描述 别人编的程序怎么在本机上调试?在vs2005上连接数据源,编译后调用不了sql数据库信息出现:在建立与服务器的连接时出错.在连接到SQLServer2005时,在默认的设置下SQLServer不允许进行远程连接可能会导致此失败.(provider:命名管道提供程序,error:40-无法打开到SQL这种情况如何解决啊? 解决方案 解决方案二:别人编的数据库不在你的机子上面吧~~你的机子又连接不到他的数据库把server改下吧~解决方案三:首先你是用uid和pwd链接的把,链接别人的机子

SQL数据库的终结?

第一部分 SQL 的发展起始于 E.F.Codd 博士1970年六月发表于计算机协会的"通信"上的一篇论文, "大型共享数据库的关系模型".当时他和他的在IBM工作的同事 Donald Chamberlin 和 Raymond Boyce 正在研究一种查询语言(最初叫做SQUARE, Specifying Queries As RelationalExpressions 的首字母缩写),并于1974年以论文"SEQUEL:A Structured Engl

Hadoop平台中SQL优化的四个思路

要正确的优化SQL,必须能快速定位性能瓶颈点,或者说快速找到SQL主要的开销所在.最慢的设备通常是瓶颈点的成因,如文件下载时的瓶颈点可能是网络速度,本地文件复制时的瓶颈点可能在于硬盘性能. 为了快速找到SQL的性能瓶颈点,首先需要读者对各种设备的性能数据有一些基本的认识,如千兆网络带宽是1000Mbps,硬盘转速为每分钟7200/10000转等. 下图数据给出了一些当前主流的计算机性能指标. 图1 I/O各层次硬件性能汇总 如上图所示,每种设备基本上都有两个重要指标: 延时(响应时间):反映硬件

SQL点滴17—使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识

原文:SQL点滴17-使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识 在开发过程中会遇到需要弄清楚这个数据库什么时候建的,这个数据库中有多少表,这个存储过程长的什么样子等等信息,今天把自己工作过程中经常用到的一些数据库引擎存储过程,系统视图等等总结一下以备不时之用.下面的知识多是自己总结,有一些参考了MSDN. sp_help 有时候想尽快查出数据库对象的相关信息,这个存储过程就很有用了.使用它可以查询出整个数据库中所有对象的相关信息.直接运行sp_help结果如下图1,

win server 2008安装sql server 2008标准版 数据库引擎安装失败

问题描述 win server 2008安装sql server 2008标准版 数据库引擎安装失败 今天在win server 2008上安装sql server 2008标准版,之前都没有报错,就是到最后安装快结束了弹出对话筐,如下 跪求大神帮忙,我要疯了!!!

SQL SERVER 2008数据库引擎详细介绍_mssql2008

SQL Server 的数据库引擎组件是用于存储.处理数据和保证数据安全的核心服务.数据库引擎提供受控的访问和快速事务处理,以满足企业中要求极高.大量使用数据的应用程序的要求. SQL Server 支持在同一台计算机上最多存在 50 个数据库引擎实例.对于本地安装,必须以管理员身份运行安装程序.如果从远程共享安装 SQL Server,则必须使用对远程共享具有读取和执行权限的域帐户. 高可用性解决方案概述 高可用性解决方案可减少硬件或软件故障造成的影响,保持应用程序的可用性,尽可能地减少用户所

启动服务器SQL Server 2005数据库引擎的方法

SQL2005数据库引擎没有启动的解决方法,SQL2005已经不再像SQL2000那样,单独有一个服务器管理... 数据库引擎没有启动. 有两种启动方式: (1)开始->程序->Microsoft SQL Server 2005->SQL Server 2005外围应用配置器,在打开的界面单击"服务的连接的外围应用配置器",在打开的界面中找到Database Engine,单击"服务",在右侧查看是否已启动,如果没有启动可单击"启动&qu