如何立足Hadoop成功建立商務(wù)智能:七項(xiàng)必備訣竅
在企業(yè)實(shí)施Hadoop技術(shù)時,其中的***用例無疑在于商務(wù)智能(簡稱BI)。根據(jù)新近發(fā)布的一項(xiàng)基準(zhǔn)調(diào)查結(jié)果,我們整理出最適用于處理各類工作負(fù)載的幾款Hadoop SQL引擎。下面,我們一起來看:
1. 不存在萬試萬靈的選項(xiàng)
No Single Best Engine
The benchmark results show that there is no one-size-fits-all general purpose engine for executing these types of queries. "Depending on raw data size, query complexity, and the target number of end-users, enterprises will find that each engine has its own 'sweet spot,'" according to the study's findings.
2. 小數(shù)據(jù)對大數(shù)據(jù)
Small Vs. Big Data
The benchmark shows that Impala and Spark SQL are the stars when it comes to queries against small data sets. AtScale said that the most recent release of Hive LLAP (Live Long and Process) shows acceptable query response times on small data sets, and that Presto also shows promise for these types of queries.
3. 少對多
Few Vs. Many
This metric looks at the performance when the data is hit with many queries at the same time. Presto, which AtScale included for the first time in this benchmark test, showed the best results for concurrency testing. Impala continued its strong concurrent query performance. Hive and Spark SQL registered significant improvements on this metric in the current benchmark test.
4. 復(fù)雜查詢情況
Complex Queries
AtScale's Klahr warns that, while Impala and Presto do well on concurrency, the results shifted as queries became more complex. When it came to complex queries, SparkSQL started to outperform Impala, Klahr told InformationWeek. "You need to have a multi-engine strategy and a mechanism that can automatically route end-user queries to the right engine without the end-user having to think about 'Am I writing a Spark query or an Impala query?'" he said, noting that AtScale does perform that kind of automatic routing to the best engine.
5. 大規(guī)模數(shù)據(jù)集
Large Data Sets
Querying big data sets generally means slower results. The fastest performing engines for these data sets were Spark SQL at less than 20 seconds, followed by Impala at less than 40 seconds. Response times for both of these engines improved significantly from the benchmark six months ago to today. Hive and Presto returned results in just over 2 minutes. Increasing the number of joins generally increased processing time, according to AtScale. Spark SQL and Impala were more likely to perform best as the number of joins increased.
6. 不同引擎各擅勝場
Everybody Wins
All the engines that were evaluated registered significant performance improvements since AtScale's last benchmark test 6 months ago -- on the order of 2x to 4x, according to the company. "This is great news for those enterprises deploying BI workloads to Hadoop. We believe that a best-of-breed strategy -- best engine, best semantic Bilayer, best visualization tool -- will lead enterprises down the most successful path to BI-on-Hadoop success," the company said in its benchmark report.
7. 充分考慮開源優(yōu)勢
Open Source Advances
Klahr told InformationWeek in an interview that between the first edition of the benchmark 6 months ago and today, the query performance of Hive improved by 3.5x, Spark by 2.5x, and Impala by 3x. "If I'm a buyer or an executive, these improvements are going to make me stop and question any investment on a proprietary Hadoop engine," Klahr said, because these open source tools are being improved at a rapid pace.