gpt4 book ai didi

database - 在数据库中聚类纬度/经度

转载 作者:太空狗 更新时间:2023-10-30 01:42:38 30 4
gpt4 key购买 nike

我想看看是否有人知道如何使用数据库对一些纬度/经度结果进行聚类,以减少通过网络发送到应用程序的结果数量。

有很多关于如何集群的资源,无论是在客户端还是在服务器(应用程序)端......但不是在数据库端:(

This is a similar question , 一位 S.O. 同事问道。成员。解决方案基于服务器端(即隐藏 C# 代码)。

有没有人有解决这个问题的运气或经验,但在数据库中?是否有任何数据库大师正在接受艰巨而性感的数据库挑战?

请帮忙:)

编辑 1:澄清 - 通过聚类,我希望将 x 个点分组为一个区域的单个点。因此,如果我说将所有内容都集中在一个 1 英里/1 公里的正方形中,那么该“正方形”中的所有结果都会被 GROUP'D 成一个结果(比如……正方形的中间)。

编辑 2:我正在使用 MS Sql 2008,但如果其他数据库中还有其他解决方案,我愿意听取意见。

最佳答案

我可能会使用 k-means clustering 的修改*版本使用笛卡尔(例如 WGS-84 ECF)坐标作为您的点。它易于实现并快速收敛,并适应您的数据,无论它是什么样子。此外,您可以选择 k 来满足您的带宽要求,并且每个集群将具有相同数量的关联点 (mod k)。

我会制作一个聚类质心表,并在原始数据表中添加一个字段以指示它也属于哪个聚类。如果您的数据完全是动态的,您显然希望定期更新集群。我不知道您是否可以使用存储过程和触发器来做到这一点,但也许吧。

*“修改”将调整计算质心向量的长度,使它们位于地球表面。否则你最终会得到一堆负高度的点(当转换回 LLH 时)。

关于database - 在数据库中聚类纬度/经度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/330056/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com