SQL PageRank实现

时间:2013-07-22 12:45:06

标签: sql tsql pagerank

那里有一个很好的SQL PageRank实现吗?我查看了http://www.databasedevelop.com/197517/,但它缺乏易读性和正确的(T-SQL)语法。

虽然我们正在使用它,有没有人知道上面链接使用的是什么类型的SQL? SQL在随机位置使用'is','where'后面没有任何内容,奇怪的 AT 关键字等等?

2 个答案:

答案 0 :(得分:1)

我刚刚在SQL中实现了PageRank算法。该算法在以后的进展中起作用。

1.计算PageRank初始排名值;

2.使用 Edge 表加入 PageRank 表,向相邻节点发出排名值,并使用汇总函数 sum to"收集"收到的价值。然后,将结果保存到寺庙表 TmpRank ;

  1. 交换 PageRank TmpRank 的内容,然后转到第2步,直到满足收敛条件或达到最大迭代时间。
  2. 以下是代码:

    from scipy import stats
    l = [15, 18, 2, 36, 12, 78, 5, 6, 9]
    print(stats.describe(l))
    
    # DescribeResult(nobs=9, minmax=(2, 78), mean=20.11111111111111, 
    # variance=572.3611111111111, skewness=1.7791785448425341, 
    # kurtosis=1.9422716419666397)
    

答案 1 :(得分:0)

根据您的SQL Server版本,查看OFFSET_FETCH窗口函数。为此有很多页面排名应用程序。当然这需要2012年。

我还使用了SSIS和一个NTILE()划分的临时表来完成分页,因为缺乏使用OFFSET_FETCH的能力。通常使用类似记录计数的东西除以我想在页面中看到的最大数字作为NTILE调用的种子。

无论出于何种原因,我甚至无法打开你的链接,所以希望这是你的要求。

MSDN - OFFSET_FETCH

MSDN - NTILE