zoukankan      html  css  js  c++  java
  • 数据库类型空间效率探索(一)

    经过我的测试,发现

    设置表userinfo的字段releas

    分别为:varchar(25) default null、varchar(25) not null default ''、char(25) not null default ''

    在数据量44460的时候,表userinfo占用的空间相同,根据releas字段模糊查询的速率相同。

    这是为什么?是数据量太少,还是测试的方式不对,还是其他的原因?

    注:测试环境

    下面是测试的过程,谁能给解释一下?

    1、数据量

    2、表结构

    3、表占用空间

    4、将表转储为sql文件

    表的大小:9.799K

    5、模糊查询releas

    6、修改表releas字段:varchar(25) default null->varchar(25) not null default ''

    7、模糊查询releas

    8、表占用空间

    9、将表转储为sql文件

    10、结论

    通过上面的测试,设置表默认为空或者是not null default '',并没有改变表占用空间的大小与存储的文件的大小与查询速度。

    接下来,接着修改

    11、修改表releas字段:varchar(25) not null default ''->char(25) not null default ''

    12、优化表,并查看表占用空间

    13、模糊查询

    14、导出sql文件

    于2016年5月18号下午4点在公司测试

    ---------------------------------------------------------------------------------------------

    今天是2016年5月21号上午11点,周六在家里面,此时想再次走一下上面的流程,此次不同的是,我将计算的大小精确到6位并四舍五入(round)而不是截取(truncate)。

    测试环境:

    测试结果:

    表占用的空间还是没有随着char、varchar的改变而改变。

    测试总体速度要远慢与公司测试的速度(我想有两个原因,一个电脑、一个是mysql版本)。

    varchar(25) default null:0.13sec

    varchar(25) not null default '':0.08sec

    char(25) not null default '':0.09sec

    测试步骤如下。

    1、将公司的sql文件导入我的笔记本电脑,查看表信息(数据量、表结构、占用空间),确保和公司里面一样。

    2、查询速度

    3、修改表releas字段:varchar(25) default null->varchar(25) not null default ''

    4、查看占用空间并查询速度

    5、修改表releas字段:varchar(25) not null default ''->char(25) not null default ''

    6、查看占用空间并查询速度

  • 相关阅读:
    强弱类型 静态语言 动态语言 || 脚本语言
    mysql版本升级问题处理
    word
    IntelliJ IDEA 插件
    dubbo
    spring源码构建
    zookeeper 本地多线程模拟分布式事务控制及配置中心
    一次性关闭所有的Activity
    可能以后用得到得东西
    Thread.sleep还是TimeUnit.SECONDS.sleep
  • 原文地址:https://www.cnblogs.com/shixm/p/5505784.html
Copyright © 2011-2022 走看看