【nosql】有哪些非关系型数据库?

非关系型数据库Nosql

分类

  1. 键值存储 (Key-Value Store):

    • 代表: Redis, DynamoDB, RocksDB, etcd
    • 核心优势: 极致简单、超高读写性能(尤其内存型)、高吞吐。
    • 场景: 缓存、会话存储、配置、计数器、分布式协调、简单消息队列。
  2. 列式 / 宽列存储 (Wide-Column / Column-Family Store):

    • 代表: HBase, Cassandra, ScyllaDB
    • 核心优势: 极高的可扩展性、适合海量稀疏数据、按列族高效读写(尤其写吞吐)、良好的分区能力。
    • 场景: 大规模时序数据(IoT, 监控)、消息/事件流存储、用户画像属性存储、内容元数据。
  3. 文档数据库 (Document Database):

    • 代表: MongoDB, Couchbase, CouchDB
    • 核心优势: 灵活的文档模型(Schema-flexible)、支持嵌套数据结构、开发自然(映射对象)、横向扩展。
    • 场景: 内容管理(CMS)、产品目录、用户配置/档案、评论/博客、实时分析(部分)、复杂对象存储。
  4. 搜索引擎 (Search Engine):

    • 代表: Elasticsearch, Solr, OpenSearch
    • 核心优势: 强大的全文检索、复杂相关性排序、模糊查询、聚合分析能力、分布式搜索。
    • 场景: 应用/产品内搜索、日志分析(ELK)、应用性能监控(APM)、安全信息与事件管理(SIEM)、商业智能探索。
  5. 图数据库 (Graph Database): (补充项)

    • 代表: Neo4j, Amazon Neptune, JanusGraph
    • 核心优势: 高效存储和处理实体间复杂关系、擅长深度关联查询(路径、社区、模式匹配)。
    • 场景: 社交网络、欺诈检测、知识图谱、推荐引擎、网络/IT基础设施管理。

📌 重要提示

  • 界限模糊: 很多现代数据库是多模型 的。例如:
    • Redis不仅仅是简单的字符串KV,它支持多种数据结构。
    • DynamoDB核心是KV,但文档是其主要支持的数据格式。
    • ArangoDB自称是原生多模型数据库(支持文档、图、KV)。
    • Elasticsearch底层是文档存储,但功能聚焦在搜索。
    • Cassandra常被归为宽列存储,但其数据模型和查询方式与HBase有差异。
  • 选择依据: 最终选择哪个数据库(甚至组合使用多个)取决于应用的具体需求(数据模型、访问模式、一致性要求、规模、延迟、成本等),而不是简单地套用分类。
  • 时序数据库 (Time-Series Database - TSDB): 这是一个越来越重要的细分领域(如 InfluxDB, TimescaleDB, Prometheus)。虽然其底层存储引擎可能基于KV、列式或LSM-Tree,但其高度优化的时间序列数据处理能力(时间窗口聚合、降采样、高效处理时间戳索引) 使它值得单独关注。你可以把它看作是基于特定场景优化的KV或列式数据库的一个高度特化子集。如果你的场景主要是处理带时间戳的指标或事件,时序数据库通常是更优的选择。
相关推荐
wyiyiyi5 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
天宇_任6 小时前
Mysql数据库迁移到GaussDB注意事项
数据库·mysql·gaussdb
xiep14383335109 小时前
Ubuntu 安装带证书的 etcd 集群
数据库·etcd
Java小白程序员9 小时前
Spring Framework:Java 开发的基石与 Spring 生态的起点
java·数据库·spring
老虎062710 小时前
数据库基础—SQL语句总结及在开发时
数据库·sql·oracle
爱掘金的土拨鼠11 小时前
国产化dm数据库锁表解锁
数据库
庖丁解java12 小时前
N个Utils
数据库
Mr. zhihao12 小时前
SQL LEFT JOIN 与 WHERE 条件的隐藏坑
数据库·sql
2301_7930868712 小时前
Redis 04 Reactor
数据库·redis·缓存
Sais_Z13 小时前
ClickHouse的学习与了解
数据库·clickhouse