内存数据库出现的原因有,
1. 用户对性能要求的高标准:一般来说越快的应用用户越喜欢
2. 数据实时计算:快速处理输入数据,从而提高快速反应能力,比如流计算,如果所有数据都在内存,那么流计算能提供的功能会更加丰富;
3. 企业内部特定场景对性能的高要求:比如OLAP系统(比如出报表)里面对某些元数据的频繁访问,这时候元数据放入内存肯定能大大加快整个程序的执行
当然,内存价格的下降也是的内存数据库成为现实;
内存数据库的定位:传统数据库的补充,数据越来越多,内存肯定是搞不定的,那么如何合理的分配内存数据库和磁盘数据库值得考量,这方面会有越来越多的模式出现;
内存能数据库的劣势:
1. 数据安全:进程crash则数据丢失,对于数据库这基本不可忍受,可以通过log形式保存数据,一旦出现问题再恢复;或者做跨机房多拷贝,那么可以不写log,后台慢慢刷存储也是可以的;
2. 风暴效应:一旦进程crash,则应用性能大幅下降,此时极高的压力可能再次将进程压垮,这个通过上面说的多份拷贝也能解决;
多份拷贝的难点是如何保证一致性,目前已有不少这方面的理论和实践。
总体来看,内存数据库更像一个有益的补充,而很难独撑大梁。
金城在线专注网站、软件、APP、微信公众平台、小程序、抖音、头条等开发推广,如果您有这方面的需求或者不同的观点,欢迎联系交流。
读完这篇文章后,您心情如何?