1,文件系统存储特点


会缓存所有的写并且利用zlib对插入的行进行压缩,所以Archive搜索引擎比MyISAM存储引擎的表,更加节约磁盘I/O,对于同样数量级的数据,Archive存储引擎比MyISAM、InnoDB更加节约存储空间,一个几T的数据表数据存储到Archive存储引擎表中,可能只需要几百兆的存储空间就可以了;

Archive存储引擎数据文件都是ARZ为后缀文件,另外的和其他存储引擎一样,Archive存储引擎也存在一个以frm为后缀的文件,用于存储这种表的结构信息,这就是Archive存储引擎在文件系统中存储的一些特点。

2,Archive存储引擎特点

只支持insert和select操作【Archive存储引擎支持行级锁和专用的缓冲区,可以实现并发的插入,这种存储引擎在某些方面的模仿了事务存储引擎的一些特点,但是Archive本身并不是一种是事务的存储引擎】
只允许在自增的ID上加索引

3,Linux命令操作演示

创建myarchive表

有两点需要注意:

mysql> create  table myarchive( id int auto_increment not null , c1  varchar(10),c2  char(10),key(id)) engine = archive;
Query OK, 0 rows affected (0.00 sec
# 1、建立的ID列是具有自增属性,在Mysql中自增的类都是要求在索引中的,建表的同时指定索引
# 2、利用engine指定存储类型

到文件系统中来看一下这个表的是如何存储的:

[root@localhost test]# ls -lh myarchive.*
-rw-rw----. 1 mysql mysql 8.5K 2月  20 10:49 myarchive.ARZ
-rw-rw----. 1 mysql mysql 8.5K 2月  20 10:49 myarchive.frm
[root@localhost test]#
# arz 存储数据
# frm 存储表结构

插入数据

mysql> insert into myarchive (c1,c2) values ('aa','bb'),('cc','dd');
Query OK, 2 rows affected (0.00 sec)
Records: 2  Duplicates: 0  Warnings: 0mysql> select * from myarchive;
+----+------+------+
| id | c1   | c2   |
+----+------+------+
|  1 | aa   | bb   |
|  2 | cc   | dd   |
+----+------+------+
2 rows in set (0.00 sec)

数据删除操作

mysql> delete from myarchive where id = 1;
ERROR 1031 (HY000): Table storage engine for 'myarchive' doesn't have this option# 表示不支持删除

数据更新操作

mysql> update myarchive  set c1='aaaa' where id =1;
ERROR 1031 (HY000): Table storage engine for 'myarchive' doesn't have this option# 表示不支持更新

在非自增字段建立索引

mysql> create index idx_c1 on myarchive(c1);
ERROR 1069 (42000): Too many keys specified; max 1 keys allowed# 只支持在自增ID建立索引

4,使用场景

是无法在OLTP类的应用中所使用的,因为它不支持对数据的修改,而OLTP中一定会对数据进行修改,对于一些数据仓库的应用,或者一些特殊的表,如:记录日志类的表或者数据采集的表,由于会要存储大量的数据,就比较适合Archive存储引擎,存储空间占用最小。

注意:即使是在日志采集和数据的应用中,Archive存储引擎也是无法进行数据的删除和更新的。

MySQL常用存储引擎——Archive相关推荐

  1. MySQL常用存储引擎详解

    MySQL常用存储引擎详解 一.什么是存储引擎 二.掌握存储引擎的重要性 三.MySQL常用的存储引擎有哪些 四.存储引擎的特性 1.InnoDB 2.MyISAM 3.MEMORY 4.ARCHIV ...

  2. MySQL常用存储引擎之Archive

    现在我们来看看另外一种存储引擎,Archive存储引擎,Archive会缓存所有的写,并且利用对插入的行进行压缩,所以Archive存储引擎比MYISAM的表更加节约磁盘的IO,对于同样数量级的数据, ...

  3. MySQL常用存储引擎之Innodb

    在MYSQL5.5版本之后,具体是在5.58版本之后,InnoDB代替MYISAM称为MYSQL的默认存储引擎,说实话呢,是一个非常重要的事情,之前在使用MYSQL时,说别人使用InnoDB,而不用m ...

  4. MySQL - MySQL 常用存储引擎简介

    # 前言 存储引擎在MySQL底层以组件的形式提供,不同的存储引擎提供的存储机制.索引的存放方式和锁粒度等均不相同. 存储引擎基于数据表, 而不是基于数据库, 请根据业务需求为数据表选择最优的存储引擎 ...

  5. MySQL常用存储引擎之Federated

    最后呢要给大家介绍的存储引擎呢,是Federated这种存储引擎,常常有人会问MYSQL是否像SQL Server服务器或者ORACLE网关的功能,从MYSQL服务器本身来说呢,他并没有提供连接服务器 ...

  6. MySQL常用存储引擎之Memory

    看一下MYSQL存储引擎的Memory存储引擎,Memory存储引擎也称之为HEAP存储引擎,从这个存储引擎的名字中呢,可以知道,所有的数据都保存在内存中的,这就意味着呢,这种存储引擎表的数据呢,一旦 ...

  7. MySQL常用存储引擎之CSV

    首先我们来看CSV这种存储引擎,CSV存储引擎呢,可以讲CSV文件,作为MYSQL的表来处理,这种存储引擎的存储格式呢,就是普通的CSV文件,CSV存储引擎的数据存储方式非常的有特点,如果我们把数据存 ...

  8. MySQL常用存储引擎之MyISAM

    我们先来看看MYISAM这种存储引擎,MYISAM存储引擎呢,是MYSQL5.5以及之前的版本,在MYSQL数据库默认的存储引擎,由于这个原因呢,现在还有大量的服务器使用MYISAM的表,另外MyIS ...

  9. MySQL常用存储引擎

    MyISAM: MySQL默认数据库引擎,不支持事务.外键,速度快,用于无事务要求或者select.insert为主的场景. 会创建3个文件.frm(存储表定义),.MYD(MYData,存储数据), ...

最新文章

  1. USACO 2.2.2 Subset Sums解题报告
  2. 浮点数相加php,利用php怎么实现一个浮点数精确运算功能
  3. Linux自动删除n天前日志
  4. nssl1317-灵魂分流药剂【分组背包,二维费用背包】
  5. RO38 –比较RemObjects SDK 通道
  6. 95-872-050-源码-CEP-CEP之模式流与运算符
  7. 缓存DNS 正向解析反向解析
  8. 波司登杯2013微软office应用创意大赛烟台大学校园赛参赛历程
  9. 我的世界服务器修改世界难度,我的世界服务器空岛生存调难度指令 | 手游网游页游攻略大全...
  10. cityscape 数据集 mmsegmentation训练记录
  11. AUTOCAD——三种修剪方式
  12. 全国气象预报业务产品grib2数据格式解析
  13. 如何做好Clickhouse集群的监控覆盖?
  14. 华为初面+综合面试(技术面)
  15. 微前端是什么、价值、不足、典型模式
  16. NVDIMM原理与应用之四:NVDIMM的数据恢复、使用和监控
  17. 基于 SPICE 协议的硬编推流整合方案在云游戏中的应用
  18. 【面经】数据分析岗_面试题整理总结(持续更新中…)
  19. Eventloop事件循环机制
  20. C/C++定义全局变量/常量几种方法的区别

热门文章

  1. 网管必备-CMD命令
  2. 分布式存储的架构以及存在的问题和解决办法1
  3. 《潜龙谍影4》详细剧情解析
  4. MemCache 部署以及介绍 ;
  5. 如何下载展览路街道卫星地图高清版大图
  6. 如何在 Windows 恢复环境中使用 Bootrec.exe 工具解决和修复 Windows Vista 中的启动问题
  7. 用友软件出错解决方案。如:SA口令被更改或系统错误,系统将退出 错误编号:-2147024770错误描述:Automation 错误
  8. 虚拟机如何设置外网ip
  9. 计算机的鼻祖---差分机的由来
  10. Windows 系统第三方服务开发者可以借助 WSH (Windows Service Hardening) 机制提高安全性