免责声明-这个问题不是工作,也不是学术相关的,它只是为了了解有关大数据的想法和方法。
建议我有一个关于世界各地航班的10倍记录的数据库。每分钟更新10%到20% --更新可能是起飞/到达的变化,也可能是航班的任何其他相关参数。
来自DB的所有数据都被更新到另一台机器中的缓存中(让我们称之为“缓存机”)。
数千个客户端从缓存机请求数据。
我的问题如下:
1.如果数据库每分钟都有更新的数据,那么如何避免缓存机器中陈旧的数据?
2.客户端调用缓存机的最有效方式是什么?缓存机器是否包含大量的数据,多个客户端将同时访问该机器,这是否需要异步方法?
3.我的数据库应该使用RDBMS吗?如果数据保存在这样的DB中,来自不同表的查询可能需要很长时间。
在试图亲自回答这些问题时,我要说:
1.
答:我可以每隔一分钟清除缓存机,然后从数据库中检索所有数据。我的数据将是新鲜的,但这样的查询可能会非常缓慢。
或
我可以定期检查缓存中每一项的状态,但是它会阻塞我的DB。
2.我可以有一个队列基请求,这样客户端就不会互相干扰。
3.对于这么多的数据,RDBMS并不是一个很好的选择。键/值DB可以用于这类数据。
我不知道该如何回答这些问题,并希望得到任何好的观点或如何处理这种情况的解释。
发布于 2016-04-13 10:11:28
你的问题陈述很短。我试图用一些简单化的假设来澄清(如果我的假设是错的,请纠正我的假设,然后我就可以相应地修改答案):
很可能这还不够,但是如果您添加更多的细节,我可以相应地修改。
https://stackoverflow.com/questions/36520791
复制相似问题