nosql数据库技术与应用知识点

Nosql知识回顾

大数据处理流程

  • 数据采集(flume、爬虫、传感器)
  • 数据存储(本门课程NoSQL所处的阶段) Hdfs、MongoDB、HBase等
  • 数据清洗(入仓) Hive等
  • 数据处理、分析(Spark、Flink等)
  • 数据可视化
  • 数据挖掘、机器学习应用(Python、SparkMLlib等)

大数据时代存储的挑战(三高)

  • 高并发(同一时间很多人访问)
  • 高扩展(要求随时根据需求扩展存储)
  • 高效率(要求读写速度快)

NoSql非关系型数据库(存储方式各不相同),遵循CAP原则

  • 易扩展

  • 高性能

  • 高灵活

  • 高可用

    CAP: 一致性、可用性、分区容错性(但是不能同时满足3项,不同的nosql数据库都会满足其2而放弃其1)

    典型代表:MongoDB、Redis、HBase等,使用方式各不相同

  1. MongoDB:设计为分布式数据库,提供 高可用性和数据一致性,通常会在处理写操作时会有较高的延迟。
  2. Redis: 主要提供快速的键值读写能力,通常放弃数据一致性来保证高可用性
  3. HBase: 设计时更倾向于一致性,而牺牲高可用性,以保证数据的强一致和更新的最终一致性。

关系型数据库(以表格形式存储 数据),遵循ACID原则

ACID:是指数据的 原子性、一致性、隔离性、持久性

典型代表:MySql、Oracle、MSSqlServer、Sybase、Postpresql等

查询方式:SQL语句

关系型和非关系型的使用场景对比:

(1)关系型:

结构化数据存储:适合存储有明确定义关系的结构化数据,如订单、用户信息等。

ACID事务支持:提供强大的事务支持,确保数据需要进行多表关联、聚合操作的场景。

复杂查询:支持复杂的SQL查询,适用于需要进行多表关联、聚合操作的场景。

数据一致性:严格遵循ACID原则,保证数据的一致性和完整性。

(2)非关系型

大数据存储:适合存储半结构化或非结构化的大量数据,如日志、文档、图像等。

高可扩展性:基于分布式架构设计,具有良好的横向扩展性,能够轻松处理大规模数据。

灵活的数据模型:可以灵活地调整数据模型,适应不断变化的数据需求,无需事先定义表结构。

高性能读写:通常具有高性能的读写能力,能够满足实时数据处理和高并发访问的需求。

Nosql数据库分类

  1. 键值对数据库:Reids等
  2. 文档数据库:MongoDB等
  3. 列式数据库: HBase等
  4. 图形化数据库:Neo4j等
相关推荐
今天AI了吗27 分钟前
Python 基础语法(一):常量、变量、输入输出与运算符
开发语言·数据库·人工智能·python·sql·深度学习·机器学习
qq4078556044 分钟前
面向智能补货需求的进销存系统盘点
大数据·人工智能·低代码·制造
CHENGQUAN_kenan1 小时前
佛山亚马逊卖家出口退税合规指南|9610免税、一般贸易退税、无票采购、申报误区全覆盖
大数据·经验分享·笔记·百度
Web3_Daisy1 小时前
从流动性到执行:如何降低 MEV 对 Web3 市场
大数据·人工智能·web3·区块链
日常通勤穿搭1 小时前
电商 AI 作图用哪个最方便?新手商家 AI 出图工具对比
大数据·人工智能
重生之后端学习2 小时前
283. 移动零[简单]✅
开发语言·数据结构·算法·leetcode·职场和发展
lilian2332 小时前
Harmony os 技术实战|拼豆制图27:用单字符编码承载 50 张 70×70 图纸
前端·数据库·华为·harmonyos
小淮AI2 小时前
一个国际家庭在武汉的择校笔记:两份外籍人员子女学校的课程方案比较
大数据·人工智能
一只鹿鹿鹿2 小时前
大数据中心安全系统解决方案(Word文件)
大数据·运维·物联网·安全·政务
皮卡丘不断更2 小时前
手机优先的 Personal Ledger:把账目、学习和复盘放到同一个入口
数据库·sqlite·fastapi·开源项目·个人效率