NoSQL的全称为Not Only SQL,泛指非关系型数据库,它并非要完全替代传统关系型数据库
NoSQL的全称为Not Only SQL泛指非关系型数据库它并非要完全替代传统关系型数据库而是作为关系型数据库的有益补充适合处理关系型数据库难以支撑的海量数据、高并发、非结构化数据存储场景。二、NoSQL数据库的核心组成1. 哈希函数Hash Function它是NoSQL底层的核心数学算法具备以下特性输入输出特性可以接收任意长度的输入数据经过运算后输出固定长度的散列值该特性也被称为压缩性。抗碰撞性理论上由于输入是无限空间、输出是有限空间必然存在不同输入得到相同输出的碰撞情况但实际中找到两个有意义的不同输入得到相同哈希值的难度极高当输出位数足够长如256比特、512比特时碰撞概率可以忽略不计。单向性可以通过输入快速计算得到哈希值但几乎无法通过哈希值反向推导原始输入内容该特性保障了数据索引的安全性和高效性。哈希函数是键值存储的基础它将键映射到对应的存储地址以此支撑键值数据的快速查询。2. 键值对Key/Value Pair存储模型它是NoSQL最基础的数据存储模型存储逻辑为数据以“键Key-值Value”二元组的形式存储键是数据的唯一索引值可以是任意类型的数据包括字符串、数值、列表、JSON、二进制对象等。仅支持通过键查询对应的值不支持基于值的条件查询核心操作包括按键查询get、插入/更新键值对put、删除键值对delete。该模型可以很方便地将数据拆分到不同服务器上支持水平扩展能够应对高并发、海量数据的存储访问需求。总结NoSQL作为非关系型数据库的统称以哈希函数为底层算法基础以键值对为核心基础存储模型具备灵活的数据格式、高可扩展性、高性能读写、低成本等优势能够高效处理非结构化、半结构化数据广泛应用于互联网、电商、医疗等需要支撑高并发、海量数据的场景和传统关系型数据库形成互补共同满足不同的业务数据存储需求。