LMT and ASSM

xiaoxiao2021-03-06  187

LMT management method

LMT means that Oracle no longer uses a data dictionary table to record the use of the area inside the Oracle table space, but in the head of the data file of each table space, a bit diagram area is added therein, records the use of each area. situation. Each table file is 64K for Bit Map. Whenever a zone is used, or is released for re-use, Oracle will update this record of the data file header, reflecting the size of this change zone size of the management extent_management_clause (the default) area of ​​Autoallocate by The system is managed, if the data block is less than 16K. The default is 64K. If it is more than 16K, the default is 1M. Then allocate the area according to the situation of the table. The size is 64K, 1M, 8M .. and the system table space can only be autoallocate. UNIForm specifies the size of each zone, and each area includes at least 5 database block size attributes segment_management_clause (Table Space Level Parameters) Manual with Free Lists to Manage Segment Space AUTO This section is also known as Automatic Segment-Space Management. It is used by bitmaps to manage segment spaces, ignoring the PCTUSED, FREELIST, and FREELIST Groups parameters of the image. Oracle will automatically manage the Freelists of the tables and indexes. For ASSM, the minimum value of Initial is three blocks. The following is detailed in detail in the ASSM traditional management method. The setting of the PCTUSED affects the join of the Freeelist. If we want to make full use of Disk. It will be a value much higher than the value of avg_row_len. On the contrary, if we want to improve the performance of Insert, we will set a low PCTUSED, make sure all blocks have enough space to implement data updates. If the PCTUSED setting is unreasonable, it will cause the INSERT performance to decrease. If the PCTUSED is set too much. Make new data unable to update in the current block, you must go to FREELIST. Thereby increasing the contention of I / O. If you can't INSERT after 5 get it, the Oracle increases HWM to 5 spaces. Assign these 5 blocks to this INSERT. Use ASSM management. Oracle will adjust the size of the PCTUSED according to DBA_TABLES.AVG_ROW_LEN. Thereby the performance is improved. The biggest benefit using ASSM is to reduce the wait for a buffering. In the previous version of Oracle9i, the buffering waiting is the most important issue. If you use a single freeelist. Oracle will use a block to manage the idle block in the table. If multiple users are INSERT data to the same table, Oracle will apply to the Table's FreeList, and only one request can be handled each time. This will cause waiting. Since ASSM uses a bitmap to manage idle blocks. In an image, the file header will account for three blocks, one of which is bitmap information. For more than one, in a table, if the zone size is 64K, then 16 blocks are managed by the first bitmap, and then the 17th block is a bit block to manage 17 to 31 blocks. Push it in this class. If it is 64K / zone, then a bitmap block manages 16 blocks if it is 1M / zone, then a bitmap block manages 64 blocks if it is 8m / zone, then a bit block manages 256 data. Piece

Supplementary Description TS is defined as an LMT, and the assignment method of uniform size is specified: this is the conclusion that I have tested test test, welcome to correct. Windows 2000 Server, Oracle9205, DB_BLOCK_SIZE = 8K1, when you specify uniform size for TS, TS is uniformly divided by this size in this size, and staying more. 2, when specifying Next, PctinCrease, these parameters are only valid when creating, and the extension is invalid. Example: Create a table space, CREATE TABLESPACE ASSM DATAFILE 'D: /oracle/oradata/encore/ASSM01.DBF' SIZE 50M AUTOEXTEND OFFEXTENT MANAGEMENT LOCAL UNIFORM SIZE 3M SEGMENT SPACE MANAGEMENT AUTO; UNIFORM SIZE 3M create a table: CREATE TABLE ASSMTAB3 (COL1 NUMBER (3)) STORAGE (INITIAL 2M NEXT 5M MINEXTENTS 3 PCTINCREASE 100) TABLESPACE ASSM; See Create results SQL> SELECT sEGMENT_TYPE, TABLESPACE_NAME, EXTENT_ID, BYTES, BLOCKS FROM USER_EXTENTS2 WHERE SEGMENT_NAME = 'ASSMTAB3'; sEGMENT_TYPE TABLESPACE_NAME EXTENT_ID BYTES BLOCKS ------------------------------------------------ -------------------------- Table Assam 0 3145728 384Table Assam 1 3145728 384Table Assam 2 3145728 384Table Assam 3 3145728 384TABLE ASSM 4 3145728 384TABLE ASSM 5 3145728 384SQL> select table_name, INITIAL_EXTENT, NEXT_EXTENT, PCT_INCREASE from user_tables 2 where table_name = 'ASSMTAB3'; tABLE_NAME INITIAL_EXTENT NEXT_EXTENT PCT_INCREASE ------------------------ ---------------------------------------- Assmtab3 17825792 3145728 0Initial_EXTENT = 17825792B = 17m It can be seen that these parameters INITIAL 2M NEXT 5M MINEXTENTS 3 PCTINCREASE 100 is indeed valid: (2) (5) (5 5 * 100%) = 17 m and due to uniform size = 3m, there must be 6 extents Can meet (3M * 6 = 18M) requirements.

转载请注明原文地址:https://www.9cbs.com/read-128893.html

New Post(0)