初识数据库|数据库的特点、分类以及作用

数据库系统(DateBase System,简称DBS)是指在计算机系统中引入数据库后的系统构成,由计算机硬件,操作系统,DBMS,DB,应用程序和用户以及数据库开发和管理人员等组成。

(一)数据库的4大特点

1、整体数据结构化;

2、数据的共享度高;

3、数据的独立性高;

4、高度的数据控制能力

1.1整体数据结构化

数据库中的任何数据都不属于任何应用,数据是公共的,结构是全面的。在数据库中,数据文件的个数是有限的,固定的,但数据库系统的应用却是无限制的。

好处:整体数据的结构化可减少乃至消除不必要的数据冗余,因此节约了整体数据的存储空间,避免了数据的不一致性和不相容性(数据不符合规定的约束条件)。


1.2数据的共享度高

数据与数据的逻辑结构同时存储在数据库中,显示数据时,可同时显示数据的逻辑结构;整个组织的整体数据被综合考虑,整体数据结构化。因而,DBS的数据共享度较高。

好处:合法用户都可以方便的访问使用数据库中的数据,且不用担心出现数据的不一致性和不相容性。数据库中的数据可适应各种合法用户的合理要求以及各种应用的要求,可以方便的扩充新的应用。

1.3数据的独立性高

数据的独立性是指数据与应用程序之间的关联性。数据与数据的结构是存储在数据库中的(在外存上),由DBMS管理的。应用程序既不存储数据,也不存储数据的逻辑结构。

物理独立性:数据库中数据的世纪存储方式改变时,DBMS可以适当改变转换数据的方式,使用户面对数据的逻辑结构保持不变,从而处理数据的应用程序也保持不变。

逻辑独立性:数据库中数据的逻辑结构发生变化时,DBMS可以适当改变数据的转换方式,用户面对数据的逻辑结构保持不变。

好处:数据与程序相互独立,可以方便的编制各种应用程序,大大减轻应用程序的维护工作。

1.4 高度的数据控制能力

a,较高的安全性

b,较好的数据完整性

c,较强的并发控制能力

d,较强的数据恢复能力

(二)数据库分类

数据库分类有很多种,我们来看看常见的几种类别,比如说关系型数据库、文档数据库等。

2.1关系型数据库

关系型数据库管理系统(RDBMS)是最主流的数据库类型,它们使用关系(表)模型存储数据。表的模式由表名和固定数量的字段组成,一个记录(实体)对应表中的一行,由多个属性值组成。关系实际上就是一组结构统一的记录。

关系型数据库的表结构设计通常使用规范化技术,关系支持的基本操作包括:

  • 集合操作(并集、交集、差集);

  • 选择操作(基于指定条件选择表中记录的子集);

  • 投影操作(选择属性/字段的子集);

  • 连接操作(基于多个表的笛卡尔积以及选择和投影操作)。

关系型数据库使用 SQL 执行数据操作,包括表的管理、事务控制以及用户管理等。

经过多年的发展,许多 RDBMS 不仅仅支持关系模型,同时也提供了用户自定义类型、非原子属性(XML、JSON、数组等)、继承等扩展功能。

常见的关系型数据库包括:

  • Oracle

  • MySQL

  • Microsoft SQL Server

  • PostgreSQL

  • IBM Db2

  • Microsoft Access

  • SQLite

  • Snowflake

2.2文档数据库

文档存储(Document stores),也称为面向文档的数据库系统,主要特点在于无模式(schema-free)的数据结构。无模式意味着:

  • 集合(表)中的记录(行)不需要定义统一的结构,每个记录可以包含不同的属性(字段);

  • 每个记录中的各个字段的数据类型可以不同;

  • 一个字段可以包含多个值(数组);

  • 记录可以包含嵌套结构。

文档存储通常使用内部注解,可以在应用程序中直接进行处理。最常见的存储方式是 JSON。

常见的文档数据库包括:

  • MongoDB

  • Amazon DynamoDB

  • Databricks

  • Microsoft Azure Cosmos DB

  • Couchbase

2.3时序数据库

