小编rom*_*man的帖子

SQL Server - 使用空间数据

我将 SQL Server 2008 R2 用于实时位置感知服务。该服务主要从用户接收位置数据(纬度/经度)并返回用户周围的位置。

每个用户每秒发送一次数据。对于报告的每个位置,都有一个查询来检查该用户周围的其他用户并返回有关他们的数据。

我使用 Lat/Lon 作为浮点字段并运行标量函数来查找最近的用户。

我想这种方法不是最好的。我知道 SQL Server 中有空间数据结构,但不知道它们是否好。我应该使用它们吗?如果是这样,最好的方法是什么?

我应该采取什么方法来使此操作尽可能快速和可扩展?

也许 NoSQL 更适合空间数据?

PS - 我说的是在任何给定时间都有成千上万的用户。

sql-server-2008 sql-server sql-server-2008-r2 spatial

6
推荐指数
1
解决办法
208
查看次数

最适合实时大容量处理 API 的数据库架构

我有一个服务应该支持许多用户之间的实时交互(数千个实时)。我在 IIS 7.5 上使用 .NET 4 和 MSSQL 2008。

数据库只包含几个没有高使用率或数据的表 - 但是一个表增长非常快(每次使用都会每秒更新一条新记录)。

在我的服务器负载测试中,它在一小时左右的时间内增长到超过 400,000 条记录 - 我的性能在大约 2 小时内从 200 毫秒 RTT 下降到 800 毫秒 RTT。

我应该如何建立我的数据库来支持这个?也许问题出在另一个地方?

现在它适用于一个数据库中的所有表,但我想也许我应该将“重”表移动到一个新的数据库以提高性能。它应该工作吗?这是明智之举吗?

我已经考虑将该表移动到 NoSQL - 会有所帮助吗?

欢迎任何想法!

performance sql-server

4
推荐指数
1
解决办法
1398
查看次数