ÀÎÅÍ³Ý ¼îÇθô¿¡¼ÀÇ DBMS º¥Ä¡¸¶Å© Å×½ºÆ®
- ¸®´ª½º ±â¹ÝÀÇ CUBRID, ´ëÇ¥ »ó¿ë DB, MySQL ¼º´É ºñ±³
¿ä¾à
º» ¹®¼´Â ¿¬¼¼´ëÇб³ »êÇÐÇù·Â´Ü ¹Ú»óÇö ±³¼öÆÀÀÌ ¼öÇàÇÑ ¡°LINUX »ó¿¡¼ ¿î¿µµÇ´Â °ü°èÇü DBMS ¼º´É ºÐ¼® ¼ÒÇÁÆ®¿þ¾î °³¹ß¡± °úÁ¦ÀÇ »êÃâ¹°ÀÎ ¡°DBBench¡± ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ¿© ÀÛ¼ºµÇ¾úÀ¸¸ç, BMT °á°úÀÎ ¡°°ø°³ S/W »êÇÐ Çù·Â ÇÁ·ÎÁ§Æ® º¥Ä¡¸¶Å© °á°ú º¸°í¼¡±¸¦ Á¤¸®ÇÑ °ÍÀÌ´Ù.
DBBench´Â TPC-W ±â¹ÝÀÇ µ¥ÀÌÅͺ£À̽º Æ®·£Àè¼Ç Å×½ºÆ®¸¸À» ¼öÇàÇÏ´Â µµ±¸·Î¼ ÀÎÅÍ³Ý ¼îÇÎÀ» ¸ðµ¨¸µ ÇÏ¿´À¸¸ç, TPC-W Å×½ºÆ®ÀÇ µ¥ÀÌÅͺ£À̽º ½ºÅ°¸¶¿Í ÁúÀÇ ¸ñ·ÏÀ» ÀÌ¿ëÇϰí ÀÖ´Ù. ¾Æ¿ï·¯, TPC-WÀÇ ¸ðµç ÁúÀÇ´Â ¹Ì¸® ÀúÀåµÈ ÀúÀå ÇÁ·Î½ÃÀú(stored procedure)¸¦ »ç¿ëÇÏ¿© ÁúÀÇ ³»ºÎ¿¡¼ º¹ÀâÇÑ Ã³¸®¸¦ Çϴµ¥ ºñÇØ, DBBench´Â ÀúÀå ÇÁ·Î½ÃÀú¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù. µû¶ó¼, TPC-WÀÇ ÁúÀǸ¦ ´Ü¼øÈÇÏ¿© º¥Ä¡¸¶Å© ¿¹Á¦¸¦ ÀÛ¼ºÇÏ¿´´Ù.
¿¬¼¼´ë¿¡¼ ¼öÇàÇÑ À̹ø º¥Ä¡¸¶Å© Å×½ºÆ®´Â CUBRID, ÃÖ»óÀ¸·Î ¾Ë·ÁÁø ´ëÇ¥ »ó¿ë DB, MySQLÀ» ´ë»óÀ¸·Î ÇÏ¿´À¸¸ç, A~F±îÁöÀÇ 6°³ Å×½ºÆ® ¼ÂÀ¸·Î µÇ¾î ÀÖ´Ù. A~C setÀº 10 user·Î »ç¿ëÀÚ¸¦ °íÁ¤Çϰí, A set´Â 1,000 item, B set´Â 10,000 item, C set´Â 100,000 itemÀ» ´ë»óÀ¸·Î Å×½ºÆ®¸¦ ÁøÇàÇÏ¿´À¸¸ç, D~F set´Â itemÀ» 10,000À¸·Î °íÁ¤Çϰí D set´Â 1 user, E set´Â 10 user, F set´Â 100 userÀ» ´ë»óÀ¸·Î Å×½ºÆ®°¡ ¼öÇàµÇ¾ú´Ù.
A~C set¿¡ ´ëÇÑ Å×½ºÆ®´Â 10 User¸¦ ´ë»óÀ¸·Î DB »çÀÌÁ DBMS 󸮼ӵµ¸¦ ³ªÅ¸³»°í ÀÖÀ¸¸ç, ¾Æ·¡ÀÇ ±×¸²¿¡¼¿Í °°ÀÌ CUBRID¿Í ´ëÇ¥ »ó¿ë DB´Â DB »çÀÌÁîÀÇ Áõ°¡¿¡ Å©°Ô ¿µÇâÀ» ¹ÞÁö ¾ÊÁö¸¸, MySQLÀº DB »çÀÌÁî°¡ Áõ°¡ÇÏ¸é¼ Ã³¸®¼Óµµ°¡ ±Þ°ÝÇÏ°Ô °¨¼ÒÇÏ´Â °ÍÀ» º¼ ¼ö ÀÖ´Ù. ƯÈ÷, 10,000 itemÀ» ´ë»óÀ¸·Î ÇÏ´Â middle DB »çÀÌÁî(B set) ¿¡ ´ëÇÑ Å×½ºÆ®ÀÇ °æ¿ì¿¡´Â CUBRID°¡ ÃÊ´ç 51.87°³ÀÇ Æ®·£Àè¼ÇÀ» ó¸®ÇØ, ´ëÇ¥ »ó¿ë DBÀÇ 50.22°³¸¦ ±Ù¼ÒÇÏ°Ô ¾Õ¼°í ÀÖ´Ù.