时序数据库(Time Series DBMS)是专门为了存储时间序列数据而进行优化的数据库管理系统。时序数据的每一条记录都包含了一个时间戳信息,来源包括物联网中的传感器、智能电表、RFID 等设备,以及股票交易系统中的交易数据。

常见的时序数据库包括:

  • InfluxDB

  • Kdb

  • Prometheus

  • Graphite

  • TimescaleDB

2.4图数据库

图数据库(Graph DBMS),也称为面向图的数据库,以图(节点和边)结构表示数据。它们支持图数据的处理,以及图中具体属性的计算,例如从一个节点到另一个节点的路径。

图数据库通常不会提供所有节点的索引,因此无法直接基于属性访问节点。

常见的图数据库包括:

  • Neo4j

  • Microsoft Azure Cosmos DB

  • Virtuoso

  • OrientDB

  • ArangoDB

  • Amazon Neptune

2.5搜索引擎

搜索引擎是专门用于搜索文本内容的一类 NoSQL 数据库。除了针对搜索应用的通用优化之外,这类系统还提供了一些功能:

  • 支持复杂搜索条件

  • 全文搜索

  • 词干提取

  • 搜索结果排名和分组

  • 支持高扩展性的分布式搜索

常见的搜索引擎包括:

  • Elasticsearch

  • Splunk

  • Solr

  • OpenSearch

  • Sphinx

2.6对象数据库

对象数据库(Object oriented DBMS),也称为面向对象的数据库,设计目标是在数据库中以面向对象编程语言相同的方式存储对象,从而避免关系型数据库中的转换和分解。另外,对象之间的关系(例如继承)也是在数据库内部进行维护。

对象数据库通常使用类似 SQL 的查询语言操作对象。

由于近年来许多关系型数据库引入了面向对象的功能,例如自定义数据类型和属性;同时开发工具和框架(Hibernate、JPA 等)支持对象和关系之间的转换,对象数据库的应用并不常见。

常见的对象数据库包括:

  • InterSystems IRIS

  • InterSystems Caché

  • Db4o

  • ObjectStore

  • Actian NoSQL Database

2.7RDF存储

RDF(资源描述框架)是一种描述信息的方法论,最初用于描述 IT 资源的元数据,如今应用更加广泛,通常与语义网相结合。

RDF 模型以主-谓-宾的形式将信息表示为三元组,能够存储和处理这种三元组的数据库管理系统被称为 RDF 存储或者三元存储。RDF 存储可以看着图数据库的一个子类,谓词可以解释为主语和宾语之间的联系。但是 RDF 存储提供了一些额外的访问方法,例如类似 SQL 的查询语言 SPARQL。

常见的 RDF 存储数据库包括:

  • MarkLogic

  • Apache Jena - TDB

  • Virtuoso

  • Amazon Neptune

  • GraphDB

2.8宽列存储

宽列存储(Wide column stores),也称为可扩展记录存储,以记录的方式存储数据,支持超大数量的动态字段功能。由于字段名和记录的键不固定、而且记录可以包含数十亿个字段,宽列存储可以被看作二维键值存储。

宽列存储也具有文档数据库的无模式特性,但是实现方式完全不同。

不要将宽列存储和关系型数据库中的面向列的存储混淆,后者是关系型数据库或者数据仓库中为了改进分析性能而实现的存储方式,它们将不同记录的相同列存储在一起,而不是将同一个记录的不同字段存储在一起。

常见的宽列存储数据库包括:

  • Cassandra

  • Microsoft Azure Cosmos DB

  • HBase

  • Google Cloud Bigtable

2.9多值数据库

多值数据库(Multivalue DBMS)与关系型数据库类似,也是以表的形式存储数据。但是,多值数据库可以为记录的一个属性(字段)指定多个值。这种存储类型违反了第一范式,因此它们也被称为非第一范式(NF2)系统。

某些关系型数据库扩展了多值属性(例如数组)功能,例如 PostgreSQL。

常见的多值数据库包括:

  • Adabas

  • UniData,UniVerse

  • jBASE

2.10向量数据库

