Entity Framework 远程 SQL 服务器

Entity Framework Remote SQL Server

我有 2 台机器,一台有一个 SQL 服务器,里面有所有数据,另一台有客户端仪表板。

两台机器实际上不在同一位置,因此 Entity Framework 查询是通过 Internet 完成的。

客户端可以登录“客户端仪表板”并下载大数据(比如 1 次查询 500MB)。

我的问题是,当客户端下载 500 MB 的行时(使用 Entity Framework C# 处理此命令),这两台机器中的哪台机器需要具有更好的 CPU/Memory 功率?带仪表盘的机器还是带数据库的机器?

我假设,带有 SQL 服务器的机器需要比只有客户端仪表板的机器更高 CPU/RAM?还是我错了?

which machine out of these 2 will need to have better CPU/Memory

假设发送的查询很简单,不需要在 SQL 服务器上进行连接或排序,SQL 服务器不会负担过重。

下载 500MB 数据集,将其加载到托管实体中并使用它进行操作的人将需要几 GB 的内存,并且会使用大量 CPU。

SQL 服务器将从磁盘获取数据并通过网络发送,而不需要大量内存或 CPU.

然而,这

The client can log in the "Client Dashboard" and download large size data (say 500MB in 1 query).

通常被认为是糟糕的设计,因为除了需要大量内存和 CPU 之外,在客户端上下载和操作大型数据集通常会非常慢。您通常会将“客户端仪表板”设计为一次仅检索数据的小子集或集合。

SQL 如果 RAM 足够,服务器会将您的所有数据保存在内存中,并且旨在为大型复杂数据集提供非常高效的查询处理。而且它在本地数据上运行,而不必通过网络获取数据。

在这种情况下,SQL 服务器可能需要更大。