普通文件和数据库存储的对比-阿里云开发者社区

开发者社区> liminjun88> 正文

普通文件和数据库存储的对比

简介:
+关注继续查看

在大多数企业开发或Web开发中,都会涉及数据的存储和检索。存储数据有两种基本的方法:保存到普通文件中(File System),或者保存到数据库(Database)中。

 

文件存储常见,并且简单,操作系统提供的完善的API,所以在早期项目中都会使用文件作存储载体。但是随着企业业务越来越复杂,网站访问量也越来越大时,对数据的并发性和检索速度有更高的要求。所以慢慢的也就引入使用数据库作为数据存储了。

 

使用普通文件的遇到的问题:

  1. 当文件变大时,使用普通文件将会变得非常慢,访问速度制约了应用性能
  2. 在一个普通文件中查找特定的一个或一组记录将非常困难。
  3. 处理并发访问可能遇到问题。虽然可以使用锁定文件来操作文件,但是多个脚本访问文件时可能导致竞争条件的发生,它可能导致应用出现性能的瓶颈。
  4. 普通文件在顺序访问时具有优势,但是在随机访问数据时可能非常困难。除非你将整个文件读入到内存中,在内存中修改它,然后将整个文件写回去
  5. 除了使用文件访问权限作为限制外,还没有一个简单高效的方法区分不同级别的数据访问权限机制。

关系数据库关系系统如何解决文件存储晕倒的问题:

  1. 提供了比普通文件更快的访问速度。
  2. 可以很容易查找并检索满足特定条件的数据集合
  3. 具有内置的处理并发访问机制。作为一个编程人员,不需要处理这些内容。
  4. 可以随机访问数据
  5. 具有内置的权限系统,有灵活的角色和权限管理功能。

 

如果要创建一个简单的系统或者应用,而又觉得 不需要一个功能全面的数据库系统时,我们可以使用SQLite。使用SQLite来作为一个中间人,一方面操作起来像普通文件一样方便和快捷,另一方面提 供了数据库具有基本事务处理能力,和操作文件提供了一个基本的SQL接口。当然SQLite更多是作为应用或产品的嵌入式数据库,最主要是它开源的。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
云时代下的数据库存储——运筹帷幄的阿里云数据库MongoDB
2018年1月17-25日,NoSQL数据库直播大讲堂峰会顺利结束,阿里云数据库团队为大家带来了一场别开生面的知识盛会,给大家带来深度的数据库技术及产品分享。本文是《ApsaraDB for MongoDB》演讲整理,主要讲解了阿里云数据库MongoDB全面的产品体系介绍以及阿里云数据库MongoDB在备份、监控、安全等方面所做的一些优化细节的具体剖析。
6673 0
【阿里云一周要闻第三期】:阿里云全球市场份额增长近一倍;AnalyticDB数据库登上TPC榜首;阿里云PHP Composer全量镜像正式上线!(附下载地址)
要问预告:阿里云全球市场份额增长近一倍!阿里云AnalyticDB数据库登上TPC榜首;QPS 提升60%,揭秘阿里巴巴轻量级开源 Web 服务器 Tengine 负载均衡算法
4335 0
数据库存储时间的时区问题
先说一下mysql中DATETIME和TIMESTAMP的区别 TIMESTAMP是标准的unix timestamp,它存储的是1970-1-1到现在经过的秒数,4字节存储。mysql用这个类型还蛮方便的,一个是有很多内置的函数和trigger来处理它,比如CURRENT_TIMESTAMP宏,最关键的是在取数据的时候mysql会自动帮你处理DST和时区的问题。 DATETIME的范围更
1827 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
11942 0
数据库存储图像及使用Image控件显示
在数据库中存取并显示到页面Image控件的功能。原来认为并不复杂,但是实际中却遇到了一些问题。 首先来看看保存图片: 图片在数据库中使用二进制方式存储,所以要把图片转化为二进制流文件在存储到数据库中,代码如下:     private void Save()     {         MyImage img = new MyImage();         img.
672 0
+关注
90
文章
5
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载