DB°³³ä

DB³í¸®±¸Á¶

Tablespace

 Oracle°í±Þ  

µ¥ÀÌÅÍ ¿¢¼¼½º¿Í °»½Å

µ¥ÀÌÅÍ µñ¼Å³Ê¸®

¹é¾÷°úº¹±¸

PL/SQL½Ç½À

Cluster ½Ç½À

Index½Ç½À  

Sequence ½Ç½À

 View½Ç½À

SQL½Ç½À

                                                                       ¸ÞÀΠ

Cluster ½Ç½À

¢ÃCluster °³³ä

-Ŭ·¯½ºÅÍ´Â µ¿ÀÏÇÑ µ¥ÀÌÅÍ ºí·Ï¿¡ °øµ¿ÀÇ ¿­(Ŭ·¯½ºÅÍ Å°)À» °øÀ¯ÇÏ´Â ÇÑ °³ ÀÌ»óÀÇ Å×À̺íÀ» ÇÔ²² °ü¸®ÇÏ´Â ÀúÀå ¹æ¹ýÀÌ´Ù.

¢Ñ°ü·ÃµÈ Å×À̺íµéÀ» ÇÑ °³ÀÇ ¼¼±×¸ÕÆ®·Î °ü¸®

-Ŭ·¯½ºÅÍ¿¡ Æ÷ÇÔµÈ Å×À̺íÀº º°µµÀÇ ¼¼±×¸ÕÆ® ¿µ¿ªÀ» ÇÒ´ç¹ÞÁö ¾Ê´Â´Ù.

-Ŭ·¯½ºÅͳ»ÀÇ Å×À̺íÀº ¸¶Ä¡ µ¶¸³ÀûÀÎ Å×À̺íÀÎ °Íó·³ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

-Ŭ·¯½ºÅÍ Å°¿¡ ¿¬°üµÈ °¢ Å×À̺íÀÇ ÇàµéÀº °°Àº µ¥ÀÌÅÍ ºí·Ï¿¡ ÀúÀåµÈ´Ù.

¢Ã Cluster »ç¿ë½Ã ÀåÁ¡

-µð½ºÅ©ÀÇ I/O°¡ °¨¼Ò

-Á¶Àνà ¾×¼¼½º ½Ã°£ ´ÜÃà

¢Ã Cluster Àû¿ë ´ë»ó

-ÁÖ·Î °Ë»öÀÌ ÀϾ°í ¼öÁ¤ÀÌ Àû°Ô ¹ß»ýÇÏ´Â Å×À̺í

-ÇÑ ¿­¿¡ Áߺ¹µÈ °ªÀÌ ¸¹ÀÌ ¿À´Â Å×À̺í

-ÀÚÁÖ Á¶ÀÎÀÌ ÀϾ´Â Å×À̺í

¢Ã Cluster Ű

-Ŭ·¯½ºÅÍ Å°: Ŭ·¯½ºÅÍ µÈ Å×À̺íµéÀÌ °øÅëÀ¸·Î °®´Â ¿­ ¶Ç´Â ¿­ÀÇ ±×·ì

-Ŭ·¯½ºÅÍ Å°·Î ÀûÇÕÇÑ ¿­

.³ÐÀº ¹üÀ§ÀÇ °ªÀ» °®°í ÀÖ´Â ¿­

.º¹¼ö °³ÀÇ Å×À̺í Á¶Àνà »ç¿ëµÇ´Â ¿­

-Ŭ·¯½ºÅÍ Å°·Î ÀûÇÕÇÏÁö ¾ÊÀº ¿­

.±¸ºÐ °ª(distinct values)ÀÌ ÀûÀº ¿­ => Chained block ¹ß»ý

.ºó¹øÇÏ°Ô °»½ÅÀÌ ÀϾ´Â ¿­=> ÇàÀÇ Block À̵¿ ¹ß»ý

¢Ã Cluster »ý¼º

-»ý¼º °úÁ¤

.Cluster »ý¼º

.Cluster Index »ý¼º

.Cluster¿¡ °ü·ÃµÈ Table »ý¼º

