我正在建立一个网站,我想通过共同兴趣匹配人。我这样做,通过计算每个用户之间的权重,并确定谁是最好的比赛 - 那些谁拥有高权重:存储500,000个用户的权重对的最佳方法是什么?
例子:
user 1 with user 2 = weight of 1
user 1 with user 3 = weight of 10
user 1 with user 4 = weight of 20
我想把权重的DB。问题是如果我有500,000个用户,那么它就是500,000 x 500,000个可能的组合,或者125,000,000,000个条目 - 在mysql数据库中。在许多表格中插入如此多的数据是不现实的。
我的问题是:有没有办法处理使用另一种类型的数据库权重配对?我已经阅读了关于矢量和东西的内容,但对这个问题不够了解。
我已签文件有关:
- NoSQL数据库:MongoDB的
- 对象数据库(db4o的,Versant公司)
- 图形数据库:Neo4j的,索恩斯...
- 偏出立柱:Hadoop的,HBASE
- Document Store:CouchDB
- Key Value Store:Redis,Voldemort
- 网格数据库:Gigaspaces ..
- XML数据库。
但是,我没有看到一个解决方案。有没有人遇到过这个问题,可以给我一个提示?
存储绝对权重是不是很容易,并且使用SQL查询和/或脚本来找到最近的相对权重? – 2011-03-07 06:20:52
这是一个有趣的问题。我会考虑它... – 2011-03-07 06:47:22
我不认为你会找到一个看NoSQL的东西的答案 – 2011-03-07 06:48:03