zoukankan      html  css  js  c++  java
  • 常见数据库引擎比较

    面试官经常问到有关数据库的问题,多数可能就是基于MySQL数据库的这几种引擎。

    简介概括主要:

    1. 总结:一般来说不使用事务的话,请使用MyISAM引擎,使用事务的话,一般使用InnoDB。

    2. 比较常用的数据库引擎3种:

    • MYISAM:支持3中存储方式:静态型,动态型,压缩型
    1. 优点:占用的空间小,存储的速度快
    2. 缺点:不支持事务并发
    3. 使用场景:数据表主要做修改查询操作
    • innoDB:
    1. 优点:提供事务的支持,回滚,崩溃修复佛如能力,多版本事务并发控制
    2. 缺点:读写效率较差,占用的数据库空间较大
    3. 使用场景:MySQL主要引擎
    • Memory:内存中对数据创建表,数据全部存储在内存
    1. 缺点:生命周期短
    2. 优点:读写速度非常快,对数据的安全性要求比较低的时候可以选择memory
    3. 使用场景:MySQL中使用该引擎作为临时表

     


    3.以下是长篇大论,有兴趣的可以看一下。

    • InnoDB:支持事务处理,支持外键,支持崩溃修复能力和并发控制。如果需要对事务的完整性要求比较高(比如银行),要求实现并发控制(比如售票),那选择InnoDB有很大的优势。如果需要频繁的更新、删除操作的数据库,也可以选择InnoDB,因为支持事务的提交(commit)和回滚(rollback)。
    • MYISAM:插入数据快,空间和内存使用比较低。如果表主要是用于插入新记录和读出记录,那么选择MyISAM能实现处理高效率。如果应用的完整性、并发性要求比较低,也可以使用。
    • Memory:所有的数据都在内存中,数据的处理速度快,但是安全性不高。如果需要很快的读写速度,对数据的安全性要求较低,可以选择MEMOEY。它对表的大小有要求,不能建立太大的表。所以,这类数据库只使用在相对较小的数据库表。

    4.市场上部分引擎(比主流差一丢丢)

    1. ·MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。
    2. · InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。(提供行级锁)
    3. · BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。
    4. · Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。
    5. · Merge:允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。
    6. · Archive:为大量很少引用的历史、归档、或安全审计信息的存储和检索提供了完美的解决方案。
    7. · Federated:能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。
    8. · Cluster/NDB:MySQL的簇式数据库引擎,尤其适合于具有高性能查找要求的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性。
    9. · Other:其他存储引擎包括CSV(引用由逗号隔开的用作数据库表的文件),Blackhole(用于临时禁止对数据库的应用程序输入),以及Example引擎(可为快速创建定制的插件式存储引擎提供帮助)。
  • 相关阅读:
    最大子数组问题(分治策略实现)
    Solving the Detached Many-to-Many Problem with the Entity Framework
    Working With Entity Framework Detached Objects
    Attaching detached POCO to EF DbContext
    如何获取qq空间最近访问人列表
    Health Monitoring in ASP.NET 2.0
    problem with displaying the markers on Google maps
    WebMatrix Database.Open… Close() and Dispose()
    Accessing and Updating Data in ASP.NET: Retrieving XML Data with XmlDataSource Control
    Create web setup project that has crystal reports and sql script run manually on client system
  • 原文地址:https://www.cnblogs.com/yblackd/p/12019818.html
Copyright © 2011-2022 走看看