-»ý¼º ½Ç½À

SQL> CREATE CLUSTER cl_t1_t2(dno number(2));

SQL> CREATE INDEX idx_cl_t1_t2

ON cluster cl_t1_t2;

SQL> CREATE TABLE t1(eno number(4), enm varchar2(20), dno number(2))

CLUSTER cl_t1_t2(dno);

SQL> CREATE TABLE t2(dno number(2), dnm varchar2(12), loc varchar2(13))

CLUSTER cl_t1_t2(dno);

SQL> INSERT INTO t1 SELECT empno, ename, deptno FROM emp;

SQL> INSERT INTO t2 SELECT deptno, dname, loc FROM dept;

SQL> SELECT * FROM t1;

SQL> SELECT * FROM t2;

SQL> SELECT eno, enm, t1.dno, dnm FROM t1, t2

WHERE t1.dno=t2.dno;

SQL> SELECT * FROM tab;

SQL> SELECT segment_name FROM user_segments;

¢Ã Cluster »èÁ¦

-¸ðµç Å×ÀÌºíµµ ÇÔ²² »èÁ¦µÈ´Ù.

-Ŭ·¯½ºÅÍ À妽ºµµ »èÁ¦µÈ´Ù.

-¸ðµç È®À念¿ªÀº ¹Ý³³µÈ´Ù.

SQL> DROP CLUSTER cl_t1_t2

INCLUDING TABLES

CASCADE CONSTRAINTS;

¢Ã Hash Cluster

¢º Hashing

-µ¥ÀÌÅÍ °Ë»ö ¼º´ÉÀ» Çâ»ó½Ã۱â À§ÇØ Å×ÀÌºí µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â ¼±ÅÃÀûÀÎ ¹æ¹ý

-Å×ÀÌºí ¿­µé¿¡ ´ëÇØ ÇØ½¬ÇÔ¼ö¸¦ Àû¿ëÇÏ¿© °è»êµÈ °á°ú¿¡ µû¶ó ÇàµéÀÇ ÀúÀå À§Ä¡°¡ °áÁ¤µÈ´Ù.

-µ¥ÀÌÅ͸¦ °Ë»öÇϱâ À§ÇØ ÇÊ¿äÇÑ I/O Ƚ¼ö¸¦ ÁÙ¿©ÁØ´Ù.

-HashingÀ» Àû¿ëÇÏ´Â °æ¿ì

.Å×À̺íÀÇ Å©±â°¡ º¯ÇÏÁö ¾Ê´Â °æ¿ì

.ÁúÀÇ ¼º´É ÃÖÀûÈ­°¡ ÁÖ¿ä °ü½É»çÀÎ °æ¿ì

.ÁúÀǰ¡ ÇØ½¬ Ä÷³¿¡ ´ëÇØ µ¿µîÁúÀÇ(¿¹: WHERE empno='7898')ÀÎ °æ¿ì

.ÇØ½¬Å°°¡ Àß ºÐÆ÷µÇ¾î ÀÖ´Â °æ¿ì

¢º Hash Cluster »ý¼º

SQL> CREATE CLUSTER h_std (stid number(7))

HASHKEYS 100SIZE 80

HASH IS stid;

-HASHKEYS: hash Ű °ªÀÇ °¹¼ö

-SIZE: µ¿ÀÏ hash Ű °ªÀ» °®´Â ÇàµéÀ» ÀúÀåÇϱâ À§ÇØ ÇÒ´çÇÏ´Â °ø°£ Å©±â

-HASH IS: Hash °ªÀ» ¸¸µé¾î³»´Â ¿­·Î¼­ Á¤¼öÇü Ä÷³¸¸ °¡´ÉÇÏ´Ù.

SQL> CREATE TABLE std

(stid number(7), stdnm char(12), idnum char(7), clscd char(2))

CLUSTER h_std(stid);

SQL> INSERT INTO std SELECT * FROM students;

SQL> SET TIMING ON

SQL> SELECT * FROM students

WHERE stid=8111001;

SQL> SELECT * FROM std

WHERE stid=8111001;