向量数据库(Vector DBMS)是专门用于高效存储、索引以及查询高维向量数据的软件系统。它们使用特殊的算法和数据结构,支持相似性搜索,通常用于 AI 机器学习、数据挖掘等领域。

常见的向量数据库包括:

  • Kdb

  • Chroma

  • Pinecone

  • Milvus

(三)数据库的作用

可能很多人会问:我的数据就存放在自己电脑的excel表里不就可以了,为什么还要搞个数据库呢?

这是因为数据库比excel有更多的优势。比如数据库可以存放大量的数据,允许很多人同时使用里面的数据。下面我们来看下数据库的三个重要价值:

3.1首先,方便用户存储、访问数据

数据库可以存储大量的数据信息,方便用户进行有效的访问。数据库还可以对数据进行分类保存,并且能够提供快速的查询。例如:我们平时使用谷歌搜索内容时,谷歌也是基于数据库和数据分类技术来达到快速搜索的目的。

图片

3.2帮助我们安全的保存数据

数据库可以满足应用的共享和安全方面的要求,把数据放在数据库中在很多情况下也是出于安全的考虑。例如:如果一个公司把员工所有资料都放在电脑上,资料的保密性就不是很好了。如果把员工的资料存到数据库中,就可以设置一些权限,从而保证数据的安全性。

3.3利用数据库可以进行数据分析,提升数据价值

例如:超市中把物品销售信息保存在数据库中,每个月销售情况的排名决定了下半月的进货数量。数据库查询的结果实际上产生了新的数据信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/470201.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

连锁门店收银系统和普通的门店收银系统有什么不同

连锁门店收银系统和普通门店收银系统在功能和应用上可能会有一些不同之处: 多店管理功能: 连锁门店收银系统通常具备多店管理功能,可以连接和管理多家门店的数据,实现统一的数据分析和管理。而普通门店收银系统可能只适用于单一门…

Docker-安装

Docker ⛅Docker-安装🌠各平台支持情况🌠Server 版本安装☃️Ubuntu☃️Centos 🌠Docker 镜像源修改🌠Docker 目录修改 ⛅Docker-安装 🌠各平台支持情况 🌠Server 版本安装 ☃️Ubuntu 🍂安装…

计算机二级(Python)真题讲解每日一题:《方菱形》

描述‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬ 请写代码替换横线&#xff0…

苹果意将Gemini引入iPhone;英伟达发布新AI GPU;Grok正式开源

苹果正在谈判将 Gemini 引入 iPhone Mark Gurman 报道,苹果正在谈判将 Google 的生成式 AI 大模型 Gemini 引入 iPhone。 知情人士透露,两家公司正在积极谈判,让苹果获得 Gemini 授权,为今年 iPhone 软件的一些新功能提供动力。苹…

【CSS】overflow中scroll和hidden的区别是什么?

overflow: scroll; 和 overflow: hidden; 是CSS中用于处理元素内容溢出其容器时的两种不同属性值。它们的主要区别在于当内容超出指定容器的尺寸时,它们如何显示或隐藏内容。 如果你有一个包含大量文本或图片的元素,并且希望用户能够滚动查看所有内容&am…

OLLVM环境配置

虚拟机配置: 4g 40g 增加源 deb [archamd64] http://archive.ubuntu.com/ubuntu focal main universe安装cmake sudo apt-get install cmake -y安装gcc8 sudo apt-get install gcc-8 g-8 -y切换为默认版本 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/…

服务器硬件基础知识和云服务器的选购技巧

概述 服务器硬件基础知识涵盖了构成服务器的关键硬件组件和技术,这些组件和技术对于服务器的性能、稳定性和可用性起着至关重要的作用。其中包括中央处理器(CPU)作为服务器的计算引擎,内存(RAM)用于数据临…

MySQL 搭建双主复制服务 并 通过 HAProxy 负载均衡

一、MySQL 搭建双主复制高可用服务 在数据库管理中,数据的备份和同步是至关重要的环节,而双主复制(Dual Master Replication)作为一种高可用性和数据同步的解决方案,通过让两个数据库实例同时充当主服务器和从服务器&…

Laravel框架项目首页内容修改

