Á¦Ç°°³¿ä
±â¾÷ °æÀïÀÌ Ä¡¿ÇØÁö¸é¼, ½Ç½Ã°£À¸·Î µ¥ÀÌÅÍ Ã³¸®¸¦ ÇØ¾ß ¿ä±¸°¡ Á¡Á¡ ¸¹¾Æ Áö°í ÀÖ½À´Ï´Ù. ½Ç½Ã°£ °í°´ÀÎÁõ, ½Ç½Ã°£ ÁÖ½Ä ½Ã¼¼, ½Ç½Ã°£ Åë½Å ºô¸µ ó¸® µîÀÇ ºü¸¥ 󸮸¦ ÇÊ¿ä·Î ÇÏ´Â ¾÷¹«¿¡¼ ¸ÞÀÎ ¸Þ¸ð¸® »óÁÖ µ¥ÀÌÅͺ£À̽º °ü¸® ½Ã½ºÅÛ (MMDBMS)ÀÌ µµÀÔÀÌ Áõ°¡ÇÏ°í ÀÖ½À´Ï´Ù. MMDBMS´Â ¸ðµç µ¥ÀÌÅ͸¦ Main Memory¿¡ ¿Ã·Á ³õ°í, µð½ºÅ© Á¢±Ù ¾øÀÌ ÀڷḦ Àаųª »ý¼ºÇÏ´Â ¸ÞÀÎ ¸Þ¸ð¸® »óÁÖÇü DBMS·Î½á ½Ç½Ã°£ µ¥ÀÌÅÍ Ã³¸®¸¦ °¡´ÉÄÉ ÇÕ´Ï´Ù. Disk DBMS¿¡¼´Â µð½ºÅ©¿¡ ÀÖ´Â ÀϺΠµ¥ÀÌÅ͸¦ ¸Þ¸ð¸®¿¡ ij½³ÇÏ¿© ó¸® ¼º´ÉÀ» Çâ»ó½ÃÅ°Áö¸¸, MMDBMS¿¡¼´Â ¸ðµç µ¥ÀÌÅ͸¦ ¸Þ¸ð¸®¿¡ »óÁÖ½ÃÄÑ ½Ç½Ã°£ ó¸® ¼º´ÉÀ» Çâ»ó ½Ãŵ´Ï´Ù.
Ƽº£·Î(Tibero) MMDBMS´Â ÁÖ±â¾ïÀåÄ¡ »óÁÖÇü DBMS·Î½á ±âÁ¸ µð½ºÅ© ±â¹ÝÀÇ RDBMS º¸´Ù °í¼º´É Æ®·£Àè¼Ç 󸮰¡ ¿ä±¸µÇ´Â ¾÷¹«¿¡ ÀûÇÕÇÕ´Ï´Ù. ¶ÇÇÑ, ¸Þ¸ð¸® ±â¹ÝÀÇ ½Ç½Ã°£ µ¥ÀÌÅÍ Ã³¸®¿¡ ÃÖÀûÈµÈ DBMS¸¦ ¸ñÇ¥·Î ÇÏ¿© º¸´Ù ¾ÈÁ¤ÀûÀÌ°í È¿À²ÀûÀÎ ¾ÆÅ°ÅØó¸¦ äÅÃÇÏ¿´À¸¸ç, Ç¥ÁØ ¹× ȣȯ¼º¿¡ ÁßÁ¡À» µÐ À¯¿¬ÇÏ°í Æí¸®ÇÑ °³¹ß ¹× ¿î¿µ °ü¸® ȯ°æÀ» Á¦°øÇÏ´Â ´ëÇ¥ÀûÀÎ ¸ÞÀÎ ¸Þ¸ð¸® µ¥ÀÌÅͺ£À̽º °ü¸® ½Ã½ºÅÛ ÀÔ´Ï´Ù.
Foreground Process
È¿À²ÀûÀÎ ÀÚ¿ø È°¿ëÀ» À§ÇØ ½º·¹µå (thread) ±â¹Ý ±¸Á¶·Î ClientÀÇ ºü¸¥ Á¢¼ÓÀÌ °¡´ÉÇϸç, ¼¼¼Ç Áõ°¡¿¡µµ ºÎÇÏ°¡ ÃÖ¼ÒÈ µÊ. Foreground Process´Â Ŭ¶óÀ̾ðÆ®¿Í ½ÇÁ¦·Î Åë½ÅÀ» ¼öÇàÇÏ¸ç »ç¿ëÀÚÀÇ ¿ä±¸»çÇ×À» ó¸®
Background Process
- Working thread³ª ´Ù¸¥ background Process°¡ ¿äûÇÒ ¶§, ȤÀº Á¤ÇØÁø Áֱ⿡ µû¶ó ¿òÁ÷À̸ç ÁÖ·Î ½Ã°£ÀÌ ¿À·¡ °É¸®´Â µð½ºÅ© ÀÛ¾÷À» ´ã´ç
- Garbage collector process, check point process, log writer
Tibero Shared Memory
- µ¥ÀÌÅͺ£À̽º°¡ ¼ºñ½ºµÇ¸é¼ ÇÊ¿äÇÑ ÀÛ¾÷µéÀÌ ¼öÇàµÇ´Â ¿µ¿ª
- Tibero MMDBMS ±âµ¿µÉ ¶§ ÇÒ´çµÇ´Â ¿µ¿ªÀ¸·Î ¸ðµç »ç¿ëÀÚµéÀÌ °øÀ¯ÇÏ¿© »ç¿ë
Tibero Listener
- Tibero Listner ´Â Tibero ½ÃÀÛÇÒ ¶§ µ¿½Ã¿¡ ±âµ¿µÊ.
- Ŭ¶óÀ̾ðÆ®ÀÇ Á¢¼Ó ¿äûÀ» ¹Þ¾Æ ÈÞÁö »óÅÂÀÇ Working Process ¿¡°Ô ³Ñ°Ü ÁÖ´Â ¿ªÇÒ
Working Process
- ÄÁÆ®·Ñ ½º·¹µå : ¼¹ö ½ÃÀÛ ½Ã¿¡ ¿öÅ· ½º·¹µå(WTHR) ¸¦ »ý¼ºÇÏ°í Á¢¼Ó ¿äûÀÌ µé¾î¿À¸é ÈÞÁö »óÅÂÀÇ Working Thread ¿¡ ¼¼¼ÇÀ» ÇÒ´çÇÑ´Ù
- ¿öÅ· ½º·¹µå : Ŭ¶óÀ̾ðÆ®¿Í 1:1 ·Î ¼¼¼Ç ¿¬°áµÇ¾î ¿äûÀ» ¹Þ¾Æ ó¸®ÇÏ°í °á°ú¸¦ Return ÇÏ´Â ¿ªÇÒ
Memory Table Space
¼¹ö ½ÇÇà ½Ã ½ÇÁ¦ Å×À̺í Á¤º¸°¡ ÀûÀçµÇ´Â ¸Þ¸ð¸® °ø°£
Data Image File
Check point process°¡ ÁÖ±âÀûÀ¸·Î ¼öÇàÇÏ¸ç ¸¸µé¾î³»´Â memory table space À̹ÌÁö ÆÄÀÏ. ¼¹ö Àç±âµ¿, Àå¾Ö¹ß»ý½Ã log writer°¡ ¸¸µç log¸¦ ÀÌ¿ëÇؼ ¿ø·¡ µ¥ÀÌÅ͸¦ º¹±¸Çϴµ¥ »ç¿ëµÊ
Log
memory databaseÀÏÁö¶óµµ insert, update, delete µîÀÇ DML(data manipulation language) Äõ¸®°¡ ¼öÇàµÇ¸é ¸ÕÀú disk·Î log¸¦ ³²±ä ´ÙÀ½ memory table space¿¡ ¹Ý¿µ (WAL:write ahead log) ¼¹ö¿¡ Àå¾Ö°¡ ¹ß»ýÇÏ´õ¶óµµ ¿Ïº®ÇÑ µ¥ÀÌÅÍ º¹±¸ °¡´É
¼³Ä¡ ȯ°æ
|
AIX |
HP |
Solaris |
Linux |
OS |
5.2 5.3 |
11.11 11.23 (PA-RISc) 11.23 (IA64) |
2.8 2.9 10 |
kernel 2.6 or higher RadHat °è¿, Asianux, Ginux etc |
JDK&JRE |
IBM JDK 1.4.2 or higher |
Java SDK 1.4.2.0 or higher |
JDK 1.4.2 or higher |
JDK 1.4.2 or higher |
H/W |
Disk Space : 256M or higher RAM : 128Mb or higher |
´Ü°èº° ÀÚ¿ø Àç»ç¿ë ±Ø´ëÈ
- Query Result Cache
- Lightweight Plan Cache Plan¿¡¼ÀÇ DD Á¤º¸ reference
- Shared Cursor
CPU ¿¬»ê ´ëÆø °¨¼Ò
- Query Result Pipelining
- Expression Cache ? ºó¹øÇÏ°Ô »ç¿ëµÇ´Â ¿¬»ê½ÄÀÇ °á°ú¸¦ cache
°í¼º´É ÁúÀÇó¸®
- ´Ü¼ø ÁúÀÇ ¹× º¹ÀâÇÑ ÁúÀǸ¦ °í¼º´ÉÀ¸·Î ó¸®
- MMDBMSÀÇ Á¦ÇÑµÈ ¿µ¿ª »Ó¸¸ ¾Æ´Ï¶ó, ÀϹÝÀû ±â¾÷ ¾÷¹«¿¡ Àû¿ë È®´ë °¡´É
Á¤ÇÕ¼º ¹®Á¦¸¦ ÇØ°áÇÏ´Â ¿Ïº®ÇÑ °í°¡¿ë¼º
- Distributed LockÀ» ÀÌ¿ëÇÑ Sync Replication Àû¿ë °¡´É
- ÀÏ¹Ý MMDBMS°¡ Async·Î ¿î¿µµÇ¾î ¹ß»ýµÇ´Â µ¥ÀÌÅÍ Á¤ÇÕ¼º ¹®Á¦¸¦ ÇØ°á
¹ü¿ë RDBMS ¼öÁØÀÇ ½Å·Ú¼º
- LogÀÇ µð½ºÅ© ÀúÀå ±â´ÉÀ» Default¸¦ »ç¿ëÇÏ¿©, ½Ã½ºÅÛ Àå¾Ö ½Ã¿¡µµ µ¥ÀÌÅÍ À¯½ÇÀÌ ¹ß»ýÇÏÁö ¾ÊÀ½
- ¹ü¿ë Disk RDBMS ¼öÁØÀÇ ½Å·Ú¼º Á¦°ø
Ç¥ÁØ Áؼö ¹× ȣȯ¼º Áö¿ø
- ¹ü¿ë RDBMS¿Í µ¿ÀÏÇÑ SQL Á¦°øÇÏ¿© ±âº» ¾ÖÇø®ÄÉÀ̼ÇÀÇ ½Å¼ÓÇÑ º¯È¯ °¡´É
- °í±Þ Äõ¸® ±â´É Á¦°ø (ºÐ¼®ÇÔ¼ö, °èÃþÀû ÁúÀÇ µî)
- ´Ù¾çÇÑ °³¹ß ȯ°æ Áö¿ø (ODBC, JDBC, CLI, ESQL, Stored Procedure)
CBO ±â¹ÝÀÇ ÁúÀÇó¸® ÃÖÀûÈ
- ºñ¿ë±â¹Ý ÃÖÀûÈ(CBO: Cost-Based Optimization)¿¡ ±â¹ÝÇÑ ÁúÀÇ Ã³¸®ÀÇ ¼º´É ÃÖÀûÈ
- Dynamic Sampling Áö¿ø (»ç¿ëÀÚ °³ÀÔ ¾øÀÌ ÁúÀÇ ÃÖÀûÈ)
MVCC ±â¹ÝÀÇ ´ÙÁß »ç¿ëÀÚ Ã³¸® ÃÖÀûÈ
- ´ÙÁß ¹öÀü µ¿½Ã¼º Á¦¾î(MVCC: Mutli-Version Concurrency Control) ±â¹ýÀÇ Àû¿ëÀ» ÅëÇÑ ´ÙÁß »ç¿ëÀÚ Á¢¼ÓÀÇ µ¿½Ã ó¸® ¼º´É Çâ»ó
- ¾²±â ÀÛ¾÷ÀÌ Àбâ ÀÛ¾÷À» Â÷´ÜÇϰųª Àбâ ÀÛ¾÷ÀÌ ¾²±â ÀÛ¾÷À» Â÷´ÜÇÏ´Â »óȲÀÌ ¹ß»ýÇÏÁö ¾ÊÀ½
Row-Level Locking ÅëÇÑ ¼º´É¿À¹öÇìµå ÃÖ¼ÒÈ
- Row-Level Locking ±â¹ýÀÇ »ç¿ëÀ» ÅëÇØ º¸´Ù ´õ ¸¹Àº »ç¿ëÀÚ ¼ö¿ë
- Lock Escalation ȸÇǸ¦ ÅëÇÑ ¼º´É ¿À¹öÇìµå ÃÖ¼ÒÈ
µ¿Àû ¸Þ¸ð¸® Á¦¾î¸¦ ÅëÇÑ ÀÚ¿ø È°¿ë ±Ø´ëÈ
- »ç¿ëÀÚ ¿äûÀ» ó¸®ÇÏ´Â °úÁ¤¿¡¼ °¢ ÇÁ·Î¼¼½º³ª ¾²·¹µå°¡ ½Ã½ºÅÛÀÇ ºÎÇÏ¿¡ µû¶ó ¸Þ¸ð¸® »ç¿ë·®À» µ¿ÀûÀ¸·Î ÀÚµ¿ Á¶Àý ÇÏ¿© ¸Þ¸ð¸® »ç¿ëÀÇ È¿À² ±Ø´ëÈ (Memory AutoTuner) ÇöÀçÀÇ ½Ã½ºÅÛ ºÎÇÏ¿Í °ú°Å »ç¿ë Åë°è·ÎºÎÅÍ ¸Þ¸ð¸® »ç¿ë·®À» ¿¹ÃøÇÏ¿© ÀÛ¾÷ ¼öÇàÀ» À§ÇÑ ÃÖÀûÀÇ ¸Þ¸ð¸® ÇÒ´ç
Data Image ¹× Redo ·Î±× À¯Áö
- ¾ÈÀü¼ºÀ» º¸ÀåÇϱâ À§ÇØ ¸ÞÀÎ ¸Þ¸ð¸®ÀÇ µ¥ÀÌÅ͸¦ Disk¿¡µµ ÀÌÁßÈÇÏ¿© ¾ÈÁ¤¼ºÀ» È®º¸
- Disk¿¡µµ Data Image ¹× Redo Log¸¦ À¯ÁöÇϸç, Redo Log ÆÄÀÏ¿¡ ´ëÇÑ ÀÌÁßȵµ Áö¿ø
°í°¡¿ë¼º Áö¿ø (High Availability)
- ³ëµå°£ Active-Active ReplicationÀ» ÅëÇÏ¿© µ¥ÀÌÅÍÀÇ Á¤ÇÕ¼ºÀ» ¾ÈÀüÇÏ°Ô À¯Áö
- Ÿ MMDBMS¿Í´Â ´Þ¸® Active-Active Replication¿¡¼µµ µ¥ÀÌÅÍ Ãæµ¹ÀÌ ¹ß»ýÇÏÁö ¾ÊÀ½
¹ü¿ë DBMS¿Í ȣȯ¼º Á¦°ø
- SQL Syntax, SQL Hint µîÀÇ ¹ü¿ë DBMS¿Í ȣȯ¼º Á¦°ø
- SLQ Ç¥ÁØ Áؼö ¹× ´Ù¾çÇÑ Ç¥ÁØ °³¹ß ÀÎÅÍÆäÀ̽º Á¦°ø
½Ç½Ã°£ µ¥ÀÌÅÍ Ã³¸® ±¸Çö
- ±âÁ¸ÀÇ Disk DBMS¿¡ ºñÇÏ¿©, 30~100 ¹è Á¤µµÀÇ Ã³¸® ¼Óµµ°¡ Çâ»óµÇ¾î ½Ç½Ã°£ ¾÷¹« ¹× µ¥ÀÌÅÍ Ã³¸®¸¦ ¿Ïº®ÇÏ°Ô Áö¿ø
- µ¥ÀÌÅÍ·®ÀÌ Áõ°¡Çϸé Áõ°¡ÇÒ¼ö·Ï ó¸® ¼º´ÉÀÇ Â÷ÀÌ´Â Çö°ÝÇÏ°Ô Áõ°¡
- Åë½ÅÀÇ Billing ¹× À§Ä¡±â¹Ý, ÀºÇàÀÇ ´ë¿ÜÁ¢¼Ó, Áõ±ÇÀÇ ½Ã¼¼ ¹× ÁÖ¹® ü°á µî ´Ù¾çÇÑ ºÐ¾ß¿¡ Àû¿ë °¡´É
µ¥ÀÌÅÍ ¼Õ½Ç À§ÇèÀÌ Á¦°ÅµÇ¾î ¾ÈÁ¤ÀûÀÎ ¼ºñ½º ±¸Çö
- Disk¿¡µµ Data Image ¹× Redo Log¸¦ Á¤±âÀû ¾÷µ¥ÀÌÆ® ÇÏ¿© µ¥ÀÌÅÍ ¼Õ½Ç¿¡ ´ëÇÑ À§Çè Á¦°Å
- Redo Log ÆÄÀÏ¿¡ ´ëÇÑ ÀÌÁßȵµ °¡´ÉÇÏ¿© ¾ÈÁ¤ÀûÀÎ ¼ºñ½º ±¸ÇöÀÌ °¡´É
- Active-Active ReplicationÀÌ °¡´ÉÇÏ¿© µ¥ÀÌÅÍÀÇ Á¤ÇÕ¼ºÀ» ÀÚµ¿ÀûÀ¸·Î ¾ÈÀüÇÏ°Ô À¯Áö
±âÁ¸ ½Ã½ºÅÛ¿¡ ¼Õ½¬¿î Àû¿ëÀÌ °¡´ÉÇÑ È£È¯¼º
- ±âÁ¸ ¹ü¿ë DBMS¿Í ¼Ò½º¼öÁØÀÇ È£È¯¼º Á¦°øÇÏ¿©, ±â °³¹ßµÈ ¾ÖÇø®ÄÉÀÌ¼Ç Àû¿ëÀÌ ¿ëÀÌ
- JEUS, TMAX, TIBERO µî Ƽ¸Æ½º¼ÒÇÁÆ®ÀÇ ´Ù¾çÇÑ Á¦Ç°°ú °·ÂÇÑ È£È¯¼º Á¦°ø
Àû¿ëºÐ¾ß1
¾÷Á¾ |
Áõ±Ç»ç |
¾÷¹« |
½Ã¼¼Á¶È¸, ÁÖ¹®Ã¼°á ½Ã½ºÅÛ |
Àû¿ëÀÌÀ¯ |
󸮼ӵµ°¡ »ç¾÷ÀÇ ¼ºÆи¦ °áÁ¤Çϱ⠶§¹®¿¡ °í¼º´É MMDBMS Àû¿ë ÇÊ¿ä |
Àû¿ëºÐ¾ß2
¾÷Á¾ |
Åë½Å, Àü¾÷Á¾ÀÇ ¼º´É°ü¸® ºÎ¹® |
¾÷¹« |
´ë·® °Å·¡ ¶Ç´Â ´ë·®ÀÇ ³×Æ®¿öÅ© Æ®·¡ÇÈ ½Ç½Ã°£ ¸ð´ÏÅ͸µ |
Àû¿ëÀÌÀ¯ |
´ë·®ÀÇ °Å·¡ Á¤º¸¸¦ ½Ç½Ã°£À¸·Î ¼öÁýÇÏ°í, ½Ç½Ã°£À¸·Î ºÐ¼®Çؼ Á¦°ø |