Apache Ignite与Apache Drill for SQL的性能

时间:2016-08-09 09:28:26

标签: apache hadoop apache-drill ignite

我需要从一些大型MySQL表中获取数据才能在仪表板/门户网站上显示。主要是,我的重点是在给定数据集大小的情况下提高SQL性能。

此外,考虑到Ignite使用RAM作为主要数据源,Apache Ignite的可扩展性是否低于Apache Drill?

如有需要,请告知我们,我们需要更多细节。

我通过这些链接: http://drcos.boudnik.org/2015/04/apache-ignite-vs-apache-spark.html https://mpouttuclarke.wordpress.com/2016/01/04/why-i-tried-apache-spark-and-moved-on/

在IGFS下使用可选的HDFS层是否会将系统性能降低到SparkSQL的水平? https://ignite.apache.org/features/igfs.html

2 个答案:

答案 0 :(得分:2)

Drill只是一个主要用于NoSQL数据库的SQL查询引擎。由于内存处理,与hive和许多NOSQL数据库相比,它的性能良好。

检查“钻取 - here

中查询执行的工作原理。”
  

可扩展性

Apache钻取具有高度可扩展性,无需担心。

你无法比较理论中的两个重叠工具。 我建议你做一个POC,在这两个工具上采集一些MySQL样本数据。性能在很大程度上取决于您的用例。

Drill最适合查询复杂的JSON文件(因为其列式布局)和解决多语言用例(跨多个数据存储区执行连接

答案 1 :(得分:1)

  

此外,考虑到Ignite使用RAM作为主要数据源,Apache Ignite的可扩展性是否低于Apache Drill?

在内存中存储数据实际上可以更好地扩展。我对Drill了解不多,无法比较,但Ignite完全是关于可扩展性和扩展性的。

  

在IGFS下使用可选的HDFS层是否会将系统性能降低到SparkSQL的水平? https://ignite.apache.org/features/igfs.html

如果将HDFS用作辅助文件系统,则只有在请求的数据尚未在内存中时才会访问它。因此,正确使用它不会减慢你的速度。

请注意,Ignite提供了非常丰富的SQL功能[1]。您可以运行简单地将数据加载到内存中,并使用快速索引搜索运行符合ANSI-99的查询。例如,SparkSQL根本不支持任何索引,这使得它在许多情况下变得更慢(至少据我所知)。

[1] https://apacheignite.readme.io/docs/sql-queries