`
yunzhu
  • 浏览: 1141194 次
  • 性别: Icon_minigender_1
  • 来自: 南京
博客专栏
B2b19957-cda7-3a9e-83a0-418743feb0ca
监控应用服务器
浏览量:109119
2e8be8be-e51f-346c-bcdd-12623c9aa820
Web前端开发
浏览量:119263
Bfa5df64-a623-34b9-85b8-ef3ce2aed758
经典异常的解决
浏览量:204006
社区版块
存档分类
最新评论

《大数据挑战与NoSQL数据库技术》读后感

阅读更多

从1970年IBM的埃德加·弗兰克·科德发表“大型共享数据库的关系模型”论文至今,关系数据库发展已有40年有余,已经发展到了高度成熟的阶段,而且是经住了时间考验的。但是近几年来,随着数据大爆发时代的来临,数据量已经不是GB级,而是往TB级、PB级发展,同时互联网应用的大数据量和高并发的要求越来越高,传统的关系数据库已经难以满足发展的需要。于是非关系型数据库(也即NoSQL)理论便应运而生,各种NoSQL产品也相应产生。

 

但是与高度成熟的关系型数据库不同,NoSQL毕竟属于新生事物,不管是理论还是产品都还不够成熟,选择性很多,而且NoSQL还分多个种类,不像关系型数据库只有几个产品,只要选择一个合适的产品便万事无忧了。所以如何应用NoSQL技术便成为一件难度很高的事情,而《大数据挑战与NoSQL数据库技术》正可以解决这个问题。这本书是绝佳的NoSQL入门书籍加选型手册,通过这本书可以快速地一窥NoSQL技术全貌,进而全面掌握NoSQL技术,懂得实践当中什么时候应该选择什么样的解决方案。

 

全书结构分布非常合理,总共三部分,第一部分讲理论,包括大数据产生背景以及NoSQL技术的核心理论知识和各方面的实现技术,读完这部分便对大数据和NoSQL有了全盘的了解;第二部分带领我们领略了几种典型的NoSQL数据库种类和最成功的产品,理论和实践结合,方便读者进行技术选型;第三部分则结合实践,介绍部分企业如何使用NoSQL解决自身遇到的问题,使读者对NoSQL如何应用更有了明晰的认识。

 

之前只久闻大数据和NoSQL其名,却从未看到相关的东西,一直觉得这应该是一个多么高端多么艰深的技术,是可望而不可及的,所以始终没有花时间研究一番。正好这是一个刚刚跨入梅雨季节的周末,时而细雨纷飞时而大雨磅礴,正好在家好好拜读这本新书,没想到越看越想看,一口气读完了试读的全部章节,很快便对大数据和NoSQL技术有了一定的认知,因为这本书行文流畅自然、深入浅出,把高深的理论和技术写得通俗易懂,所以让人爱不释手。一口气读完这么多,学习到这么多的知识,有一种久违的快感,这实在是一个无比充实的周末。

 

虽然看得很快,但还是颇有些收获的。

 

为什么会产生NoSQL?

一个系统中,随着访问量和数据量的增大,有很多种方案来应对,最初是缓存,然后是分库分表、读写分离,实现分布式并且进行负载均衡,但是面对大数据量和高并发要求非常高的情况下,使尽浑身解数,有时依然无法解决数据库的访问瓶颈。于是人们开始质疑是否是数据库本身的问题呢?CAP理论的产生使人豁然开朗,原来强一致性、可用性、分区容错性三者是不能同时满足的,所以为了高度的可用性,只能牺牲强一致性,以最终一致性取而代之。于是颠覆了关系数据库的理论基础,也就是关系模型,已经ACID特性,废除了对SQL的支持,这便产生了非关系型数据库NoSQL。

NoSQL数据库有各种不同种类,主要有键值数据库、列存储数据库、文档数据库、图存数据库等等。他们各有自己擅长的地方和局限性,只有用对地方才能发挥出其功效,所以实际当中如何选择如何扬长避短才是最难把握的。

 

NoSQL技术如何应用于实际中?

我想一般很难完全抛弃关系型数据库,因为关系型数据库擅长的关系查询是目前的NoSQL所无法取代的,所以可以将一些性能第一、高并发的地方交由NoSQL去做。还有需要高度可扩展性和灵活性的地方,比如本人曾经做过的一个监控应用服务器的项目,采集应用服务器的监控数据,使用的是MySQL,采集的字段一旦增加,修改起来就会很麻烦,而且这确实经常发生,这种情况如何采用文档数据库,采用json的格式保存监控数据,就会高效多了。

 

由于接触的时间还很短,对NoSQL的认识还很肤浅,但是在这本书的带领下已经对NoSQL有了整体上的粗略认识,我迫不及待地想要读完这整本书,相信读完这本书,一定能从宏观上对NoSQL有较好的把握,再结合实践,一定能为将来使用NoSQL技术打下坚实的基础,会在使用NoSQL时的技术选型上得心应手。

1
0
分享到:
评论

相关推荐

    前18大旋转修整器企业占据全球87%的市场份额.docx

    前18大旋转修整器企业占据全球87%的市场份额

    Planet-SkySat-Imagery-Product-Specification-Jan2020.pdf

    SKYSAT IMAGERY PRODUCT SPECIFICATION PLANET.COM VIDEO Full motion videos are collected between 30 and 120 seconds by a single camera from any of the active SkySats. Videos are collected using only the Panchromatic half of the camera, hence all videos are PAN only. Videos are packaged and delivered with a video mpeg-4 file, plus all image frames with accompanying video metadata and a frame index file (reference Product Types below)

    Screenshot_20240506_133458_com.netease.yhtj.vivo.jpg

    Screenshot_20240506_133458_com.netease.yhtj.vivo.jpg

    2019年A~F题特等奖论文合集.pdf

    大学生,数学建模,美国大学生数学建模竞赛,MCM/ICM,历年美赛特等奖O奖论文

    雷达物位变送器安装和操作手册

    雷达物位变送器安装和操作手册

    node-v11.6.0-linux-armv7l.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    Python3实现快速排序(源代码)

    快速排序是一种基于分治策略的排序算法,通过选择一个基准元素,将待排序的数组划分为两个子数组,一个包含所有小于基准的元素,另一个包含所有大于基准的元素,然后递归地对这两个子数组进行快速排序。快速排序在平均情况下具有O(n log n)的时间复杂度,是一种非常高效的排序算法。然而,在最坏情况下,当输入数据已经有序或接近有序时,快速排序的性能会退化为O(n^2)。此外,快速排序是不稳定的排序算法,即相等的元素可能在排序过程中改变相对位置。尽管如此,快速排序仍然因其高效的平均性能而在实际应用中广泛使用。在Python3中,可以通过递归或迭代的方式实现快速排序算法,但为了避免额外的空间开销,通常会采用原地排序的方式来实现。

    毕业课设基于51单片机的出租车计价器(昼夜)

    【作品名称】:基于51单片机的出租车计价器(昼夜) 含(程序、仿真图、流程图、原理图) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 出租车计价器: 1、不同情况具有不同的收费标准,具有白天和夜晚不同的计价能力 2、能进行手动修改单价 3、具有数据的复位功能(起步价,起步公里数,里程单价,白天晚上不一样) 4、能够在掉电的情况下存储单价等数据 5、步进电机模拟里程,一圈表示一里路

    2024年中国API 11P往复式气体压缩机行业研究报告.docx

    2024年中国API 11P往复式气体压缩机行业研究报告

    Windows 10系统上安装和配置Tomcat的步骤

    附件是Windows 10系统上安装和配置Tomcat的步骤,文件绿色安全,请大家放心下载,仅供交流学习使用,无任何商业目的!

    广东工业大学《计算网络A》实验报告期末考试试题回忆版.doc

    此试题是考试后回忆版本,你会发现是惊喜。恭喜你考个好成绩。

    数据库+人大金仓+Linux系统安装

    数据库+人大金仓+Linux系统安装

    2023年美赛特等奖论文-C-2309397-解密.pdf

    大学生,数学建模,美国大学生数学建模竞赛,MCM/ICM,2023年美赛特等奖O奖论文

    opencv-python-4.5.4.60-cp36-cp36m-win-amd64.whl

    opencv-python-4.5.4.60-cp36-cp36m-win-amd64.whl

    减肥管理,全球前10强生产商排名及市场份额.docx

    减肥管理,全球前10强生产商排名及市场份额

    上海大学大学生创新创业训练计划申请书(创新训练项目).doc

    内容概要:《上海大学大学生创新创业训练计划申请书(创新训练项目)》是用于申请参加上海大学的大学生创新创业训练计划的申请书,旨在帮助学生提出创新项目计划,获得培训和支持,促进学生创新创业能力的提升。 适用人群:适合上海大学的在校大学生,特别是对创新创业感兴趣、有创新想法和创业计划的学生,希望通过该计划获得指导和资源支持,实现自己的创业梦想。 使用场景及目标:申请书的使用场景是为了参加上海大学的大学生创新创业训练计划,目标是通过提交详细的创新项目计划,获得评审通过并获得培训、指导和资金支持,从而推动学生的创新创业实践和能力提升。 其他说明:申请书应包括清晰的创新项目描述、项目可行性分析、预期目标和计划、团队介绍等内容,以展现学生的创新能力和项目潜力。申请书的撰写需要认真准备,体现出学生对创新创业的热情和才华,以提高申请成功的机会。

    IEC 60364-7-716-2023 第7-716部分:特殊装置或场所要求.信息和通信技术ICT电缆基础设施上ELV直流配电

    IEC 60364-7-716-2023 低压电气装置.第7-716部分:特殊装置或场所的要求.信息和通信技术(ICT)电缆基础设施上的ELV直流配电.pdf

    IEC PAS 61851-1-1 2023 电动汽车导电充电系统.第1-1部分:使用4型车辆耦合器电动汽车导电带电系统特殊要求

    IEC PAS 61851-1-1 2023 电动汽车导电充电系统.第1-1部分:使用4型车辆耦合器的电动汽车导电带电系统的特殊要求.pdf

    前11大客运渡轮服务企业占据全球30.3%的市场份额.docx

    前11大客运渡轮服务企业占据全球30.3%的市场份额

    wsl+MCgpu安装记录

    wsl+MCgpu安装记录

Global site tag (gtag.js) - Google Analytics