我们正在寻求部署报告解决方案,其中数据存储在HIVE / Hadoop数据层中,报告层将使用SSRS查询该数据层。
现在考虑性能优化,考虑到我们将在HIVE上使用 ORC文件格式,在数据层上考虑索引是否有意义。
根据下面的一些参考,看起来像索引是ORC文件格式固有的?是这种情况还是这是不同的。
我是HIVE / Hadoop的新手,所以非常感谢这里的任何指示。谢谢!
答案 0 :(得分:0)
ORC文件中的索引具有不同的用途。从文档
存储在文件跳过行组中的轻量级索引没有 将谓词过滤搜索传递给给定的行
然而,拥有的索引旨在优化特定列的搜索。
Hive索引的目标是提高查询查询的速度 表格的某些列。没有索引,带有谓词的查询 比如'WHERE tab1.col1 = 10'加载整个表或分区 处理所有行。但是如果col1存在索引,则只有a 需要加载和处理文件的一部分。
我不确定这是否适合您的报告模型,可能无法帮助很多常见的聚合
我希望它有所帮助