应在何时使用 HDInsight Interactive Query?

已完成

作为业务分析师,你需要确定要创建的最合适的 HDInsight 群集类型,以便构建解决方案。 Interactive Query 群集提供了许多功能和互操作性选项,因此对熟悉 SQL 的业务分析师特别有益。 它非常适合希望使用商业智能工具并需要快速交互式查询的用户。 该群集还提供有其他优势,如支持一系列文件格式、并发性以及原子性、一致性、隔离性和持久性 (ACID) 事务。 更不用提与 Apache Ranger 集成带来的优势了,这种集成可以对数据进行精细的行级和列级控制。

注意

此模块的内容适用于 Interactive Query 群集,该群集是为使用 Hive 3.1 和 LLAP(也称为 Hive LLAP)的 HDInsight 4.0 创建的。

你需要一个已准备好进行查询的大型数据集

Interactive Query 群集最适用于可以按原样查询或转换次数最少的大型数据集。 将对数据执行各种查询并需要立即做出响应的情况。 Interactive Query 群集未针对执行长时间运行的批处理计算进行优化。 Interactive Query 支持以下文件格式:ORC、Parquet、CSV、Avro、JSON、text 和 tsv。

你需要类似于 SQL 的功能

如果需要对 Azure 存储空间和 Azure Data Lake Storage 中的大数据执行交互式查询和即席亚秒级延迟的查询,并更喜欢使用类似于 SQL 的体验,则 Azure HDInsight Interactive Query 群集是完美选择。 作为业务分析师,你非常熟悉 SQL 表以及如何使用 SQL 创建查询。 Apache Hadoop 是一种功能强大的工具,可用于执行大数据分析。 如果你对 Java 编程技能还比较生疏,则可能无法灵活运用 Apache Hadoop 使用 MapReduce 框架及其 Java API。 在这种情况下,更适合使用 HDInsight Interactive Query,因为它基于 Apache Hadoop 而构建,而且对于具有 SQL 体验的任何人而言,此查询更简单。 Interactive Query 使用类似于 SQL 的 Hive 表来处理数据,并使用类似于 SQL 的查询语言(称为 HiveQL)来查询数据。 在 Apache Hadoop 中使用 Hive 比使用 MapReduce 处理数据更为简单。 Hive 使公司可以更快、更高效地推出解决方案。

具有智能缓存的快速交互式查询

Interactive Query 群集使用智能缓存技术跨动态 RAM、本地群集节点 SSD 和远程存储系统(例如 Azure Blob 和 Azure Data Lake Storage)对数据进行分层,以实现对大数据的交互式和快速查询结果。 高级缓存技术的一个很好的示例是动态文本缓存,它将 CSV 数据动态地转换为一种优化的内存中格式,因此缓存是动态的,并且查询会确定缓存的数据类型。 此功能意味着第一次运行时无需加载和转换数据。 可以采用原始格式将数据上传到 Azure 存储,并开始执行查询。 这也意味着查询在第二次运行时性能更好。 第一次执行查询时,会从 Azure 存储或 Azure Data Lake Gen2 中的业务数据存储层读取数据。 然后,将数据缓存到群集中的共享内存中缓存。 下一次运行查询时,只需从共享的内存中缓存检索数据,而不从远程存储层检索数据,因此节省了时间。

通过 Interactive Query,你可使用熟悉的 BI 工具(如 Microsoft Power BI 和 Tableau)轻松处理大数据。 在大数据分析中,组织越来越担心其最终用户由于分析系统而无法获取足够的价值,因为这通常极具挑战性,而且需要使用不熟悉且难以学会的工具,导致无法运行分析。 使用 HDInsight Interactive Query 就可解决此问题,因为新用户无需进行培训即可从数据中获取解决。 用户可以在其所用工具中编写类似于 SQL 的 HiveQL 查询。 这些工具包括 Visual Studio Code、Power BI、Apache Zeppelin、Visual Studio、Ambari Hive View、Beeline、Data Analytics Studio 和 Hive ODBC。 不能使用 Hive 控制台、Templeton、Azure 经典 CLI 或 Azure PowerShell 在 Interactive Query 群集上执行查询。

要求事务具有一致性和并发性

由于引入了细化的资源管理、优先以及跨查询和用户共享缓存数据,因此 Interactive Query 轻松支持并发用户。 HDInsight 支持在共享的 Azure 存储上创建多个群集。 Hive 元存储有助于实现高度并发性。 可以通过添加更多群集节点或添加更多指向相同基础数据和元数据的群集来扩展并发性。 Interactive Query 还支持原子性、一致性、隔离性和持久性 (ACID) 的数据库事务。 ACID 事务保证事务(即使包含多个操作)包含在一个单元中。 因此,如果事务中的任何一个操作失败,则会回滚整个操作,以保持数据一致性和准确性。

构建以补充 Spark、Hive、Presto 和其他大数据引擎

HDInsight Interactive Query 旨在充分利用常用的大数据引擎,例如 Apache Spark、Hive、Presto 等。 这种类型的查询特别有用,因为用户可以选择其中的任何一种工具来运行他们的分析。 借助外部表的 HDInsight 共享数据和元数据体系结构,用户可以创建多个具有相同或不同引擎(指向相同的基础数据和元数据)的群集。 此功能是一个强大的概念,因为可不再受一项分析技术的限制。

Interactive Query 技术