什么是数据库?数据库有哪些基本分类和主要特点?-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

数据库是以某种有组织的方式存储的数据集合。本文从数据库的基本概念出发详细解读了数据库的主要类别和基本特点并就大模型时代备受瞩目的数据库类型——向量数据库进行了深度剖析供大家在了解数据库领域的基本概念时起到一点参考作用。

1. 什么是数据库

先来看看维基百科对于数据库的定义以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。一个数据库由多个表空间构成。

百度百科对数据库的定义如下数据库是“按照数据结构来组织、存储和管理数据的仓库”是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。

数据库Database英文简称 DB是一个以某种有组织的方式存储的数据集合。可以理解为是一个存放计算机数据的仓库这个仓库按照一定的数据结构即数据的组织形式或数据之间的联系来对数据进行组织和存储我们可以通过数据库提供的多种方法来管理其中的数据。

在这里插入图片描述

2. 数据库的分类

根据组织存储数据时所采用的数据模型数据可分为关系型数据库Relational Database Management System简称RDBMS和非关系型数据库NoSQL。

关系型数据库 以表格形式存储数据SQL为操作语言如MySQL、Oracle、SQL Server等。特点是可以对数据进行高度组织、分类、筛选并能够等值查找。适用于数据维护强一致性交易量大结构变化少的应用场景。

非关系型数据库NoSQL不使用表格进行数据存储而是使用文档、列族、键值等不同的数据模型存储数据。优点是能够处理海量数据高并发读写扩展性强但不支持 JOIN 类操作不适用于需要多表操作且事务要求较高的应用场景。

在这里插入图片描述

Tips非关系型数据库的诞生历程

· 非关系型数据库也称为 NoSQL 数据库NoSQL 的本意是“Not Only SQL”指的是非关系型数据库而不是“No SQL”没有SQL的意思。NoSQL 数据库的产生之初并不是要彻底地否定和终结关系型数据库而是作为传统关系型数据库的一个有效补充。

· 随着互联网 Web2.0、Web3.0 网站的兴起传统的关系型数据库在应对规模日益扩大的海量数据超大规模和高并发的动态网站时遇到了很多问题与挑战例如传统关系型数据库的 I/O 瓶颈、性能瓶颈等都难以有效突破。

· 于是出现了大批针对特定场景以高性能、高并发以及使用便利为目的的功能特异化的数据库产品非关系型数据库就是在这样的情景中诞生并得到非常迅速发展的。在这些特定的场景下NoSQL 数据库可以发挥出难以想象的高效率和高性能。NoSQL 是非关系型数据库的广义定义它打破了长久以来关系型数据库与 ACID 理论大一统的局面。

· NoSQL 数据库的数据存储不需要固定的表结构通常也不存在连接操作其在大数据存取上具备关系型数据库无法比拟的性能优势满足了企业应用需要将数据存储在横向且伸缩性上更强的功能需求。

目前NoSQL数据库仍然没有一个统一的标准现在有四种大的分类键值数据库、列存储数据库、文档数据库、图数据库。

· 键值(Key-Value)存储数据库

键值key-value数据库类似于传统语言中使用的哈希表可以通过 key 来添加、查询或者删除数据因为是使用 key 主键访问所以会获得很高的性能及扩展性。

键值数据库主要使用一个哈希表表中有一个特定的键和一个指针指向特定的数据。对于 IT 系统来说key/value 模型的优势在于简单、易部署、高并发。

· 列存储数据库

这部分数据库通常是用来应对分布式存储的海量数据。键仍然存在但是它们的特点是指向了多个列。这些列是由列家族来安排的。如Cassandra HBase Riak.

· 文档型数据库

文档型数据库的灵感是来自于Lotus Notes办公软件的而且它同第一种键值存储相类似。该类型的数据模型是版本化的文档半结构化的文档以特定的格式存储比如JSON。文档型数据库可以看作是键值数据库的升级版允许之间嵌套键值在处理网页等复杂数据时文档型数据库比传统键值数据库的查询效率更高。如CouchDB MongoDb.

· 图形(Graph)数据库

图数据库顾名思义就是一种存储图形关系的数据库而图模型是图数据库中的重要概念。图模型由两个要素组成节点和边每个节点代表一个实体人、地点、事物等每条边代表两个节点之间的连接这种通用结构可以对各种场景进行建模如社交网络以及由关系定义的任何其他事物。特点是可以处理高密度连接和稀疏数据支持快速的复杂查询。GraphDB和Neo4j是常用的图形数据库。

此外随着大模型技术的爆发式增长作为一种新型数据库“大模型的海马体”——向量数据库Vector Database成为当前最为灼热的技术焦点。

向量数据库

向量数据库是一种以向量嵌入方式存储和管理向量数据的数据库。在向量数据库中每个向量都有一个唯一的标识符并且可以存储在一个连续的向量空间中。

图像、文本和音视频这种非结构化数据都可以通过某种变换或者嵌入学习转化为向量数据存储到向量数据库中从而实现对图像、文本和音视频的相似性搜索和检索。这意味着可以使用向量数据库根据语义或上下文含义查找最相似或相关的数据而不是使用基于精确匹配或预定义标准查询数据库的传统方法。

向量数据库在处理向量数据方面具有以下特点

· 高效存储和查询向量数据库采用特定的存储结构和索引算法可以高效地存储和查询向量数据减少数据冗余提高查询效率。

· 多维查询向量数据库支持多维查询可以根据向量的多个属性进行查询例如相似度查询、范围查询等。

· 向量相似度计算向量数据库可以对向量进行相似度计算用于寻找最相似的向量数据常用于推荐系统、图像搜索等应用。

· 高并发处理向量数据库具有较强的并发处理能力可以同时处理大量的向量数据查询请求。

· 支持向量索引向量数据库支持各种向量索引技术例如倒排索引、KD-Tree、LSH等用于加速向量数据的查询。

· 分布式存储一些向量数据库支持分布式存储和计算可以横向扩展适用于处理大规模的向量数据。

向量数据库可以实现高效存储与检索利用索引技术和向量检索算法实现高维大数据下的快速响应。向量数据库也是非关系型数据库的一种除了要管理向量数据外还支持对传统结构化数据的管理。实际使用时有很多场景会同时对向量字段和结构化字段进行过滤检索这对向量数据库来说也是一种挑战。

3. 数据库的特点

· 实现数据共享

数据共享包含所有用户可同时存取数据库中的数据也包括用户可以用各种方式通过接口使用数据库并提供数据共享。

· 减少数据的冗余度

同文件系统相比由于数据库实现了数据共享从而避免了用户各自建立应用文件。减少了大量重复数据减少了数据冗余维护了数据的一致性。

· 数据的独立性

数据的独立性包括逻辑独立性数据库中数据库的逻辑结构和应用程序相互独立和物理独立性数据物理结构的变化不影响数据的逻辑结构。

· 数据实现集中控制

文件管理方式中数据处于一种分散的状态不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理并通过数据模型表示各种数据的组织以及数据间的联系。

· 数据一致性和可维护性以确保数据的安全性和可靠性

· 安全性控制以防止数据丢失、错误更新和越权使用

· 完整性控制保证数据的正确性、有效性和相容性

· 并发控制使在同一时间周期内允许对数据实现多路存取又能防止用户之间的不正常交互作用。

· 故障恢复:由数据库管理系统提供一套方法可及时发现故障和修复故障从而防止数据被破坏。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: 数据库

“什么是数据库?数据库有哪些基本分类和主要特点?-CSDN博客” 的相关文章