资讯专栏INFORMATION COLUMN

Java数据库开发

Towers / 2710人阅读

Nosql数据库使用场景
首先需要确认一个问题,nosql能做什么?在现在的开发领域中nosql可以实现文档存储(BSON、JSON)、缓存存储、图像缓存(图像搜索),但是对于nosql的具体应用场景完全要根据你实际的业务来讲;

在传统的开发之中由于经常要使用到多表查询,性能很差,所以可以将一些经常显示的数据整理到文档型的nosql数据库(MongoDB),但是现在这个文档型的nosql使用越来越少,可以忽略了;

缓存型:例如在进行分布开发的时候session存储、做一些临时的数据,例如:购物车、短信验证码等,现在使用最多的缓存数据库就是Redis(可以保存在磁盘,断电后数据可以被保存下来);

使用Redis实现消息队列,可以使用更加高级的RabbitMQ,Kafka实现更方便。
优点:可以实现每秒近乎10W次的读写处理。

数据库优化有很多层次。
1. 语句上的优化:尽量不要去使用多表查询,尽量不要频繁的使用各种神奇的统计查询、如果需要的时候建议使用子查询来代替(子查询只是一种折中方案也不是最好的,只是相对的,当你的数据量暴大的时候,那么你所有认知的规则就全部都将改变)。
2. 数据库的优化只能够体现在查询上,而这个查询还是在认知范围内的数据量,例如使用索引,但是一旦使用了索引,就不能够进行频繁的修改,例如:在主键往往会设置索引,但是从另外一个角度,数据不应该进行物理删除,而要进行逻辑删除,只是为了保证索引不被重新创建;
空间换时间、时间换空间:你的数据是否需要进行同步处理操作。
3. 当存在有多个RPC业务端的时候,可以考虑进行垂直拆库的做法,这个时候只能够按照功能进行拆分,这个是需要强大的接口技术支持的;
4. 当分库在无法解决问题的时候就需要考虑数据库的水平拆分问题(认知范围内的唯一可以使用的最后方案);
5. 如果需要保证强大的查询性能,那么就需要再次引入搜索引擎的概念进行分词处理;

更多数据库精品课程:阿里云大学——开发者课堂

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/18019.html

相关文章

  • 11个最值得Java开发者收藏的网站

    摘要:是领域最具代表性的问答网站之一。在,开发者能够为各种相关的开源代码贡献自己的力量,也可以发布软件开发项目。该网站发布各技术领域的高技术含量内容,例如大数据,云计算,,物联网,开发等。是一个大型的资源类网站,主要涉及源代码和代码示例。 Java是一种面向对象的编程语言,由Sun Microsystems公司在1995年的时候正式发布。直到今天,Java都一直是最受欢迎的编程语言之一。如今...

    WrBug 评论0 收藏0
  • Java培训学习之Java开源软件的汇总

    摘要:开源软件的汇总开源插件是一个类似于的插件,它可以帮助你在不退出的环境下浏览本地文件系统。事件模型支持基于的事件提交。开源容器是一个非侵入式的对象反转控制容器容器。开源插件提供一个可针对文件语法进行着色的编辑器。 Java开源软件的汇总:EcSplorer 【Java开源 Eclipse插件】EcSplorer(Eclips...

    qiangdada 评论0 收藏0
  • 熟练掌握Java软件开发的必备知识

    摘要:最重要的是动力节点零基础班现已开启免费学习,对于想学习软件开发的同学无疑是好消息,亲自考察教学质量,针对不方便前来的同学,可以关注动力节点全套免费视频,机会就在眼前,千万不要错过。 Java软件开发语言是一门很实用的语言,在互联网的应用十分广泛,目前采用Java编程语言开发的网站也越来越多,所以对Java软件开发人才的需求量也是倍增。虽然说现在新的开发语言在市场上越来越多,但是根据有关...

    shiweifu 评论0 收藏0
  • 国外程序员整理的Java资源大全

    摘要:日期和时间处理日期和时间的函数库。使用中可观察序列,创建异步基于事件应用程序的函数库。为分布式系统提供延迟和容错处理。发布使用本机格式分发应用程序的工具。将程序资源和打包成和的本机文件。图像处理用来帮助创建评估或操作图形的函数库。 好资源要分享原文 译者 唐尤华 翻译自 github akullpp 构建 这里搜集了用来构建应用程序的工具。 Apache Maven:Mave...

    chengtao1633 评论0 收藏0
  • 1. 认识 Java 程序【连载 1】

    摘要:是什么是一种计算机编程语言,年詹姆斯高斯林等大神发明的一种编程语言,至今发展多年,应用非常广泛,使用者超级多。能干什么既然是一种计算机编程语言,自然它就是用来开发程序的。比较官方的简单定义程序是数据结构加算法。 showImg(https://segmentfault.com/img/remote/1460000012599260?w=900&h=500); 序: 从此开始,计划出一个...

    xiaowugui666 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<