zoukankan      html  css  js  c++  java
  • informix 中chunk/dbspace概念

    chunk与dbspace的概念
    chunk :chunk是ONLINE的物理存储实体, 是磁盘上的一块连续的物理空间,ONLINE数据最终存放于此,我们可设置chunk的个数和大小。
    dbspace:是一个逻辑上的概念,较chunk高一层,实际上是由一个或多个chunk组合而成。每个dbspace至少包含一个chunk来存储数据,在用onspace指令创建dbspace时即须指令其初始chunk。
    chunk与dbspace的关系
           当我们建立数据库或表时,不直接与某个chunk关联,库或表建立在dbspace上,库或表的数据存放在dbspace的chunk中,至于数据最终放在dbspace的哪个chunk上,则由系统内部自身决定。当dbspace中的chunk都写满时,用户必须追加chunk。
         为了提高系统性能,用户在为数据空间分配chunk时需要计算以保证它的大小能适应未来的需要,否则在追加chunk的时候,它与先前的chunk在物理上不一定相邻,导致增加读取数据的时间。
     
    chunk与dbspace的建立
    一般情况下,应在原始磁盘设备上建立三个dbspace
           rootdbs:ONLINE初始化是缺省建立。
           Workdbs:存放应用系统数据库数据。
           Tmpdbs:存放系统临时文件数据。
           rootdbs:ONLINE初始化时,自动建立了一个名为rootdbs的dbspace。该rootdbs存储ONLINE的管理信息,包括物理日志,逻辑日志等。当建立一个数据库或表时,如果不指定dbspace,作为缺省,该数据库或表建在rootdbs,因此要将库或表建立在某个 dbspace中,则必须在SQL语句中指定dbspace名字。
           建chunk或dbspace时,要指定原始磁盘设备名路径,所需磁盘空间大小,以及该块磁盘空间在原始磁盘设备中的偏移量。其中,偏移量非常关键,要小心设置,否则容易造成chunk块之间空间上的重叠与覆盖
    例如:假定原始磁盘设备/dev/rdsk/0s2有500M空间其中rootdbs用去前100M如果要在/dev/rdsk/0s2中建立一个新的dbspace偏移量应大于100M。
    l 使用onspaces命令建立dbspace和chunk
    建立dbspace
    语法:onspace -c -d 数据库名 -p 设备文件名(初始chunk的全路径) -o 偏移量 -s尺寸
    建立chunk (即为dbsapce增加一个trunk)
    onspace -a 数据库名 -p 设备文件名 -o偏移量 -s尺寸
    选项:
    -c 建立新的dbspace
    -d dbspace名字
    -a 为指定dbspace增加一个chunk
    -p chunk全路径名/dev/rdsk/0s2
    -o 偏移量,以K字节为单位
    -s chunk的尺寸,以K字节为单位
    例: 建立一新dbspace
        a. 以informix用户身份登录
            su Informix
        b.将目录切换至格式化的空间将驻留的目录
            cd /usr/data
        c. 建立mychunk文件
           cat /dev/null >my_chunk   
               or   touch my_chunk
       d. 设置权限
            chmod 660 my_chunk
       e. 保证组与文件所有者均设置到informix
            ls -l my_chunk -rw-rw---- 1 informix informix     0 Oct 12 13:43 my_chunk
       f. 用onspace 创建dbspace
            onspace -c -d workdbs -p /usr/data/my_chunk -o 0 -s 100000

       g. 为workdbs增加chunk时,须重复a~e,建立新文件my_chunk.1,再调用onspace指令
            onspace -a -d workdbs -p /usr/data/my_chunk.1 -o 0 -s 100000
     
     
    转自 http://blog.csdn.net/vigarbuaa/article/details/6903064
  • 相关阅读:
    web服务器有哪些_nodejs的工作原理是什么
    WebRTC的运行流程和运行机制到底是怎么进行的
    认识WebRTC的整体架构以及它重要的目录结构是什么
    api接口风格restful风格的十大规范
    Mysql中高级操作中的视图_事务_索引_账户权限管理
    C#常见几种集合比较
    堆(Heap)和栈(Stack)
    线程同步的几种方式
    使用临时表大批量插入数据
    select出来的表增加递增列
  • 原文地址:https://www.cnblogs.com/linsond/p/2516132.html
Copyright © 2011-2022 走看看