我们是如何用MongoDB的
MongoDB是一个高可用、分布式的文档数据库,用于大容量数据存储。文档存储一般用类似json的格式存储,存储的内容是文档型的。
通常情况下,我们用来存储大数据或者json格式的数据。
用户写数据的请求,核心数据会被写入数据库,json格式的非核心数据,可能会写入MongoDB。
流程图如下:
此外,在数据库的表中,保存了MongoDB相关文档的id。
用户读数据的请求,会先读数据库中的数据,然后通过文档的id,读取MongoDB中的数据。
流程图如下:
这样可以保证核心属性不会丢失,同时存储用户传入的较大的数据,两全其美。
Redis和MongoDB在我们实际工作中的用途不一样,导致了它们双写数据一致性问题的解决方案是不一样的。
接下来我们一起看看,如何保证MongoDB和数据库的双写的数据一致性?
如何保证双写一致性?
目前双写MongoDB和数据库的数据,用的最多的就是下面这两种方案。