学习笔记:数据库简介
数据库是一系列可以方便的访问和修改的数据的集合。
所有数据库管理系统的主要工作都是可靠的存储数据并使其对用户可用。
目前最常见的数据库模型主要是两种,即关系型数据库和非关系型数据库。
一、按数据的组织方式
数据从组织的角度上,主要分为结构化数据和非结构化数据两类。
结构化数据是带有固定结构的数据,在组织形式上是整齐格式化的,同一数据对象的所有数据都具有完全相同的结构。比如人员信息数据,定义为“身份证号、姓名、籍贯、出生日期”这种结构后,所有人员的信息都会按照这个固定的格式来组织。结构化数据是数据库中最常见的数据,也是数据库最擅长处理的数据。
非结构化数据可以理解成结构化数据之外的一切数据,这类数据无法预先定义格式,其字段类型和数量是可变。比如qq聊天发送的数据可以是图片、文字、语音等等,非结构化数据是生活中数量最庞大的数据。
根据数据的组织方式,数据库可以分为结构化数据库和非结构化数据库。结构化数据库中通常会使用关系模型表达不同的结构化数据及其之间的关系,因此结构化数据库也被称为关系型数据库,对应的,非结构化数据库被称为非关系型数据库。
二、按存储介质
数据库存储和管理数据,一定离不开存储介质。从存储介质角度,数据库通常会为磁盘数据库和内存数据库两种,其中内存数据库被称为主存数据库。
磁盘数据库的数据都存储在磁盘上,具体在磁盘上的存储格式可以是文件系统、裸设备或云存储。磁盘数据库在数据的持久化保存上有明显优势。受限于硬件技术,磁盘数据库是当前的主流。
内存数据库的数据主要存储在内存中,因此有非常高的运算效率。内存数据库并非完全不使用磁盘,数据库的启动信息、初始数据等还是需要存储在磁盘上的,只是数据主要在内存中进行存储和运算。由于内存数据库的数据存储在内存中,数据库主机关机后数据会丢失,因此在数据库服务关闭前通常都需要把内存中的数据转储到磁盘上。
三、按数据处理场景
在业务上,传统的数据处理主要分为两类,一类是面向交易、产生数据的场景,业界称为“在线事务处理”场景,简称 OLTP;一类是面向分析、对既有数据进行分析利用的场景,业界称为“在线分析处理”场景,简称OLAP。对应的,分别面向这两种数据处理场景的数据库就是OLTP数据库和OLAP数据库。
OLTP数据库强调数据的强一致性和并发处理性能,这类数据库有强大的事务处理能力,适合处理事务密集型的应用场景,通常以每秒完成的事务数(TPS)来衡量数据库能力。OLTP数据库通常是以单机形式存在的,但在生产环境中往往需要部署高可用集群以保证数据库系统的可用性。
OLAP数据库强调基于海量数据的分析汇总能力,适合处理数据密集型的应用场景,通常需要数据库具备对海量数据进行随机查询、关联查询和分组统计查询的能力。OLAP数据库可以部署为单机形式,但更多的是以MPP集群的形式部署的。
HTAP数据库,通常是以“存算分离”的架构形式来同时满足OLTP和OLAP应用需要的,同时兼顾OLTP能力和OLAP能力。
四、按数据分布方式
据数据是如何被管理的,数据库可以分为集中式数据库和分布式数据库两类。
集中式数据库是数据被数据库实例集中管理的数据库类型,数据库实例可以看到和管理全部的数据。集中式数据库通常是以单机形式存在的,生产环境中往往部署为高可用集群。
布式数据库的数据是由不同实例以分布式的形式对全量数据进行管理的数据库,每个实例仅管理全量数据中的一部分(通常称为分片)。分布式数据库通常是以分布式集群的形式存在的。
五、数据库集群
数据库集群是由多个数据库实例组合在一起、以单一数据库形态对外提供数据服务的组合,在物理上通常由多个服务器组成,在逻辑上是一个数据库服务。集群中的单个数据库实例通常称为节点。数据库集群通常分为高可用集群和MPP集群。
高可用集群是以高可用为目标而构建的集群,根据高可用的实现机制,这类集群又可以分为主备集群和共享存储集群。主备集群中的节点有主次之分,集群中必须有一个主节点且只能有一个主节点,但可以有一到多个备节点。共享存储集群的节点可以有主次之分,也可以完全对等,由集群的具体的实现技术决定。
MPP集群是为应对基于海量数据的存储和管理需要而构建的集群,这类集群中有多个计算节点,可能有一个或一组管理节点,也可能没有管理节点。
关系型和非关系型数据库
关系型数据库模型是将复杂的数据结构用较为简单的二元关系(二维表)来表示。在该类型数据库中,对数据的操作基本上都建立在一个或多个表格上,我们可以采用结构化查询语言(SQL)对数据库进行操作。关系型数据库(RDBMS)目前主流的数据可技术。具有代表性的数据库管理系统有:Oracle、DB2、SQL Server、MySQL等。 简记:关系 = 二维表 关系型数据库都是把数据保存在硬盘上,不会随着关机而丢失数据
非关系型数据库(NoSql)Redis 键值存储数据库Mongo db 文档数据库Hbase 列存储数据库Column-oriented 列存储数据库Neo4J 图形数据库 非关系型数据库是把数据保存在内存中,电脑一旦关机数据也会丢失。 非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等.存储数据的格式可以是key,value形式、文档形式、图片形式等等
磁盘数据库和内存数据库
磁盘数据库需要频繁地访问磁盘来进行数据的操作,处理速度较慢 典型的磁盘数据库就是最常用的 Oracle,Mysql,Mongodb、postgresql等。
内存数据库数据处理速度比传统数据库的数据处理速度要快很多常用内存数据库Redis
OLTP数据库、OLAP数据库及HTAP数据库
联机分析处理OLAP,系统强调数据分析 OLAP的特点:实时性要求不高。数据量大,例如时间序列分析等,处理的数据量很大。决策支持,查询一般是动态的,也就是说允许用户随时提出查询的要求
联机事务处理OLTP也称为面向交易的处理系统,其基本特征是顾客的原始数据可以立即传送到计算中心进行处理,并在很短的时间内给出处理结果。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。 OLTP的特点:实时性要求高;数据量不是很大;交易一般是确定的,所以OLTP是对确定性的数据进行存取;并发性要求高并且严格的要求事务的完整,安全性。
相关文章:
学习笔记:数据库简介
数据库是一系列可以方便的访问和修改的数据的集合。 所有数据库管理系统的主要工作都是可靠的存储数据并使其对用户可用。 目前最常见的数据库模型主要是两种,即关系型数据库和非关系型数据库。 一、按数据的组织方式 数据从组织的角度上,主要分为结…...
day18_集合
今日内容 零、 复习昨日 一、集合框架体系 二、Collection 三、泛型 四、迭代 五、List 六、ArrayList 七、LinkedList 零、 复习昨日 晨考 一、集合框架体系 数组: 是一个容器,用来存放数据的 定长只能存储同一种数据类型的数据int[] 可以存储int值,Student[] 可以存储引用类型…...
Go面试必会基础题
文章目录 1.下面代码有什么错误?2.下面代码有什么问题?3.下面代码输出什么?4.下面这段代码输出什么? 1.下面代码有什么错误? func main() {one : 0one : 1 }参考答案及解析:变量重复声明。不能在单独的声…...
发送封包协议实现XXZ批量秒分解装备
通过发送封包,我们可以让一些反复的枯燥的行为变的简单,高效。 比如XXZ的萃取装备,我们可以一瞬间萃取大量的装备,而省去读条的过程。 我们来萃取一下看看效果 手动萃取是有读条的,那么如果很多装备的话,…...
Spring学习——Nginx
Nginx概述 Nginx介绍 Nginx是一款轻量级的web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网…...
记录 vue-cli 安装过程
1. VueCli CLI 是 Commond-Line Interface 的缩写 如果开发大型项目,肯定需要考虑代码目录结构、项目结构和部署、热加载、代码单元测试等事情,那么你必然需要使用 VueCLI,使用 VueCLI 可以快速搭建 vue 开发环境以及对应的 webpack 配置。 …...
含氢微网优化调度模型matlab
目录 1 主要内容 模型示意图 目标函数 2 部分程序 3 程序结果 4 下载链接 1 主要内容 最近咨询含氢微网优化调度模型的同学较多,本次就分享一个高质量的源码资源。该程序方法复现《Simulation of design and operation of hydrogen energy utilization syste…...
【springcloud开发教程】路由网关——zuul
官方资料:https://github.com/Netflix/zuul/ 什么是Zuul? Zuul包含了两个主要的功能:路由和过滤 路由功能将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础,而过滤器功能则负责对请求的处理过程进行干预&#…...
DF竞赛平台携手嬴彻科技与清华大学智能产业研究院,助力自动驾驶挑战赛圆满落幕!
由DataFountain竞赛平台(简称DF平台)提供办赛支持的「首届“嬴彻-清华AIR杯”自动驾驶挑战赛:决策规划算法」已圆满落幕。作为一场前沿性自动驾驶类比赛,本次大赛立足“高速道路”和“城市道路”两大真实场景,选择“半…...
234:vue+openlayers 加载本地shp数据,在map上显示图形
第234个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+openlayers中利用shapefile读取本地的shp数据,并在地图上显示图形。 直接复制下面的 vue+openlayers源代码,操作2分钟即可运行实现效果 文章目录 示例效果安装引用配置方式示例源代码(共143行)相关API参考:专栏…...
网络模型-网络体系结构(OSI、TCP/IP)
网络模型(网络体系结构) 网络模型网络的体系结构OSI模型TCP/IP模型OSI和TCP/IP模型对应关系图 常见网络协议 网络模型 网络的体系结构 1、网络采用分而治之的方法设计,将网络的功能划分为不同的模块,以分层的形式有机组合在一起…...
园区智慧导览地图软件,智慧工厂导航定位怎么解决方案的
智慧工厂导航定位怎么解决方案的地图新基建是行业的核心数字基础需求之一,行业内中已构建了较为完整的城市级地理信息系统。园区管理涉及众多方面,因此园区的智慧信息化建设至关重要,需求越来越广泛。在智慧园区中,基于园区的电子…...
Redis高可用之3种集群方案对比
Redis集群方案使用建议: Redis cluster:除非是1000个节点以上的超大规模集群,优先考虑使用Redis clustercodis:旧项目如果仍在使用codis,可继续使用,但也推荐迁移到Redis clustertwemproxy:不建…...
java 线程唤醒于阻塞的常用方法
1.分类描述 1.sleep() 休眠2.suspend() 暂停和 resume() 继续3.yield() 让步 就是我放弃本次执行,但继续排队,下一次有机会在执行。 4.wait() 和 notify() notifyAll() 注:这两个方法,属于Object类,而不属于Thread…...
面包多面包多面包多面包多面包多面包多
1.背景 1.摘要 本文是针对智慧政务中的文本数据挖掘应用的研究。通过建立基于三层网络结构的fastText文本分类模型,聚类量化模型,熵权评估模型解决了群众留言分类,热点问题挖掘,答复意见评价等问题。 针对群众留言分类问题&#…...
windows下Tomcat安装
目录 1.安装java环境 2.配置Tomcat环境变量 3.安装服务 4.启动前修改配置文件 (1)设置tomcat端口 (2)设置临时日志等文件夹的位置 5.放入应用 6.启动Tomcat服务 1.安装java环境 安装tomcat版本对应的JDK 比如:…...
4月17号软件资讯更新合集.....
CrateDB 5.3.0 发布,分布式 SQL 数据库 CrateDB 是一个分布式的 SQL 数据库,使得实时存储和分析大量的机器数据变得简单。CrateDB 提供了通常与 NoSQL 数据库相关的可扩展性和灵活性,最小的 CrateDB 集群可以轻松地每秒摄取数万条记录。这些…...
[java基础]面向对象(五)
访问控制修饰符:--------------保护数据的安全(隐藏数据、暴露行为),实现封装 public:公开的,任何类 private:私有的,本类 protected:受保护的,本类、派生类、同包类 默认的&…...
React应用(基于React脚手架)
目录 前言:一、使用create-react-app创建react应用1、什么是 react 脚手架?2. 创建 cli 脚手架方式13. 创建 cli 脚手架方式24. npx:5. react脚手架项目结构6. 功能界面的组件化编码流程(通用)7. 如何更改脚手架版本 二、React 组…...
Redis(03)List--附有示例
文章目录 reids-listBLMOVEBLMPOPBLPOPBRPOPBRPOPLPUSHLINDEXLINSERTLLENLMOVELMPOPLPOPLPOSLPUSHLPUSHXLRANGELREMLSETLTRIMRPOPRPOPLPUSHRPUSHRPUSHX reids-list 本文介绍了Redis中的表命令。LSET用于设置列表中指定索引位置的元素的值;LTRIM用于按照索引范围修剪…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
SQL Server 触发器调用存储过程实现发送 HTTP 请求
文章目录 需求分析解决第 1 步:前置条件,启用 OLE 自动化方式 1:使用 SQL 实现启用 OLE 自动化方式 2:Sql Server 2005启动OLE自动化方式 3:Sql Server 2008启动OLE自动化第 2 步:创建存储过程第 3 步:创建触发器扩展 - 如何调试?第 1 步:登录 SQL Server 2008第 2 步…...
区块链技术概述
区块链技术是一种去中心化、分布式账本技术,通过密码学、共识机制和智能合约等核心组件,实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点:数据存储在网络中的多个节点(计算机),而非…...
电脑桌面太单调,用Python写一个桌面小宠物应用。
下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...
从实验室到产业:IndexTTS 在六大核心场景的落地实践
一、内容创作:重构数字内容生产范式 在短视频创作领域,IndexTTS 的语音克隆技术彻底改变了配音流程。B 站 UP 主通过 5 秒参考音频即可克隆出郭老师音色,生成的 “各位吴彦祖们大家好” 语音相似度达 97%,单条视频播放量突破百万…...
路由基础-路由表
本篇将会向读者介绍路由的基本概念。 前言 在一个典型的数据通信网络中,往往存在多个不同的IP网段,数据在不同的IP网段之间交互是需要借助三层设备的,这些设备具备路由能力,能够实现数据的跨网段转发。 路由是数据通信网络中最基…...
