0

我必须开发一个 Web 前端来可视化数据(使用 d3.js)。数据由外部数据库提供。

要求:

  • 前端保存(至少)过去两个小时的数据(每个系统每分钟一个数据)。
  • 客户端(浏览器)连接到 Web 前端,单击相应的系统并看到一些图表。它们应该定期更新。
  • 还应该可以请求动态请求/图表。

我的做法:

  • 前端(PHP 应用程序)生成页面(包含过去两个小时的数据)并创建一个 websocket(通过推送(JSON)更新前端的数据)

  • 编写一个查询外部数据库(可能有很大的响应时间)的导入器实用程序,并将其写入本地“缓冲区”(可能是像 redis 这样的内存数据库),然后通知我的 PHP-App 推送更新。(或者让 php-app 定期检查数据库)

  • 使用 d3 可视化数据,使用来自服务器的推送消息的新数据更新图表(我的 php 应用程序)

这个想法值得尝试吗?你有什么建议、读物等吗?

4

1 回答 1

1

这个想法听起来很合理。至少,寻找灵感的地方之一是http://square.github.com/cubism/

如果您在考虑使用 redis 的地方使用石墨或立方体,那么您将拥有一些让您非常接近“开箱即用”的东西。

大部分考虑围绕数据和可视化。我会考虑数据是否以及如何旋转。换句话说,用户是否总是看到相同的视图,或者他们是否可以“按机器”、“按地理”和“按目的”看到聚合数据。

于 2013-01-22T20:11:49.187 回答