SQL Server中地理编码表的架构设计

时间:2014-06-21 09:08:16

标签: sql-server hash

我想在SQL Server中缓存地址列表及其坐标(lat + long)。通常我通过调用Web服务来获取坐标,并且为了避免往返于该WS,我希望将所有这些WS响应存储在本地SQL Server数据库中。

我想知道如何在我的本地SQL Server数据库中最佳地存储WS响应,因为我可能有一个500k地址的列表?我正在考虑以下结构:

AddressHash BIGINT -- PK, clustered index, 
--obtained by applying a hashing algorith (SHA-1?) of
--Street|StreetNumber|Zip|City|County|Country
Lat DECIMAL 
Long DECIMAL 

1 /你怎么看?

2 /您是否建议使用更好(=更快)的散列算法?

在这种情况下,

3 / BIGINT是最佳数据类型吗?

4 /您是否有其他最佳方式将这些数据存储在SQL Server中?

感谢您的意见。

2 个答案:

答案 0 :(得分:0)

如果只有用于存储地理数据的专用数据类型......哦等等,有

http://msdn.microsoft.com/en-us/library/cc280766.aspx

答案 1 :(得分:0)

关于bigint问题,请使用hashbytes函数返回的任何数据类型。