D~F set¿¡ ´ëÇÑ Å×½ºÆ®´Â DB »çÀÌÁ 10,000 itemÀ¸·Î °íÁ¤ÇÏ°í µ¿½Ã »ç¿ëÀÚ ¼ö¸¦ Áõ°¡½Ãų ¶§ÀÇ DBMS ¼º´ÉÀ» ÃøÁ¤ÇÏ¿´´Ù. ¾Æ·¡ÀÇ ±×¸²¿¡¼¿Í °°ÀÌ CUBRID¿Í ´ëÇ¥ »ó¿ë DB´Â µ¿½Ã »ç¿ëÀÚ ¼öÀÇ Áõ°¡¿¡ Å©°Ô ¿µÇâÀ» ¹ÞÁö ¾ÊÁö¸¸, MySQLÀº µ¿½Ã »ç¿ëÀÚ ¼ö°¡ Áõ°¡ÇÏ¸é¼ DBMSÀÇ ¼º´ÉÀÌ ±Þ°ÝÈ÷ °¨¼ÒÇÏ´Â °ÍÀ» º¼ ¼ö ÀÖ´Ù. ƯÈ÷, 100 userÀÇ °æ¿ì¿¡´Â CUBRID°¡ userº° ÃÊ(Sec)´ç ó¸® Æ®·£Àè¼Ç ¼ö°¡ 4.09°³·Î ´ëÇ¥ »ó¿ë DBÀÇ 3.42°³ º¸´Ù ¼º´ÉÀÌ ¿ì¼öÇÔÀ» ¾Ë ¼ö ÀÖ´Ù.
DBBench¸¦ ÀÌ¿ëÇÑ DBMSÀÇ º¥Ä¡¸¶Å© Å×½ºÆ®¸¦ ÅëÇØ CUBRID¿Í ´ëÇ¥ »ó¿ë DB´Â DB Å©±âÀÇ Áõ°¡¿Í µ¿½Ã »ç¿ëÀÚ ¼öÀÇ Áõ°¡¿¡ Å©°Ô ¿µÇâÀ» ¹ÞÁö ¾ÊÁö¸¸, MySQLÀº DB Å©±âÀÇ Áõ°¡¿Í µ¿½Ã »ç¿ëÀÚ ¼öÀÇ Áõ°¡°¡ ¼º´É¿¡ ¸¹Àº ¿µÇâÀ» ÁÖ°í ÀÖÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù.
1. º¥Ä¡¸¶Å© ¿¹Á¦
2. À¯ÀÇ»çÇ×
3. º¥Ä¡¸¶Å© ¼öÇà ½Ã½ºÅÛ
4. º¥Ä¡¸¶Å© Ç׸ñ
5. º¥Ä¡¸¶Å© µ¥ÀÌÅÍ ¼Â
6. ½ÇÇè ´ë»ó DBMS
7. º¥Ä¡¸¶Å© Àμö
8. º¥Ä¡¸¶Å© °á°ú
A. DBMSº° µ¥ÀÌÅÍ ¼Â AÀÇ º¥Ä¡¸¶Å© °á°ú
B. DBMSº° µ¥ÀÌÅÍ ¼Â BÀÇ º¥Ä¡¸¶Å© °á°ú
C. DBMSº° µ¥ÀÌÅÍ ¼Â CÀÇ º¥Ä¡¸¶Å© °á°ú
D. DBMSº° µ¥ÀÌÅÍ ¼Â DÀÇ º¥Ä¡¸¶Å© °á°ú
E. DBMSº° µ¥ÀÌÅÍ ¼Â EÀÇ º¥Ä¡¸¶Å© °á°ú
F. DBMSº° µ¥ÀÌÅÍ ¼Â FÀÇ º¥Ä¡¸¶Å© °á°ú
G. Query ÇüÅ¿¡ µû¸¥ transaction ´ÜÀ§ÀÇ ¼º´É ºÐ¼®
º¥Ä¡¸¶Å© ¿¹Á¦´Â TPC-W Å×½ºÆ®(http://www.tpc.org/tpcw/default.asp)¸¦ ±â¹ÝÀ¸·Î ÇÑ´Ù. TPC-W´Â Transactional Web e-Commerce Benchmark·Î, À¥ ±â¹ÝÀÇ ¾ÖÇø®ÄÉÀÌ¼Ç ¼º´É Å×½ºÆ®¸¦ ¼öÇàÇÏ´Â º¥Ä¡¸¶Å© Ç¥ÁØÀÇ ÇϳªÀÌ´Ù.
TPC-W´Â ÀÎÅÍ³Ý ¼îÇθôÀ» ½Ã¹Ä·¹À̼ÇÇϸç, ´ÙÀ½°ú °°Àº ¸ðµâ·Î ±¸¼ºµÇ¾î ÀÖ´Ù.
ÀÌ Áß¿¡¼ °¡Àå Å« ºñÁßÀ» Â÷ÁöÇÏ´Â SUT ¸ðµâÀº ³×Æ®¿öÅ© ÄÄÆ÷³ÍÆ®, À¥ ¼¹ö, ¾ÖÇø®ÄÉÀÌ¼Ç ¼¹ö, ±×¸®°í µ¥ÀÌÅͺ£À̽º Æ®·£Àè¼Ç ¼¹ö¸¦ Æ÷ÇÔÇÑ´Ù.
DBBench ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿©, SUT ¸ðµâÀÇ µ¥ÀÌÅͺ£À̽º Æ®·£Àè¼Ç Å×½ºÆ®¸¦ ¼öÇàÇÒ ¼ö ÀÖ´Ù. µû¶ó¼, º» º¥Ä¡¸¶Å©´Â TPC-W Å×½ºÆ®ÀÇ µ¥ÀÌÅͺ£À̽º ½ºÅ°¸¶¿Í ÁúÀÇ ¸ñ·ÏÀ» Å×½ºÆ® ÆÄÀÏ·Î ±¸ÇöÇÏ¿´´Ù.
´Ü, TPC-WÀÇ ¸ðµç ÁúÀÇ´Â ¹Ì¸® ÀúÀåµÈ ÀúÀå ÇÁ·Î½ÃÀú(stored procedure)¸¦ »ç¿ëÇÏ¿© ÁúÀÇ ³»ºÎ¿¡¼ º¹ÀâÇÑ Ã³¸®¸¦ Çϴµ¥ ºñÇØ, DBBench ÇÁ·Î±×·¥¿¡¼´Â ÀúÀå ÇÁ·Î½ÃÀú¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù. µû¶ó¼, TPC-WÀÇ ÁúÀǸ¦ ´Ü¼øÈÇÏ¿© º¥Ä¡¸¶Å© ¿¹Á¦¸¦ ÀÛ¼ºÇÏ¿´´Ù.
TPC-W ¿¹Á¦ ´Ü¼øÈ ÀÛ¾÷ÀÇ ±âÁØÀº ´ÙÀ½°ú °°´Ù.
º¥Ä¡¸¶Å© ¿¹Á¦ÀÇ Å×ÀÌºí ±¸Á¶´Â ´ÙÀ½°ú °°´Ù.

º¥Ä¡¸¶Å© Å×½ºÆ® °á°ú È®Àνà À¯ÀÇÇÒ Á¡Àº ´ÙÀ½°ú °°´Ù.
(¼ýÀÚ´Â ·¹ÄÚµå ¼ö¸¦ ÀǹÌÇÔ)
|
A |
B |
C |
|
#user |
10 |
10 |
10 |
°íÁ¤ |
#item |
1,000 |
10,000 |
100,000 |
º¯¼ö |
#author |
250 |
250 |
250 |
(#item * 1/4) |
#customer |
28,800 |
28,800 |
28,800 |
(#user * 2,880) |
#address |
57,600 |
57,600 |
57,600 |
(#customer * 2) |
#order |
25,920 |
25,920 |
25,920 |
(#customer * 0.9) |
#cc_macts |
25,920 |
25,920 |
25,920 |
(#customer * 0.9) |
#order_line |
77,760 |
77,760 |
77,760 |
(#order * 3) |
#country |
100 |
100 |
100 |
default |
|
D |
E ( = B) |
F |
|
#user |
1 |
10 |
100 |
º¯¼ö |
#item |
10,000 |
10,000 |
10,000 |
°íÁ¤ |
#author |
2,500 |
2,500 |
2,500 |
(#item * 1/4) |
#customer |
2,880 |
28,800 |
288,000 |
(#user * 2880) |
#address |
5,760 |
57,600 |
576,000 |
(#customer * 2) |
#order |
2,592 |
25,920 |
259,200 |
(#customer * 0.9) |
#cc_macts |
2,592 |
25,920 |
259,200 |
(#customer * 0.9) |
#order_line |
7,776 |
77,760 |
777,600 |
(#order * 3) |
#country |
100 |
100 |
100 |
default |
* B¿Í E´Â µ¿ÀÏÇÑ ÇüÅÂÀÇ µ¥ÀÌÅÍ ¼ÂÀ̹ǷΠÇϳª·Î Ãë±Þ
8. º¥Ä¡¸¶Å© °á°ú(°¢ DBMSº°·Î 5ȸ ½ÇÇàÇÑ Æò±Õ°ª)
A. DBMSº° µ¥ÀÌÅÍ ¼Â AÀÇ º¥Ä¡¸¶Å© °á°ú
Dataset A |
Transactions/Sec |
||
Small DB size (1,000 items) |
|||
MySQL |
´ëÇ¥ »ó¿ë DB |
CUBRID |
|
AVG |
144.16 |
53.35 |
50.97 |
1 |
87.55 |
43.72 |
50.31 |
2 |
162.10 |
52.53 |
52.5 |
3 |
173.86 |
56.31 |
53.49 |
4 |
80.36 |
57.76 |
44.82 |
5 |
216.92 |
56.43 |
53.71 |

B. DBMSº° µ¥ÀÌÅÍ ¼Â BÀÇ º¥Ä¡¸¶Å© °á°ú
Dataset B |
Transactions/Sec |
||
Middle DB size (10,000 items) |
|||
MySQL |
´ëÇ¥ »ó¿ë DB |
CUBRID |
|
AVG |
31.04 |
50.22 |
51.87 |
1 |
21.72 |
46.09 |
50.75 |
2 |
35.92 |
46.47 |
52.42 |
3 |
32.77 |
54.86 |
53.7 |
4 |
25.88 |
50.26 |
51.24 |
5 |
38.90 |
53.43 |
51.23 |
C. DBMSº° µ¥ÀÌÅÍ ¼Â CÀÇ º¥Ä¡¸¶Å© °á°ú
Dataset C |
Transactions/Sec |
||
Large DB size (100,000 items) |
|||
MySQL |
´ëÇ¥ »ó¿ë DB |
CUBRID |
|
AVG |
0.86 |
13.56 |
11.11 |
1 |
0.78 |
10.26 |
9.56 |
2 |
0.94 |
17.87 |
11.72 |
3 |
0.90 |
13.05 |
11.52 |
4 |
0.78 |
12.85 |
11.68 |
5 |
0.89 |
13.76 |
11.08 |


D. DBMSº° µ¥ÀÌÅÍ ¼Â DÀÇ º¥Ä¡¸¶Å© °á°ú
Dataset D |
Transaction/Sec |
||
1 user |
|||
MySQL |
´ëÇ¥ »ó¿ë DB |
CUBRID |
|
AVG |
52.42 |
53.83 |
55.47 |
1 |
42.60 |
52.33 |
39.3 |
2 |
56.89 |
50.72 |
54.59 |
3 |
51.57 |
55.66 |
61.87 |
4 |
45.57 |
54.09 |
60.59 |
5 |
65.48 |
56.37 |
61.01 |

E. DBMSº° µ¥ÀÌÅÍ ¼Â EÀÇ º¥Ä¡¸¶Å© °á°ú
Dataset E |
Transaction/Sec |
||
10 users |
|||
MySQL |
´ëÇ¥ »ó¿ë DB |
CUBRID |
|
AVG |
31.04 |
50.22 |
51.87 |
1 |
21.72 |
46.09 |
50.75 |
2 |
35.92 |
46.47 |
52.42 |
3 |
32.77 |
54.86 |
53.7 |
4 |
25.88 |
50.26 |
51.24 |
5 |
38.90 |
53.43 |
51.23 |

F. DBMSº° µ¥ÀÌÅÍ ¼Â FÀÇ º¥Ä¡¸¶Å© °á°ú
Dataset F |
Transaction/Sec |
||
100 users |
|||
MySQL |
´ëÇ¥ »ó¿ë DB |
CUBRID |
|
AVG |
0.80 |
3.42 |
4.09 |
1 |
0.64 |
2.82 |
4.06 |
2 |
0.88 |
3.40 |
4.28 |
3 |
0.84 |
3.59 |
4.02 |
4 |
0.70 |
3.58 |
3.87 |
5 |
0.93 |
3.69 |
4.2 |


G. Query ÇüÅ¿¡ µû¸¥ transaction ´ÜÀ§ÀÇ ¼º´É ºÐ¼®
Transaction |
Query type ( ÁÖ·Î ½ÇÇàµÇ´Â ÁúÀÇ ÇüÅ ) |
AC |
Query |
AR |
Query |
BS |
JOIN query |
BC |
insert, update |
BR |
insert, update |
HO |
JOIN query |
NP |
Query |
OD |
Query |
OI |
Query |
PD |
Query |
SR |
JOIN query |
SU |
LIKE query |
SC |
insert, update |
- MySQL ¼öÇà ½Ã°£ ºñÀ²(´ÜÀ§: %)
Transaction |
A |
B |
C |
D |
F |
AC |
2.68 |
2.79 |
6.18 |
1.19 |
4.84 |
AR |
0.53 |
0.83 |
0.14 |
0.17 |
3.09 |
BS |
2.02 |
1.40 |
0.29 |
3.59 |
4.83 |
BC |
26.29 |
6.50 |
0.59 |
7.29 |
10.90 |
BR |
30.70 |
6.41 |
0.48 |
5.94 |
17.46 |
HO |
1.47 |
0.41 |
0.06 |
0.80 |
4.80 |
NP |
1.88 |
1.46 |
0.24 |
3.32 |
6.46 |
OD |
4.03 |
0.65 |
0.08 |
0.98 |
5.99 |
OI |
0.96 |
0.17 |
0.02 |
0.09 |
1.63 |
PD |
0.56 |
0.18 |
0.09 |
0.14 |
2.60 |
SR |
0.89 |
0.43 |
0.64 |
0.53 |
3.13 |
SU |
25.95 |
77.99 |
89.92 |
74.95 |
26.38 |
SC |
2.03 |
0.78 |
1.27 |
1.01 |
7.88 |

Query type |
A |
B |
C |
D |
F |
AVG |
|
query |
10.65 |
6.75 |
5.89 |
24.62 |
11.98 |
10.65 |
|
JOIN query |
4.38 |
0.99 |
4.91 |
12.76 |
5.76 |
4.38 |
|
LIKE query |
25.95 |
89.92 |
74.95 |
26.38 |
54.30 |
25.95 |
|
insert,update |
59.03 |
2.34 |
14.24 |
36.24 |
27.96 |
59.03 |
|
- ´ëÇ¥ »ó¿ë DB ¼öÇà ½Ã°£ ºñÀ²(´ÜÀ§ : %)
Transaction |
A |
B |
C |
D |
F |
AC |
7.98 |
6.27 |
2.25 |
5.50 |
5.50 |
AR |
1.31 |
1.07 |
0.45 |
0.94 |
0.94 |
BS |
6.03 |
5.23 |
2.24 |
4.50 |
4.50 |
BC |
22.77 |
17.36 |
5.11 |
15.08 |
15.08 |
BR |
27.29 |
23.84 |
6.52 |
19.22 |
19.22 |
HO |
4.24 |
3.99 |
1.20 |
3.15 |
3.15 |
NP |
5.00 |
4.87 |
2.03 |
3.97 |
3.97 |
OD |
4.29 |
4.04 |
1.17 |
3.17 |
3.17 |
OI |
0.75 |
0.65 |
0.44 |
0.61 |
0.61 |
PD |
1.10 |
1.08 |
0.55 |
0.91 |
0.91 |
SR |
3.66 |
3.56 |
1.28 |
2.83 |
2.83 |
SU |
4.46 |
19.88 |
73.61 |
32.65 |
32.65 |
SC |
11.12 |
8.16 |
3.16 |
7.48 |
7.48 |

Query type |
A |
B |
C |
D |
F |
AVG |
Query |
20.42 |
17.98 |
6.89 |
15.09 |
15.09 |
15.09 |
JOIN query |
13.93 |
12.79 |
4.72 |
10.48 |
10.48 |
10.48 |
LIKE query |
4.46 |
19.88 |
73.61 |
32.65 |
32.65 |
32.65 |
insert,update |
61.18 |
49.36 |
14.78 |
41.78 |
41.78 |
41.78 |
- CUBRID ¼öÇà ½Ã°£ ºñÀ²(´ÜÀ§: %)
Transaction |
A |
B |
C |
D |
F |
AC |
5.74 |
5.91 |
8.71 |
5.15 |
6.89 |
AR |
1.21 |
1.22 |
0.35 |
1.14 |
1.70 |
BS |
2.92 |
2.98 |
0.70 |
4.26 |
4.22 |
BC |
9.90 |
9.83 |
2.73 |
12.51 |
16.22 |
BR |
32.38 |
29.49 |
6.36 |
32.07 |
23.43 |
HO |
2.37 |
2.45 |
0.54 |
2.68 |
4.30 |
NP |
4.60 |
4.69 |
1.05 |
6.05 |
7.71 |
OD |
4.11 |
4.13 |
0.96 |
4.45 |
6.53 |
OI |
0.78 |
0.80 |
0.24 |
0.75 |
1.27 |
PD |
1.18 |
1.18 |
0.43 |
1.72 |
1.92 |
SR |
1.76 |
1.87 |
0.78 |
1.81 |
2.82 |
SU |
20.15 |
22.20 |
73.31 |
21.80 |
16.61 |
SC |
12.91 |
13.25 |
3.85 |
5.62 |
6.37 |
Query type |
A |
B |
C |
D |
F |
AVG |
Query |
17.60 |
17.93 |
11.74 |
19.25 |
26.03 |
18.51 |
JOIN query |
7.05 |
7.30 |
2.02 |
8.75 |
11.34 |
7.29 |
LIKE query |
20.15 |
22.20 |
73.31 |
21.80 |
16.61 |
30.81 |
insert,update |
55.20 |
52.57 |
12.94 |
50.19 |
46.02 |
43.38 |
(ÁÖ)Å¥ºê¸®µå 135-010 ¼¿ï½Ã °³²±¸ ³íÇöµ¿ 240-10 Áß¾Óºôµù 3Ãþ, Tel: 02-2015-0600, Fax: 02-2015-0610, http://www.cubrid.com