【发布时间】:2021-06-13 23:42:56
【问题描述】:
我目前正在开发一种工具,其中一个客户端 A 可以将连续数据流(只是文本)发送到服务器,而另一个客户端 B 应该能够实时查看数据流,就像从再次服务器。 当然,服务器不应该将所有可用数据发送给客户端 B,因为它可以获取大量文本,所以我目前正在考虑如何设计客户端 B 仅获取最新数据。
我的第一种方法是类似于分页,客户端 B 向服务器发送另一个属性client_lines = 10,指示他已经拥有多少行数据,然后我们可以使用where lines > client_lines 查询我们的数据库。
但是数据库可能会变得非常大,因为我们将为许多用户提供一个数据库,每个用户发送的数据可能有很多文本行。因此,使用来自不同用户的数据查询完整的数据库似乎不是一个超级有效的解决方案。
有没有更聪明的方法?也许使用像 MongoDB 这样的 NoSQL 数据库?
【问题讨论】:
标签: database database-design architecture software-design system-design