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

【H5】NoSQL数据库必须知道的知识

经过前一阵子的学习,有同学在问,传统的RDBMS程序员或架构师需要知道如何在NoSQL(非关系型的数据库)和DCP(数据缓存平台)方面具有技术主导力,通过这个问题。其它的就不多说了

经过前一阵子的学习,有同学在问,传统的RDBMS程序员或架构师需要知道如何在NoSQL(非关系型的数据库)和DCP(数据缓存平台)方面具有技术主导力,通过这个问题。其它的就不多说了。我们先来做一个初步的了解吧!

《【H5】NoSQL数据库必须知道的知识》
《【H5】NoSQL数据库必须知道的知识》

什么是NoSQL? NoSQL是“Not Only SQL”的缩写,即指的是非关系型数据库。也就是告诉我们,适合用关系型数据库的时候使用关系数据库,不适合使用关系型数据库的时候没有必要使用关系型数据库,可以选用更适合的数据库。这时候,为了弥补关系型数据库的不足,各种各样的NoSQL数据库就应运而生了。

开发遇到的问题: 1.高并发读写 Web2.0网站,数据库并发负载非常高,往往达到每秒上万次的读写请求,对于传统的mysql 和oracle来讲每秒上万次的查询还是可以勉强应对,但是对于读写量来讲恐怕还是凶多吉少哦。 2.高容量存储和高效存储 Web2.0网站通常需要在后台数据库中存储海量数据,如何存储海量数据并进行高效的查询往往是一个挑战 3.高扩展性和高可用性 随着系统的用户量和访问量与日俱增,需要数据库能够很方便的进行扩展、维护 综合上述常遇到的问题,我们再来看一下NoSQL数据库的优点,通过NoSQL自身的特点,你再来看一下到底能否给自己的网站也配上一款高性能的数据库呢?

NoSQL数据库的优点:

1.海量数据下,读写性能优异

2.数据模型灵活

3.数据间无关系,易于扩展 然后,通过多年的技术经验,和我团队里小伙伴的帮助!我们具体总结为以下几点内容: 1.了解ACID与BASE的比较(基本可用,软状态,最终一致) 2.了解持久性与非持久性,即一些NoSQL技术完全是内存数据存储 3.认识到 传统的标准化表格格式完全不同的数据模型:Columnar(Cassandra)与key / value(Memcached)vs面向文档(CouchDB)vs面向图形(Neo4j)

4.准备好处理像JDBC / ODBC这样的标准接口或像SQL这样的标准查询语言; 每个NoSQL工具都有不同的界面

5.架构师:重新思考网络规模/大规模NoSQL系统分布在几十到几百个服务器和网络中的事实,而不是共享数据库系统

6.习惯于可能不舒服的认识,你不知道数据的生命(大部分时间)

7.习惯数据可能不总是一致的事实; “最终一致”是BASE模型的关键元素之一

8.习惯数据可能不总是可用的事实

9.了解一些解决方案是分区容错的,有些则不是 这些属性因系统而异。了解NoSQL技术之间的差异同样重要。本文主要针对NoSQL学习者来讲,我们需要分析一下NoSQL的优缺点,然后提供一些解问题的思路。若有对本文持有不同观点的朋友,可以下后面的评论区说说您的观点。

谢谢大家的阅读! 本文章由源码时代H5前端学科讲师原创!

转载须注明出处(http://www.itsource.cn)!感谢大家的配合!


推荐阅读
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • Python SQLAlchemy库的使用方法详解
    本文详细介绍了Python中使用SQLAlchemy库的方法。首先对SQLAlchemy进行了简介,包括其定义、适用的数据库类型等。然后讨论了SQLAlchemy提供的两种主要使用模式,即SQL表达式语言和ORM。针对不同的需求,给出了选择哪种模式的建议。最后,介绍了连接数据库的方法,包括创建SQLAlchemy引擎和执行SQL语句的接口。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了在Oracle数据库中创建序列时如何选择cache或nocache参数。cache参数可以提高序列的存取速度,但可能会导致序列丢失;nocache参数可以避免序列丢失,但在高并发访问时可能导致性能问题。文章详细解释了两者的区别和使用场景。 ... [详细]
  • mysql-cluster集群sql节点高可用keepalived的故障处理过程
    本文描述了mysql-cluster集群sql节点高可用keepalived的故障处理过程,包括故障发生时间、故障描述、故障分析等内容。根据keepalived的日志分析,发现bogus VRRP packet received on eth0 !!!等错误信息,进而导致vip地址失效,使得mysql-cluster的api无法访问。针对这个问题,本文提供了相应的解决方案。 ... [详细]
  • 如何在php中将mysql查询结果赋值给变量
    本文介绍了在php中将mysql查询结果赋值给变量的方法,包括从mysql表中查询count(学号)并赋值给一个变量,以及如何将sql中查询单条结果赋值给php页面的一个变量。同时还讨论了php调用mysql查询结果到变量的方法,并提供了示例代码。 ... [详细]
  • web.py开发web 第八章 Formalchemy 服务端验证方法
    本文介绍了在web.py开发中使用Formalchemy进行服务端表单数据验证的方法。以User表单为例,详细说明了对各字段的验证要求,包括必填、长度限制、唯一性等。同时介绍了如何自定义验证方法来实现验证唯一性和两个密码是否相等的功能。该文提供了相关代码示例。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
author-avatar
桥之西海_744
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有