#Laravel# 安装Laravel框架成功后运行项目&#xff0c;看到下面这个图就说明安装框架成功了 需要根据自己的需求修改页面时&#xff0c;先找到首页的文件 首页对应的页面文件为项目根目录下的resources/views/welcome.blade.php文件 <!DOCTYPE html> <html lang&quo…

Spark-Scala语言实战(3)

在之前的文章中&#xff0c;我们学习了如何在来如何在IDEA离线和在线安装Scala&#xff0c;想了解的朋友可以查看这篇文章。同时&#xff0c;希望我的文章能帮助到你&#xff0c;如果觉得我的文章写的不错&#xff0c;请留下你宝贵的点赞&#xff0c;谢谢。 Spark-Scala语言实…

Flutter与Xamarin跨平台APP开发框架的区别

嘿&#xff0c;各位亲爱的朋友们&#xff01;大家好&#xff0c;我是咕噜铁蛋&#xff01;今天我们要探讨的话题是&#xff1a;Flutter与Xamarin这两款热门的跨平台APP开发框架。我深知选择合适的开发工具对于开发者来说有多么重要。那么&#xff0c;当我们需要开发跨平台应用时…

PPT好看配色

放几个链接&#xff01;画图时候可以参考&#xff01;转自知乎 Color Hunt ColorDrop 中国色 Flat UI Colors Coolors

Trent-FPGA硬件设计课程

本课程涵盖FPGA硬件设计的基础概念和实践应用。学生将学习Verilog语言编程、数字电路设计原理、FPGA架构和开发工具的使用。通过项目实践&#xff0c;掌握FPGA设计流程和调试技巧&#xff0c;为硬件加速和嵌入式系统开发打下坚实基础。 课程大小&#xff1a;4.3G 课程下载&am…

开源工具专题-01 Superset的CICD流程构建

开源工具专题 注&#xff1a; 本教程由羞涩梦整理同步发布&#xff0c;本人技术分享站点&#xff1a;blog.hukanfa.com 转发本文请备注原文链接&#xff0c;本文内容整理日期&#xff1a;2024-01-28 csdn 博客名称&#xff1a;五维空间-影子&#xff0c;欢迎关注 说明 此搭…

java算法题每日多道

274. H 指数 题目 给你一个整数数组 citations &#xff0c;其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。 根据维基百科上 h 指数的定义&#xff1a;h 代表“高引用次数” &#xff0c;一名科研人员的 h 指数 是指他&#xff08;…

windows11右键老是要点显示更多选项解决方案

windows11右键老是要点显示更多选项解决方案 右键老出现这个提示&#xff0c;每次得点两次很不方便 网上搜了好几个都没解决呢 改回windows10这个方式 解决方案如下 第一步下载WinAero Tweaker https://download.csdn.net/download/weixin_39934453/88996692 第二步双击安…

基于SpringCloud的菜谱美食交流系统Eureka

本技术是java平台的开源应用框架&#xff0c;其目的是简化Sping的初始搭建和开发过程。默认配置了很多框架的使用方式&#xff0c;自动加载Jar包&#xff0c;为了让用户尽可能快的跑起来spring应用程序。 本选题致力于开发一个菜谱交流系统&#xff0c;旨在帮助越来越多的人可以…

【Node.js从基础到高级运用】十五、单元测试与集成测试

引言 在Node.js开发过程中&#xff0c;测试是确保代码质量和功能正确性的关键步骤。单元测试和集成测试是最常见的测试类型。下面我们将使用Jest框架来进行测试。 单元测试 单元测试是指对软件中的最小可测试单元进行检查和验证。在Node.js中&#xff0c;这通常指的是函数或者…

【PINet车道线检测】代码复现过程

《Key Points Estimation and Point Instance Segmentation Approach for Lane Detection》 论文&#xff1a;https://arxiv.org/abs/2002.06604 代码&#xff1a;GitHub - koyeongmin/PINet 论文解读&#xff1a;http://t.csdnimg.cn/AOV91 这是篇关于自动驾驶中车道检测技…

Java后端八股------设计模式

Coffee可以设计成接口。 b
最新文章