<s id="mvh2b"><strike id="mvh2b"><u id="mvh2b"></u></strike></s>
    1. <rp id="mvh2b"></rp>

      当前位置:首页 > IT教程

      内存数据库与磁盘数据库

      时间:2019-11-24 04:34:01来源:金橙教程网 作者:admin8 阅读:56次 [手机版]
       

      内存数据库

      参考网址:https://blog.CSDN.net/dh2442897094/article/details/64440130

      1、磁盘数据库需要频繁地访问磁盘来进行数据的操作,由于对磁盘读写数据的操作一方面要进行磁头的机械移动,另一方面受到系统调用(通常通过cpu中断完成,受到CPU时钟周期的制约)时间的影响,当数据量很大,操作频繁且复杂时,就会暴露出很多问题。 内存数据库数据处理速度比传统数据库的数据处理速度要快很多,一般都在10倍以上。

      2、在数据库技术中,目前主要有两种方法来使用大量的内存。一种是在传统的数据库中,增大缓冲池,将一个事务所涉及的数据都放在缓冲池中,组织成相应的数据结构来进行查询和更新处理,也就是常说的共享内存技术,这种方法优化的主要目标是最小化磁盘访问。另一种就是内存数据库(MMDB:Main Memory DATabase,也叫主存数据库)技术,就是干脆重新设计一种数据库管理系统,对查询处理、并发控制与恢复的算法和数据结构进行重新设计,以更有效地使用CPU周期和内存,这种技术近乎把整个数据库放进内存中,因而会产生一些根本性的变化。

      3、常用内存数据库

      Redis

      SQLite

      Altibase

      Oracle Berkeley DB

      eXtremeDB(商业)

      参考网址:Https://www.jianshu.com/p/4eeed6f227ab

      典型的磁盘数据库就是最常用的 Oracle,MySQL,Mongodb、postgresql等。典型的内存数据库如 Redis。

      数据库选型:https://www.cnblogs.com/foohack/p/5283855.html

      4、Redis和SQLite的比较

      SQLite比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。

      参考网址:https://blog.csdn.net/lijinqi1987/article/details/51957545

      SQLite并不应该用来直接和MySQL、Oracle、PostgreSQL、SQL Server这些client/server数据库比较,因为SQLite是用来解决其他的问题的。client/server数据库力图实现企业数据的共享库,他们强调可伸缩性、并发、集中和控制。SQLite试图为单独的应用程序和设备提供本地的数据存储

      选型依据:

      数据和应用程序被网络隔开? →选择 client/server数据库

      大量并发的写操作? →选择 client/server数据库

      大量并发的写操作? →选择 client/server数据库

      否则,选择SQLite

      参考网址:https://blog.csdn.net/guoqingcun/article/details/67634633

      1:客户端/服务端应用 如果有许多客户端通过网络发送SQL到服务端,SQLITE不适用此场景

      2: 大数据集 SQLITE限制大小为140T

      3:高并发 SQLITE适合单线程/进程

      本机存储,低并发,低数据量,零配置,零管理

      Redis是一款开源的、高性能的键-值存储 (key-value store)。它常被称作是一款数据结构服务器(data structure server)。Redis的键值可以包括字符串(Strings)、哈希(hashes)、列表(Lists)、集合(sets)和 有序集合(sorted sets)等数据类型。 对于这些数据类型,你可以执行原子操作。例如:对字符串进行附加操作(append);递增哈希中的值;向列表中增加元素;计算集合的交集、并集与差集等。Redis是NoSQL数据库。

      参考网址:https://blog.csdn.net/u011277123/article/details/78692603/

      Redis适用场景:

      1. 数据高并发的读写

      2. 海量数据的读写

      3. 对扩展性要求高的数据

      Redis不适用的场景:

      1. 需要事务支持(非关系型数据库)

      2. 基于sql结构化查询储存,关系复杂

      相关阅读

      使用未初始化的内存怎么解决_电脑内存不足怎么解决

      电脑内存不足怎么办&#xff0c;虚拟内存能起到多大作用&#xff1f;我们可以看到下图网友反映&#34;电脑内存有12GB内存&#xff0c;但是

      按QQ查询QQ群数据库的方法

      1.为所有的表创建索引 ADD INDEX &#96;QunNum_index&

      当系统出现内存错误的解决办法

      一、应用程序没有检查内存分配失败   程序需要一块内存用以保存数据时,就需要调用操作系统提

      【数据库】数据库系统

      目录 一、数据库系统四个概念 1、数据&#xff08;Data&#xff09; 2、数据库&#xff08;Database&#xff09; 3、数据库管理系统&#xff08;D

      goldendb mysql_金融业分布式数据库:SequoiaDB、Golde

      谈点个人理解&#xff1a; 1)POC测试&#xff1a; SequoiaDB、OceanBase在金融行业都已经有大量用户了。 2)分布式数据库技术发展体系对比

      分享到:

      IT相关

      程序相关

      推荐文章

      热门文章

      东北老女人嫖老头视频_无遮挡H肉动漫视频在线观看_欧美牲交a欧美牲交aⅴ另类_狼人乱码无限2021芒果