全文搜索和空间查询

时间:2014-03-24 04:07:00

标签: geospatial geo spatial-query

我们有一些地理数据,您可以将它们视为地点或地理名称。

我们有近六十万条记录,每条记录都有以下字段:

id name lng lat  ....

现在我们想根据这些字段进行搜索并支持模糊搜索,但是使用like数据库并不是一个好主意。

因此我们尝试Lucene进行全文搜索,这适用于name字段查询,但我不知道何时查询并混合name字段和{{ 1}} lng个字段在一起。

例如,用户可能想要查询包含关键字的地点" xxx" lat:30,lng 40,距离100米左右。

这是一种地理查询,我认为最好通过postgis或其他方式查询空间数据库,但是`name字段怎么样?

2 个答案:

答案 0 :(得分:2)

HGUser, PostgreSQL SQL Server (2008年起 - 2012年最佳)都是满足您要求的绝佳选择。两者都支持全文搜索和空间查询索引(作为单个或组合的WHERE子句)。

确保从纬度/经度坐标构建地理/几何对象,以便从空间索引中受益。

对于PostgreSQL

您可以在

的用户手册中阅读有关地理/几何的信息

http://www.postgresql.org/files/documentation/pdf/9.3/postgresql-9.3-A4.pdf(第8.8节)

全文将在同一文件的第12章中找到。

对于SQL Server

您可以在

阅读有关地理/几何的信息

http://technet.microsoft.com/en-us/library/ff848797.aspx

的全文索引

http://technet.microsoft.com/en-us/library/ms142571.aspx

答案 1 :(得分:0)

侨, 你有很多选择,而不会触及完整的空间DBMS。 我实际上会调查:

此致 西蒙。