存放在数据库中数据的特点 :永久存储 又组织 可共享
数据库系统是由 数据库 数据库管理系统 应用程序 管理员成员 组成的存储 管理 处理和维护数据的系统

三个阶段:人工阶段 ,文件系统阶段,数据库系统阶段
数据库系统优势 :整体数据结构化 面向多个应用 数据共享性高 冗余度低以扩充 数据独立性高 统一管理以及控制

数据ACID 原子性 一致性 隔离性Isolation 持久性 Durability
newsql 追求nosql的高可扩展性时 同时最求 ACID 原子性一致性隔离性持久性 关系型 适用于 OLTP场景

数据库架构发展如下图

单机架构 : 应用和数据分离开 ,应用服务可以增加服务器数量 进行负载 增大系统并发能力
优点:部署集中,运维方便 缺点:可扩展性差,只能纵向扩展 提高机器硬件 存在

主备机架构 :主机:承担读写任务 备机:承担备份任务 同一点只有一台机器对外提供服务
优点:容错性
缺点:浪费资源 性能 压力集中在主机 主机故障需要人工干预以及监控

主从架构 : 部署模式与主备模式相识 备机上升为从机对外提供服务 可通过读写分离 分散压力
优点:提高利用率 大并发场景可使用负载均衡实现负载 扩展性强 扩展不影响业务
缺点:数据延迟、写操作压力在主机上 、主机出现故障需要主从切换,人工干预需要相应时间,自动切换复杂难度较高

多主架构 :互为主从 同时对外提供服务
优点:资源利用率高 降低了单点故障的风险
缺点:延迟问题 、数据库数量增加 会导致数据同步问题变得极为复杂

共存储多活架构: 一种特殊的多主架构 数据库共享存储 而多个数据库进行负载
优点:多个服务提供高可用服务 ,而多个服务实现负载均衡 可伸缩性 避免单点故障 、比较方便横向扩展整体系统能力
缺点:实现难度大。当存储器带宽达到上限时,增加节点并不能提高性能,存储IO容易成为真个系统的瓶颈

分片架构:sharding ---> 水平数据分片架构 根据HASH list 进行数据分片 根据列表值 范围取值
优点:水平扩展 分散负载 加快查询相应速度 减少宕机影响 使程序更稳定

无共享架构:sharding-nothing 集群每个节点 拥有独立的CPU以及内存 不存在共享资源
优点:独自处理数据结果 通过上层汇总 通讯协议进行节点间信息流转 扩展能力强 并行能力强

 OLTP与OLAP的区别:

OLTP 是事务性 传统关系型数据库主要应用:  online Transaction processing

特点:吞吐量大,并发高 适用于 增删查改 高速查询

适用场景:零售系统/金融交易/火车售票 /秒杀活动

衡量指标 : 流量指标 TPMC  性价比 price/TMPC  -->TPC-C

OLAP 分析处理型 对大量数据进行查询和分析操作 Online analytical Processing

特点: 侧重与复杂查询 聚焦于聚合 汇总 窗口计算 分新型数据 /可以从多维度分析数据

使用场景:报表 金融预测系统 数据集市 数据仓库等

衡量指标:qpbh 流量指标 聚合力 ---->TPC-H

思考题 :

