GPU加速在数据库查询选择性估计与架构设计中的应用
1. GPU加速的查询选择性估计方法
1.1 参数调优算法
为了实现高效的查询选择性估计,需要对工作步骤和最终步骤的参数进行调优,以获取时间最优的参数。以下是两个关键算法:
算法1:工作步骤阶段获取时间最优参数
procedure TuneParamsWork(N, D, G, (wgk)G
k=1, (Mk)G
k=1, (C−1
k )G
k=1)
TWorkStep ← 0.25ms
for tws = 1 → MAX TWS do
▷ MAX TWS = 20
t1 ← time()
sel, N ′ ← CalcSelectivity(tws, N, D, G, (wgk)G
k=1, (Mk)G
k=1, (C−1
k )G
k=1)
t2 ← time()
if t2 − t1 ≤ TWorkStep then
TWSWorkStep ← tws, TWorkStep ← t2 − t1, NWorkStep ← N ′
end if
end for
return TWSWorkStep, TWorkStep, NWorkStep
end procedure
该算法通过遍历不同的 tws
值,计算选择性和处理时间,选择满足时间约束的最优参数。