大数据K-近邻(K-NN)计算复杂度高,为解决此问题,提出一种基于HBase和SimHash的大数据K-近邻分类算法。该算法利用SimHash算法将大数据集映射到Hamming空间,得到哈希签名值集合。然后,将样例的行键与值的二元对存储到HBase数据库中,行键为样例的哈希签名值,值为样例的类别。对于测试样例,以其哈希签名值作为行键,从HBase数据库中获取所有样例的值,通过对这些值进行多数投票,得到测试样例的类别。
与基于MapReduce的K-NN和基于Spark的K-NN相比,该算法在运行时间和测试精度方面均有优势。实验结果表明,在保持分类能力的前提下,该算法的运行时间远低于其他两种方法。