【HCIA Gauss】学习汇总-数据库基础介绍-1的更多相关文章

  1. 2018/1/8 学习汇总,kettle简单介绍,集合遍历方式的选择及原理,防止表单重复提交的后台解决方案

    昨天因为当前这个二次开发项目的接近尾声,要求我们将生产环境数据库里的数据迁移到现在新的数据库来,但老数据库里是sqlserver而新数据库则是ORACLE,不仅仅面对着数据库数据类型结构不一致的问题, ...

  2. 【学习】pandas 基础介绍说明 【pandas】

    本文来源于<利用python进行数据分析>中文版,大家有兴趣可以看原版,入门的东西得脚踏实地哈 1.pandas 数据结构介绍 首先熟悉它的两个主要数据结构,Series 和 DataFr ...

  3. Logstash学习系列之基础介绍

    Logstash功能特性 能集中处理各种类型的数据 能标准化不同模式和格式的数据 能快速的扩展自定义日志的格式 它具有收集,分析和转发数据流的功能 Logstash运行参数 -f 指定配置文件 -e ...

  4. 【MySQL】MySQL无基础学习和入门之一:数据库基础概述和实验环境搭建

    数据库基础概述  大部分互联网公司都选择MySQL作为业务数据存储数据库,除了MySQL目前还有很多公司使用Oracle(甲骨文).SQLserver(微软).MongoDB等. 从使用成本来区分可以 ...

  5. iOS超全开源框架、项目和学习资料汇总--数据库、缓存处理、图像浏览、摄像照相视频音频篇

    iOS超全开源框架.项目和学习资料汇总--数据库.缓存处理.图像浏览.摄像照相视频音频篇 感谢:Ming_en_long 的分享 大神超赞的集合,http://www.jianshu.com/p/f3 ...

  6. (zhuan) 深度学习全网最全学习资料汇总之模型介绍篇

    This blog from : http://weibo.com/ttarticle/p/show?id=2309351000224077630868614681&u=5070353058& ...

  7. MySQL学习笔记(一)——数据库基础

    自己上大学时也学习过数据库,做开发时也用到过,但是做界面开发对于数据库的使用相对来说是比较简单的,大学时系统学习的数据库也还给老师了,在测试工作中也只是用到了一些基础sql,增删改查这一类的,但是自己 ...

  8. Node.js学习笔记(一)基础介绍

    什么是Node.js 官网介绍: Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js us ...

  9. Mysql数据库基础学习笔记

    Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...

随机推荐

  1. 【Log】logback实现每个类和包自定义级别输出

    本例想实现对类或者包中的日志,自定义级别输出 方法一 1.自定义日志级别方式如下: 代码文件:Logger monitorLogger = LoggerFactory.getLogger(" ...

  2. Python 图片Resize.py

    #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 19-7-14 下午4:54 # @Author : RongT import cv2 ...

  3. Python进阶之面向对象

    新式类与旧式类 区别: 在2.2版本之前所有的类都是旧式类,3.x版本已取消旧式类 旧式类一般的写法,不继承任何父类 class Person: def __init__(self, name): s ...

  4. python 浅拷贝和深拷贝(9)

    何谓浅拷贝/深拷贝,说得直白一点,其实就是数据拷贝,两者到底有什么区别呢?听着就挺迷糊的,python开发项目的时候说不定你就能碰上这样的坑~~     一.普通的变量赋值 我们平常使用的变量赋值就是 ...

  5. windows下大数据开发环境搭建(1)——Java环境搭建

    一.Java 8下载 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下载之后 ...

  6. mycat实现读写分离

    1 mysql已经配置好了主从 2 linux 安装java环境 3 linux 安装mycat cd /usr/local # 下载mycat wget http://dl.mycat.io/1.6 ...

  7. 通过names.index()方法找到第2个eva值 ,并将其改成EVA

    names= ['alex','rain','peiqi','eva','mac','jack','eva','kangkang','jain']first_index=names.index('ev ...

  8. pdfplumber模块初始用

    import pdfplumber import re def pdf_read(): pdf=pdfplumber.open('文件路径'")#文件路径,读取文件 page0=pdf.pa ...

  9. gitlab-runner 的 executors 之 docker

    gitlab-runner 的 executors 之 docker GitLab Runner 实现了许多执行程序,可用于在不同的场景中运行构建.所有执行程序分别为: SSH Shell Paral ...

  10. 系统开启UAC情形下开机自启动程序如何以管理员权限启动

    系统开启UAC情形下开机自启动程序如何以管理员权限启动 题记:本文阐述的是在Windows系统开启UAC的情况下,开机自启动程序需要以管理员权限启动, 系统弹出UAC对话框,用户同意的情形下启动程序 ...