基本图表应用程序:模型中的会话存储,客户端DB或JSON对象?

时间:2016-01-10 02:13:59

标签: angularjs json performance internet-explorer session-storage

我希望验证我的方法,我也有一些问题。

我正在开发一个显示图表的AngularJS应用程序:Bar,Line等。数据位于SQL数据库中。数据被分隔为指标,每个指标将显示在图表中。在DB中,每个度量标准都有自己的表。表平均5,000 - 20,000行。

因为图表应该是动态的,即更改度量标准的时间范围,更改度量标准的位置,向下钻取位置等,我想在加载时拉出整个表格数据,然后在内部查询和过滤Angular app更新聊天。项目客户端在启动时加载时间较慢,但每次在图表上进行更改时都不希望加载缓慢。 (政府项目,因此互联网连接速度很慢,现有产品在每次图表更改时查询数据库。另外因为它是政府项目,IE是主浏览器,必须得到支持)

这是我的第一个拉大型JSON对象的项目,所以我试图尽可能地整理这些信息。

看来我有三个主要选择:

  • 获取JSON对象,让它放在模型中。
  • 使用某种形式的会话存储
  • 使用本地存储选项

数据不需要持久存在,所以我认为不需要本地存储,而且我厌倦了提取几个值为JSON的表并让它放在应用程序的模型中。所以会话存储似乎是我应该采取的路线。我遇到过TaffyDB,这听起来像是可行的。

问:从描述的项目来看,客户端会话迷你数据库解决方案听起来像是正确的方法吗?

我遇到什么类型的存储限制?我看到一个数字漂浮在10 MB(IE)左右。

关于会话存储或我希望我知道的客户端数据库实现,我不知道什么?

1 个答案:

答案 0 :(得分:0)

在完成项目设计并更多地完善需求之后,我使用的解决方案是创建一个生成动态SQL查询的应用程序,并仅将结果集返回给Angular应用程序。通过仅返回结果集,空间要求大大降低。客户端持久性由ngStorage管理,它指导本地和会话存储。它仍然符合浏览器内存限制,但通过仅存储结果集,可以减轻问题。