MongoDB、ES、Redis、MySQL

MongoDB:是一个高效的非关系型数据库(不支持表关系:只能操作单表),文件存储格式为 BSON(一种 JSON 的扩展)

    MYSQL : 用于存储安全性要求比较高的数据 REDIS : 存储数据格式简单 , 并且查询非常多的数据(用户缓存) MONGDB : 用户存储海量数据, 并且数据的安全性要求不高

mysql与elasticsearch概念对比:

MySQL Elasticsearch 说明 Table Index 索引(index),就是文档的集合,类似数据库的表(table) Row Document 文档(Document),就是一条条的数据,类似数据库中的行(Row),文档都是JSON格式 Column Field 字段(Field),就是JSON文档中的字段,类似数据库中的列(Column) Schema Mapping Mapping(映射)是索引中文档的约束,例如字段类型约束。类似数据库的表结构(Schema) SQL DSL DSL是elasticsearch提供的JSON风格的请求语句,用来操作elasticsearch,实现CRUD

两者各自有自己的擅长支出:

    Mysql:擅长事务类型操作,可以确保数据的安全和一致性 Elasticsearch:擅长海量数据的搜索、分析、计算

因此在企业中,往往是两者结合使用:

    对安全性要求较高的写操作,使用mysql实现 对查询性能要求较高的搜索需求,使用elasticsearch实现 两者再基于某种方式,实现数据的同步,保证一致性
经验分享 程序员 微信小程序 职场和发展