我需要使用索引和分区一个庞大但简单的表(1.27亿行),以加快查询速度。它有99个月数据块,每个月有一个整数1到99。我希望每个月将每个月划分为每个分区,并对[ID]和[Month]列进行索引,因为我需要查询表,以便将每个月与其前面的[Month]和每个人的[ID]进行比较。我该怎么做?我已经创建了分区函数
CREATE PARTITION FUNCTION PF_Monthly(int)
AS RANGE RIGHT FOR VALUES (
1,2,3,4,5,6,7,8,9,10
,11,12,13,14,15,16,17,18,19,20
,21,22,23,24,25,26,27,2
我是Hive和SQL的新手。我目前正在查询数据库,以提取基于
SELECT * FROM database.table WHERE A = '980dsf9sfjklsdfj' AND B = '141519384938' AND C = 'URL'
A --> some id value
B --> timestamp value
c --> url
这些查询需要一段时间才能执行。我可以想象,当向表中添加更多数据时,这些查询可能会花费更长的时间。我怎样才能加快这个过程呢?我想,如果我先对时间戳值进行排序,它会使查询速度更快?