哪些东西不适合放到数据库
来源:互联网 发布:报了java培训班听不懂 编辑:程序博客网 时间:2024/04/28 15:16
数据库层设计的好坏将极大的影响应用程序的性能,用户体验也与此息息相关。那么有哪些数据在应用程序开发中应当避免放大数据库中呢?
1. 图片,文件,二进制数据,如视频,音频等多媒体文件是最不应该放到数据库中的。
因为:
- 随着数据库的数据越来越多,数据库的备份和维护将越来越困难。
- 对文件的访问贯穿应用程序的多层结构,应用层,服务层,数据库层。
- 数据库读写的速度赶不上文件系统的处理数据
通常的做法是把它们存放大磁盘文件系统,而数据库中只存储它们的存放路径
2.短生命期数据
使用情况统计数据,测量数据,GPS定位数据,session数据,任何只是短时间内对你有用,或经常变化的数据。如果你发现自己正在使用定时任务从某个表里删除有效期只有一小时,一天或数周的数据,那说明你没有找对正确的做事情的方法。使用redis,mongodbd或许更好3.日志文件
把日志数据存放到数据库里,表面上看起来似乎不错,而且“将来也许我需要对这些数据进行复杂的查询”,这样的话很得人心。这样做并不是一个特别差的做法,但如果你把日志数据和你的产品数据存放到一个数据库里就非常不好了。
也许你的日志记录做的很保守,每次web请求只产生一条日志。对于整个网站的每个事件来说,这仍然会产生大量的数据库插入操作,争夺你用户需要的数据库资源。所以说你数据库有多少余力来吞吐为了你可以做复杂查询、分析的日志数据和你存入数据库中的日志数据的量做一个权衡。你既想要把日志数据存放到数据库,这样你可以利用数据库可以做复杂查询的优势帮你分析应用程序的问题所在,又不想过多的日志数据对数据库系统造成太大的压力,或许以下是个好办法,这也是我最近学习springAOP和拦截器联想到的。
利用springAOP或者拦截器结合自定义注解,将你想要输出日志到数据库的类、方法用注解标注,可以很容易完成对目标类方法调用的日志筛选,结合apo和拦截器对你想要作记录的用户,角色的活动记录存放到数据库。(或许表达不大明确,这个功能马上就来。。。)
- 哪些东西不适合放到数据库
- 这三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西从来不应该放到数据库中
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 三种东西永远不要放到数据库里
- 纯CSS3实现的表单输入高亮效果
- 图说java反射 建议将图下载,用画图打开
- java异常捕获的一点感悟
- java 接口里暴露函数
- [leetcode] Palindrome Partitioning
- 哪些东西不适合放到数据库
- git和github的代码托管常用命令和操作
- 【读书笔记:C++ primer plus 第六版 中文版】第4章 复合类型
- R语言 关联规则
- 我的git 搭建
- 我该如何理解原语???原语到底是什么???
- 对百度百科SSL证书的解读
- 原语??
- Quartz介绍 使用说明