热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

redis——数据库发展

redis——数据库发展为什么要用nosql

redis——数据库发展


为什么要用nosql


1.单机mysql年代(数据量小)

redis——数据库发展 - 文章图片

这时候网站出现的瓶颈是什么?
1.数据量如果太大,一个机器放不下
2.数据的索引,一个机器内存也放不下
3.访问量(读写混合),一个服务器承受不了
只要你开始出现上面的情况,数据库必须要升级

2.Memcached(缓存)+mysql+垂直拆分(读写分离)

网站80%的情况都是在读,每次都要去查询数据库,很麻烦。为了减轻数据的压力,我们可以使用缓存来提高效率
发展过程:优化数据结构和索引---->文件缓存(IO)---->Memcashed(当时热门技术)

redis——数据库发展 - 文章图片

3.分库分表+水平拆分+MySql集群


本质:数据库(读,写)

redis——数据库发展 - 文章图片

4.现在

2010-2020十年之间,世界已经发生了巨变。(定位,音乐,热榜)
mysql等关系型数据库不够用!数据量很大,变化很快!
mysql有的使用它来存储一些比较大的文件,博客,图片!数据库表很大,效率很低!如果有一种数据库来专门处理这种数据
mysql压力就变得十分小(研究这些问题)

redis——数据库发展 - 文章图片

为什么用nosql

用户个人信息,社交网络,地理位置,用户自己产生的数据,用户日志等等爆发式增长
这时候我们需要使用NoSql数据库。

什么是NoSql

NoSQl=Not Only Sql (不仅仅是sql)
关系型数据库:表格,行,列
泛指非关系型数据库。超大规模的高并发。

NoSql特点

解耦

1.方便扩展(数据之间没有关系,很好扩展)

2.大数据量高性能(redis一秒钟写8万次,读11万次,缓存记录级,是一种细粒度的缓存,高性能)

3.数据类型是多样的!(不用设计数据库,随取随用)

4.传统RDBMS和NoSQL

redis——数据库发展 - 文章图片

3V+3高

3V 1.海量Velume
2.多样Variety
3.实时Velocity
3高 1.高并发
2.高可扩
3.高性能

公司实践,RDBMS+nosql一起使用的。

阿里架构发展史

redis——数据库发展 - 文章图片

![](https://www.icode9.com/i/l/?n=20&i=blog/2298258/202102/2298258-20210213185305460-1843793906.png

架构师:没有什么加一层是解决不了的

1.商品的基本信息
名称、价格、商家信息
关系型数据库可以解决 MySql/Oracle


推荐阅读
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • NoSQL数据库,即非关系型数据库,有时也被称作Not Only SQL,是一种区别于传统关系型数据库的管理系统。这类数据库设计用于处理大规模、高并发的数据存储与查询需求,特别适用于需要快速读写大量非结构化或半结构化数据的应用场景。NoSQL数据库通过牺牲部分一致性来换取更高的可扩展性和性能,支持分布式部署,能够有效应对互联网时代的海量数据挑战。 ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
  • 针对MySQL Undo空间满载及Oracle Undo表空间溢出的问题,本文详细探讨了其原因与解决策略。首先,通过启动SQL*Plus并以SYS用户身份登录数据库,查询当前数据库的UNDO表空间名称,确认当前状态。接着,分析导致Undo空间满载的常见原因,如长时间运行的事务、频繁的更新操作等,并提出相应的解决方案,包括调整Undo表空间大小、优化事务管理、定期清理历史数据等。最后,结合实际案例,提供具体的实施步骤和注意事项,帮助DBA有效应对这些问题。 ... [详细]
  • 阿里云MySQL与Oracle数据库的主从复制技术详解 ... [详细]
  • 提升 Kubernetes 集群管理效率的七大专业工具
    Kubernetes 在云原生环境中的应用日益广泛,然而集群管理的复杂性也随之增加。为了提高管理效率,本文推荐了七款专业工具,这些工具不仅能够简化日常操作,还能提升系统的稳定性和安全性。从自动化部署到监控和故障排查,这些工具覆盖了集群管理的各个方面,帮助管理员更好地应对挑战。 ... [详细]
  • 小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限
    小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限 ... [详细]
  • 本文详细介绍了使用 Python 进行 MySQL 和 Redis 数据库操作的实战技巧。首先,针对 MySQL 数据库,通过 `pymysql` 模块展示了如何连接和操作数据库,包括建立连接、执行查询和更新等常见操作。接着,文章深入探讨了 Redis 的基本命令和高级功能,如键值存储、列表操作和事务处理。此外,还提供了多个实际案例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • Jeecg开源社区正式启动第12届架构技术培训班,现已开放报名。本次培训采用师徒制模式,深入探讨Java架构技术。类似于大学导师指导研究生的方式,特别适合在职人员。导师将为学员布置课题,提供丰富的视频资料,并进行一对一指导,帮助学员高效学习和完成任务。我们的教学方法注重实践与理论结合,旨在培养学员的综合技术能力。 ... [详细]
  • 2016-2017学年《网络安全实战》第三次作业
    2016-2017学年《网络安全实战》第三次作业总结了教材中关于网络信息收集技术的内容。本章主要探讨了网络踩点、网络扫描和网络查点三个关键步骤。其中,网络踩点旨在通过公开渠道收集目标信息,为后续的安全测试奠定基础,而不涉及实际的入侵行为。 ... [详细]
  • 在CentOS上部署和配置FreeSWITCH
    在CentOS系统上部署和配置FreeSWITCH的过程涉及多个步骤。本文详细介绍了从源代码安装FreeSWITCH的方法,包括必要的依赖项安装、编译和配置过程。此外,还提供了常见的配置选项和故障排除技巧,帮助用户顺利完成部署并确保系统的稳定运行。 ... [详细]
  • 开发心得:利用 Redis 构建分布式系统的轻量级协调机制
    开发心得:利用 Redis 构建分布式系统的轻量级协调机制 ... [详细]
author-avatar
xiaoyuhongzi
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有