sql - 将数据保存在内存中或使用数据库
问题描述
假设我们有一个票务系统网页,其中显示票证(票证分布在多个页面上)。此外,在同一页面中还有一个允许过滤的搜索表单。
这些票可以随时修改(删除、更新、插入)。
所以我有点困惑。内部架构应该怎么看?我想了好久,还没有找到清晰的路径。
从我的角度来看,有两种方法:
使用内存数据库之类的东西并将所有数据存储在那里。因此过滤内容和显示请求的项目非常容易。但是这个解决方案意味着在 ram 中存储大量无用的数据。喜欢关闭或解决的票。这些票应该在那里,因为它们可以被请求。
每次搜索、页面显示等都使用数据库。所以会有很多查询。每次搜索、每个页面(每个用户)都会产生一个数据库查询。这是不是有点过分了?
哪种解决方案更好?有没有更好的解决方案?我的担心是徒劳的吗?
解决方案
你说“但是这个解决方案意味着在 ram 中存储大量无用的数据。就像关闭或解决的票一样。这些票应该在那里,因为它们可以被请求。”
如果这些票应该在那里,因为它们可以被请求,那么它并不是真正无用的数据,是吗?
这听起来像是混合内存/持久数据库的一个很好的用例。将打开/显示的票证保存在内存表中。关闭时,将它们移动到持久表。
推荐阅读
- android - Mesibo 呼叫 UI 未更新
- python-3.x - 以下代码背后的逻辑是什么?
- javascript - 如何从 Code.gs 设置全局 JS 变量
- ios - 瑜伽框架给无法建立模块基础
- android - 在 android 中从 Twitter 中提取图像
- asp.net-core - 使用 PUT 更新可以添加条目但不能删除条目
- python - 如何将大型 spark 数据帧(5m 行)/csv 文件拆分为每个数据帧具有相同标题的块(优化解决方案)
- angular - 角度 9:无法读取 MatSelect.ngAfterContentInit 处未定义的属性“管道”
- javascript - 从元素 OnClick 函数调用 AJAX
- javascript - 推送到承诺内的上层范围数组