{"id":10832,"date":"2021-03-02T00:27:36","date_gmt":"2021-03-02T08:27:36","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=10832"},"modified":"2025-06-13T16:46:30","modified_gmt":"2025-06-13T23:46:30","slug":"sql-to-nosql-automated-migration","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/sql-to-nosql-automated-migration\/","title":{"rendered":"SQL\uc5d0\uc11c NoSQL\ub85c: \uc790\ub3d9\ud654\ub41c \ub9c8\uc774\uadf8\ub808\uc774\uc158"},"content":{"rendered":"<div class=\"paragraph\">\n<p>SQL\uc5d0\uc11c NoSQL\ub85c\uc758 \ub9c8\uc774\uadf8\ub808\uc774\uc158\uc740 \ubaa8\uc21c\ucc98\ub7fc \ubcf4\uc774\uc9c0\ub9cc, Couchbase Server\uc758 NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc758 \ubc1c\uc804\uacfc \ud601\uc2e0 \ub355\ubd84\uc5d0 \uc810\uc810 \ub354 \uc26c\uc6cc\uc9c0\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc774 \uae00\uc5d0\uc11c\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \ub3c4\uad6c\ub97c \uc18c\uac1c\ud569\ub2c8\ub2e4. <a href=\"https:\/\/github.com\/mgroves\/SqlServerToCouchbase\">SqlServerToCouchbase<\/a>\ub294 Microsoft SQL Server \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c Couchbase Server \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub85c \"\ubcc0\ud658\"\ud558\ub294 \ub370 \ub3c4\uc6c0\uc774 \ub418\ub294 \uc790\ub3d9\ud654\ub41c \ub3c4\uad6c\uc758 \uc624\ud508\uc18c\uc2a4 \uc2dc\ub3c4\uc785\ub2c8\ub2e4. \uadf8 \uacfc\uc815\uc5d0\uc11c \ub370\uc774\ud130 \ub9c8\uc774\uadf8\ub808\uc774\uc158 \uc804\ub7b5, SQL\uacfc NoSQL \uc6a9\uc5b4\uc758 \ube44\uad50, \ub450 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc720\ud615 \uac04\uc758 \uc7a5\ub2e8\uc810\uc744 \uc0b4\ud3b4\ubcfc \uac83\uc785\ub2c8\ub2e4. <strong>SQL Server \ub610\ub294 Couchbase Server\ub97c \uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub354\ub77c\ub3c4<\/strong>\uc774 \ubb38\uc11c\uac00 \uc804\ud658 \uc791\uc5c5\uc5d0 \ub3c4\uc6c0\uc774 \ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc2dc\uc791\ud558\uae30 \uc804\uc5d0 \ub450 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc0ac\uc774\ub97c \uc774\ub3d9\ud558\ub294 \uacbd\uc6b0(SQL\uc5d0\uc11c NoSQL\ub85c <em>\ub610\ub294<\/em> SQL\uc5d0\uc11c SQL\ub85c)\ub294 \ub450 \uc5b8\uc5b4 \uac04 \ubc88\uc5ed\uacfc \ub9e4\uc6b0 \uc720\uc0ac\ud569\ub2c8\ub2e4. Babelfish, Google \ubc88\uc5ed \ub4f1\uacfc \uac19\uc740 \uc790\ub3d9\ud654 \ub3c4\uad6c\uac00 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \ub3c4\uad6c\ub294 \uc2dc\uc791\ud558\ub294 \ub370 \ub9e4\uc6b0 \uc720\uc6a9\ud55c \ub3c4\uad6c\uc774\uc9c0\ub9cc, (\uacb0\uad6d) \uc5b8\uc5b4\uc5d0 \ubab0\uc785\ud558\ub294 \uac83\uc744 \ub300\uc2e0\ud560 \uc218\ub294 \uc5c6\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"qme\" dir=\"ltr\"><a href=\"https:\/\/twitter.com\/hashtag\/googletranslatefails?src=hash&amp;ref_src=twsrc%5Etfw\">#\uad6c\uae00 \ubc88\uc5ed \uc2e4\ud328<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/overs%C3%A6ttelsesfejl?src=hash&amp;ref_src=twsrc%5Etfw\">#overs\u00e6ttelsesfejl<\/a> <a href=\"https:\/\/t.co\/SNNoGHBD1Q\">pic.twitter.com\/SNNoGHBD1Q<\/a><\/p>\n<p>- EgoLibris (@egolibris) <a href=\"https:\/\/twitter.com\/egolibris\/status\/864846974859849728?ref_src=twsrc%5Etfw\">2017\ub144 5\uc6d4 17\uc77c<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uad6c\ubb38 \ubc88\uc5ed \uc678\uc5d0\ub3c4 \ubaa8\ub4e0 \uae30\uc220\uc744 \ub458\ub7ec\uc2fc \uad00\uc6a9\uad6c\uc640 \ubb38\ud654\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. \uc5b4\ub5a4 \uc790\ub3d9\ud654 \ub3c4\uad6c\ub3c4 \ubaa8\ub4e0 \ub258\uc559\uc2a4\ub97c \ud3ec\ucc29\ud560 \uc218\ub294 \uc5c6\uc9c0\ub9cc, \uc5b4\ub514\uae4c\uc9c0 \uac00\ub2a5\ud55c\uc9c0 \ud55c \ubc88 \uc2dc\ub3c4\ud574 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_strategies_to_migrate_data_from_sql_to_nosql\">SQL\uc744 NoSQL\ub85c \ubcc0\ud658\ud558\uae30: \ub370\uc774\ud130 \ub9c8\uc774\uadf8\ub808\uc774\uc158 \uc804\ub7b5<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>SQL Server\uc5d0\uc11c Couchbase\ub85c(\ub610\ub294 \ub2e4\ub978 \uad00\uacc4\ud615 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub85c) \ub370\uc774\ud130\ub97c \ub9c8\uc774\uadf8\ub808\uc774\uc158\ud558\ub824\ub294 \uacbd\uc6b0 \uccab \ubc88\uc9f8 \ub2e8\uacc4\ub294 \ub192\uc740 \uc218\uc900\uc758 \ubaa9\ud45c\uc640 \uacc4\ud68d\uc5d0 \ub300\ud55c \ud569\uc758\ub97c \ub3c4\ucd9c\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \uc5ec\ub7ec \uac00\uc9c0 \uacbd\ub85c\uac00 \uc788\uc73c\uba70, \uac01 \uacbd\ub85c\ub9c8\ub2e4 \uc704\ud5d8, \ub178\ub825, \uc774\uc810\uc774 \uc11c\ub85c \uc0c1\ucda9\ub429\ub2c8\ub2e4. \ub2e4\uc74c\uc740 SQL\uc744 NoSQL\ub85c \ubcc0\ud658\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud55c \uba87 \uac00\uc9c0 \uc608\uc785\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"responsive-table\">\n<table class=\"tableblock frame-all grid-all spread\">\n<colgroup>\n<col style=\"width: 10%\" \/>\n<col style=\"width: 60%\" \/>\n<col style=\"width: 10%\" \/>\n<col style=\"width: 10%\" \/>\n<col style=\"width: 10%\" \/> <\/colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">\ub808\ubca8<\/th>\n<th class=\"tableblock halign-left valign-top\">\uc124\uba85<\/th>\n<th class=\"tableblock halign-left valign-top\">\uc704\ud5d8<\/th>\n<th class=\"tableblock halign-left valign-top\">\ub178\ub825<\/th>\n<th class=\"tableblock halign-left valign-top\">\ud61c\ud0dd<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">1<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\"><strong>\uc7ac\uc791\uc131<\/strong>: \ub9c8\uc774\uadf8\ub808\uc774\uc158 \uc5c6\uc74c, \ubaa8\ub4e0 \uac83\uc744 \ub2e4\uc2dc \uc791\uc131<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">5\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">5\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u2b50\u2b50\u2b50\u2b50\u2b50<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">2<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\"><strong>\uc2a4\ud0a4\ub9c8 \uc7ac\uc124\uacc4<\/strong>: \ube44\uc988\ub2c8\uc2a4 \ub85c\uc9c1 \uc720\uc9c0, \ub370\uc774\ud130 \uacc4\uce35 \ubc0f \uc2a4\ud0a4\ub9c8 \uc7ac\uc791\uc131, NoSQL\uc5d0 \ucd5c\uc801\ud654\ub41c \ubaa8\ub378\ub85c \uc2a4\ud0a4\ub9c8\ub97c \uc644\uc804\ud788 \uc7ac\uc124\uacc4\ud558\uc138\uc694.<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">4\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">4\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u2b50\u2b50\u2b50\u2b50<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">3<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\"><strong>\ub9ac\ud329\ud130\ub9c1 \uc6b0\uc120<\/strong>: \ub370\uc774\ud130 \ub85c\uc9c1\uacfc RDBMS \uc2a4\ud0a4\ub9c8\ub97c NoSQL\uc5d0 \ucd5c\uc801\ud654\ub41c \ubaa8\ub378\ub85c \ub9ac\ud329\ud130\ub9c1\ud558\ub294 \uac83\ub9cc \ube7c\uace0 \ubaa8\ub4e0 \uac83\uc744 \uc720\uc9c0\ud558\uc138\uc694.<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">4\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">3\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u2b50\u2b50\u2b50<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">4<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\"><strong>\ub098\uc911\uc5d0 \ucd5c\uc801\ud654<\/strong>: \uac00\ub2a5\ud55c \ud55c \uc801\uc740 \ubcc0\uacbd\uc73c\ub85c \uc2a4\ud0a4\ub9c8\ub97c \ud638\uc2a4\ud305\ud558\uace0, \uc0c8\ub85c\uc6b4 \uae30\uc220\uc5d0\uc11c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc2e4\ud589\ud558\uace0, \uc131\ub2a5\uc5d0 \ub530\ub77c \ud544\uc694\uc5d0 \ub530\ub77c \uc2a4\ud0a4\ub9c8\ub97c \ub9ac\ud329\ud130\ub9c1\/\ucd5c\uc801\ud654\ud558\uc138\uc694.<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">3\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">4\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u2b50\u2b50\u2b50<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\"><strong>\uadf8\ub0e5 \ud638\uc2a4\ud2b8\ud558\uae30<\/strong>: \uac00\ub2a5\ud55c \ud55c \uc801\uc740 \ubcc0\uacbd\uc73c\ub85c \uc2a4\ud0a4\ub9c8\ub97c \ud638\uc2a4\ud305\ud558\uc138\uc694.<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">2\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">2\/5<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u2b50\u2b50<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc5ed\uc0ac\uc801\uc73c\ub85c NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub294 '\ub808\ubca8 1' \ub9ac\ube4c\ub4dc \ub610\ub294 \uadf8\ub9b0\ud544\ub4dc \ud504\ub85c\uc81d\ud2b8\uc5d0 \uc911\uc810\uc744 \ub450\uc5c8\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc811\uadfc \ubc29\uc2dd\uc740 \ucc98\uc74c\ubd80\ud130 NoSQL\uc758 \uc774\uc810\uc744 \ucd5c\ub300\ud55c \ud65c\uc6a9\ud560 \uc218 \uc788\uc9c0\ub9cc, \ub9ac\ube4c\ub4dc\ub294 \ud56d\uc0c1 \ube44\uc6a9\uc774 \ub9ce\uc774 \ub4e4\uace0 \uc704\ud5d8\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\ud558\uc9c0\ub9cc Couchbase Server\ub294 Couchbase Server 7\uc5d0\uc11c \uc81c\uacf5\ub418\ub294 \uc0c8\ub85c\uc6b4 \uae30\ub2a5\uacfc \ud568\uaed8(\ub2e4\uc6b4\ub85c\ub4dc\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/downloads\/\">\ud604\uc7ac Couchbase 7 \ubca0\ud0c0 \ubc84\uc804<\/a>), \ub808\ubca8 5(\uc774\ud6c4 \ub808\ubca8 4) \uc811\uadfc \ubc29\uc2dd\uc744 \uc0ac\uc6a9\ud558\uba74 NoSQL\uc744 \uc2dc\ub3c4\ud558\ub294 \ub370 \ub530\ub974\ub294 \uc704\ud5d8\uacfc \ube44\uc6a9\uc744 \uc904\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubc18\ub4dc\uc2dc <strong>\ubaa8\ub450<\/strong> NoSQL\uc758 \uc774\uc810\uc744 \ubc14\ub85c \ub204\ub9b4 \uc218 \uc788\uc9c0\ub9cc, \uadf8 \uc5b4\ub290 \ub54c\ubcf4\ub2e4 \uc27d\uac8c \uc2dc\uc791\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_convert_from_sql_to_nosql\">SQL\uc744 NoSQL \ucffc\ub9ac\ub85c \ubcc0\ud658<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>\ub300\ubd80\ubd84\uc758 \uac1c\ubc1c\uc790\uc640 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \uc0ac\uc6a9\uc790\ub294 \uad00\uacc4\ud615 \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0 \uc775\uc219\ud569\ub2c8\ub2e4. \uc2a4\ud0a4\ub9c8, \ud14c\uc774\ube14, \ud589\uacfc \uc5f4, SQL \ucffc\ub9ac, ACID \ud2b8\ub79c\uc7ad\uc158. Couchbase\uc758 \ucffc\ub9ac \uc5b8\uc5b4(N1QL)\ub294 SQL\uc774 \uc624\ub7ab\ub3d9\uc548 <em>\ub9c1\uad6c\uc544 \ud504\ub791\uce74<\/em> \uc758 \ub370\uc774\ud130\ubca0\uc774\uc2a4. N1QL\uc740 \ud604\uc7ac JOIN, \uac15\ub825\ud55c \uc778\ub371\uc2f1, \uc9d1\uacc4, CTE \ub4f1\uc744 \ud3ec\ud568\ud55c \uc804\uccb4 SQL \uae30\ub2a5\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4. \ub530\ub77c\uc11c SQL \uac1c\ubc1c\uc790\uac00 Couchbase\uc758 NoSQL \uc81c\ud488\uc744 \ucc98\uc74c \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0\uc5d0\ub3c4 \ube44\uad50\uc801 \uac04\ub2e8\ud558\uac8c \uc0dd\uc0b0\uc131\uc744 \ub192\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><strong>\ud301<\/strong>: \uccb4\ud06c \uc544\uc6c3 <a href=\"https:\/\/www.techvalidate.com\/product-research\/couchbase\/charts\/2A1-8B3-4BC\">\uac1c\ubc1c\uc790\uac00 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\ub97c \uc911\uc694\ud558\uac8c \uc0dd\uac01\ud558\ub294 \uc774\uc720<\/a> \ubc0f \uae30\ud0c0 TechValidate\uc758 \ub3c5\ub9bd\uc801\uc778 \uc5f0\uad6c.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\ub2e4\ub978 \uad00\uacc4\ud615 \uac1c\ub150\ub3c4 \ub300\ubd80\ubd84 \uc27d\uac8c \ubcc0\ud658\ud558\uace0 \ubcc0\ud658\ud560 \uc218 \uc788\ub2e4\uba74 \uc5b4\ub5a8\uae4c\uc694? SQL Server \uac1c\ub150\uc744 Couchbase Server \uac1c\ub150\uc5d0 \uc5b4\ub5bb\uac8c \ub9e4\ud551\ud560 \uc218 \uc788\ub294\uc9c0 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"responsive-table\">\n<table class=\"tableblock frame-all grid-all spread\">\n<colgroup>\n<col style=\"width: 33.3333%\" \/>\n<col style=\"width: 33.3333%\" \/>\n<col style=\"width: 33.3334%\" \/> <\/colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">SQL Server<\/th>\n<th class=\"tableblock halign-left valign-top\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc11c\ubc84<\/th>\n<th class=\"tableblock halign-left valign-top\">\ucc38\uace0<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uc11c\ubc84<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ud074\ub7ec\uc2a4\ud130<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">NoSQL\uc758 \uc8fc\uc694 \uc774\uc810 \uc911 \ud558\ub098\ub294 \ud074\ub7ec\uc2a4\ud130\ub9c1\uc774 \uc81c\uacf5\ud558\ub294 \ud655\uc7a5\uc131\uacfc \uace0\uac00\uc6a9\uc131\uc785\ub2c8\ub2e4.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uce74\ud0c8\ub85c\uadf8\/\ub370\uc774\ud130\ubca0\uc774\uc2a4<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubc84\ud0b7<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ubc84\ud0b7\uc740 \uc131\ub2a5 \ud5a5\uc0c1\uc744 \uc704\ud55c \ub0b4\uc7a5 \uce90\uc2dc\ub3c4 \uc81c\uacf5\ud569\ub2c8\ub2e4.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uc2a4\ud0a4\ub9c8<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubc94\uc704<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uc2a4\ud0a4\ub9c8\ub294 SQL Server\uc5d0\uc11c \"dbo\"\uc778 \uacbd\uc6b0\uac00 \ub9ce\uc9c0\ub9cc \ud56d\uc0c1 \uadf8\ub7f0 \uac83\uc740 \uc544\ub2d9\ub2c8\ub2e4.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ud45c<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uceec\ub809\uc158<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uceec\ub809\uc158\uc758 \uc720\uc5f0\uc131 \ud5a5\uc0c1: \ubbf8\ub9ac \uc815\uc758\ub41c \uc5f4\uc774\ub098 \uc81c\uc57d \uc870\uac74\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ud589<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubb38\uc11c<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ud50c\ub7ab \ub370\uc774\ud130 \ub300\uc2e0 JSON<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">tSQL<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">N1QL<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">N1QL\uc740 \"SQL\uacfc \uc720\uc0ac\ud55c\" \uac83\uc774 \uc544\ub2c8\ub77c, SQL++\ub77c\uace0\ub3c4 \ud558\ub294 JSON \ud655\uc7a5 \uae30\ub2a5\uc744 \uac16\ucd98 \uc644\uc804\ud55c SQL \uad6c\ud604\uc785\ub2c8\ub2e4.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uae30\ubcf8 \ud0a4<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubb38\uc11c \ud0a4<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uae30\ubcf8 \ud0a4\ub294 \ud14c\uc774\ube14\ubcc4\ub85c \uace0\uc720\ud574\uc57c \ud558\uba70, \ubb38\uc11c \ud0a4\ub294 \uceec\ub809\uc158\ubcc4\ub85c \uace0\uc720\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uc0c9\uc778<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uc0c9\uc778<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">SQL: \uc5f4\uc5d0 \ub300\ud55c \uc778\ub371\uc2a4, \uce74\uc6b0\uce58\ubca0\uc774\uc2a4: JSON \ud544\ub4dc\uc5d0 \ub300\ud55c \uc778\ub371\uc2a4<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc774 \ub9e4\ud551\uc744 \uae30\uc900\uc73c\ub85c SQL Server \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc758 \ub0b4\uc6a9\uc744 Couchbase Server \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub85c \uc790\ub3d9 \ubcc0\ud658\ud558\ub294 \ud504\ub85c\uadf8\ub7a8\uc744 \uc791\uc131\ud560 \uc218 \uc788\uc744\uae4c\uc694?<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc800\ub294 \uc6b0\ub9ac\uac00 \uadf8 \ubaa9\ud45c\ub97c \ub300\ubd80\ubd84 \ub2ec\uc131\ud560 \uc218 \uc788\ub2e4\uace0 \ubbff\uc73c\uba70, \ub2e4\uc74c\uacfc \uac19\uc740 \uc624\ud508 \uc18c\uc2a4 \ud504\ub85c\uc81d\ud2b8\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/github.com\/mgroves\/SqlServerToCouchbase\">SqlServerToCouchbase<\/a> \ub97c \uc0ac\uc6a9\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_database_catalog_to_bucket\">SQL \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c NoSQL\/\uce74\ud0c8\ub85c\uadf8\ub97c \ubc84\ud0b7\uc73c\ub85c \ubcc0\ud658\ud558\uae30<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>\uc800\ub294 <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/samples\/adventureworks-install-configure#download-backup-files\">\uc5b4\ub4dc\ubca4\ucc98\uc6cd\uc2a4<\/a> \uc0d8\ud50c\uc744 SQL Server\uc5d0\uc11c \uc81c\uacf5\ud569\ub2c8\ub2e4. Couchbase 7 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub85c \ub9c8\uc774\uadf8\ub808\uc774\uc158\ud560 \uc608\uc815\uc785\ub2c8\ub2e4(<a href=\"https:\/\/www.couchbase.com\/blog\/ko\/downloads\/\">\ud604\uc7ac \ubca0\ud0c0 \ubc84\uc804<\/a>\ub85c \ubcc0\uacbd\ub418\uc5c8\uc9c0\ub9cc \uc62c\ud574\ub294 RTM\uc774 \ub420 \uac00\ub2a5\uc131\uc774 \ub192\uc2b5\ub2c8\ub2e4).<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><strong>\ucc38\uace0<\/strong>: \uc800\ub294 \ud604\uc7ac \uc0ac\uc6a9 \uac00\ub2a5\ud55c SQL Server \ubc84\uc804\uc774 AdventureWorks2016\uc774\uae30 \ub54c\ubb38\uc5d0 \uc774 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \ub300\ubd80\ubd84\uc758 \uc774\uc804 \ubc84\uc804\uacfc \ucd5c\uc2e0 \ubc84\uc804\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \uc791\ub3d9\ud558\uc9c0\ub9cc \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4, <a href=\"https:\/\/github.com\/mgroves\/SqlServerToCouchbase\">\uae43\ud5c8\ube0c \uc774\uc288\ub97c \uc0dd\uc131\ud558\uc138\uc694.<\/a>!<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13002-sql-server-adventureworks.png\" alt=\"SQL Server with AdventureWorks\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Couchbase Server\uc5d0\uc11c \ubc84\ud0b7\uc744 \uc218\ub3d9\uc73c\ub85c \ub9cc\ub4e4\uac70\ub098 \uc720\ud2f8\ub9ac\ud2f0\uac00 \uc790\ub3d9\uc73c\ub85c \ubc84\ud0b7\uc744 \ub9cc\ub4e4\ub3c4\ub85d \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13003-couchbase-adventureworks.png\" alt=\"AdventureWorks bucket in Couchbase\" \/><\/span><\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_schema_to_scope\">\uc2a4\ud0a4\ub9c8\uc5d0\uc11c \ubc94\uc704\ub85c<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>SQL Server\uc5d0\uc11c\ub294 <a href=\"https:\/\/docs.microsoft.com\/en-us\/dotnet\/framework\/data\/adonet\/sql\/ownership-and-user-schema-separation-in-sql-server\">\uc2a4\ud0a4\ub9c8<\/a> \ub294 \uc870\uc9c1\/\ubcf4\uc548 \ubaa9\uc801\uc73c\ub85c \ud14c\uc774\ube14\uacfc \uac19\uc740 \uac1c\uccb4\ub97c \ud568\uaed8 \uadf8\ub8f9\ud654\ud560 \uc218 \uc788\ub294 '\ub124\uc784\uc2a4\ud398\uc774\uc2a4'\uc640 \uac19\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4 AdventureWorks\uc5d0\ub294 HumanResources, Person, Production \ub4f1\uacfc \uac19\uc740 \uc2a4\ud0a4\ub9c8\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\ub9ce\uc740 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \uae30\ubcf8 \"dbo\" \uc2a4\ud0a4\ub9c8 \uc678\uc5d0\ub294 \uc2e4\uc81c\ub85c \uc2a4\ud0a4\ub9c8\ub97c \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uadf8\ub7ec\ub098 \uc2a4\ud0a4\ub9c8\ub97c \uc0ac\uc6a9\ud558\uc5ec \ud2b9\uc815 \ub9c8\uc774\ud06c\ub85c\uc11c\ube44\uc2a4 \ub610\ub294 \uba40\ud2f0\ud14c\ub10c\ud2b8 \uc571\uc758 \ud2b9\uc815 \ud14c\ub10c\ud2b8\uc5d0 \ub300\ud55c \ub370\uc774\ud130\ub97c \uadf8\ub8f9\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13004-sql-server-schemas.png\" alt=\"SQL Server schemas\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Couchbase 7\uc5d0\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \ub9e4\uc6b0 \uc720\uc0ac\ud55c \uac1c\ub150\uc774 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/docs.couchbase.com\/server\/7.0\/learn\/data\/scopes-and-collections.html\">\"\ubc94\uc704\"<\/a>. \ub9c8\uc774\ud06c\ub85c\uc11c\ube44\uc2a4 \ub610\ub294 \uba40\ud2f0\ud14c\ub10c\uc2dc\uc5d0 \ub300\ud574 \ub3d9\uc77c\ud55c \uc870\uc9c1 \ubc0f \ubcf4\uc548 \uc774\uc810\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13005-couchbase-scopes.png\" alt=\"Couchbase scopes\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uae30\ubcf8 \uc124\uc815\uc5d0 \ub530\ub77c SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub294 SQL Server\uc758 \uc2a4\ud0a4\ub9c8\ub97c \uae30\ubc18\uc73c\ub85c \ubc94\uc704\ub97c \ub9cc\ub4e4 \uc218\ub3c4 \uc788\uace0, \uc2a4\ud0a4\ub9c8\ub97c \ubb34\uc2dc\ud558\uace0 \ubaa8\ub4e0 \uac83\uc744 \"_default\"(\ub300\ub7b5 \"dbo\"\uc640 \ub3d9\uc77c)\ub77c\ub294 \uc2a4\ud0a4\ub9c8\uc5d0 \ub123\uc744 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. \uc704\uc758 \uc608\uc5d0\uc11c\ub294 \uac01 AdventureWorks \uc2a4\ud0a4\ub9c8\uc5d0 \ub300\ud55c \ubc94\uc704\ub97c \ub9cc\ub4e4\uae30\ub85c \uc120\ud0dd\ud588\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_table_to_collection\">\ud14c\uc774\ube14\uc5d0\uc11c \uceec\ub809\uc158\uc73c\ub85c<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>SQL Server\uc5d0\uc11c \ud14c\uc774\ube14\uc740 \uc5c4\uaca9\ud558\uac8c \uac15\uc81c \uc801\uc6a9\ub418\ub294 \uad00\uacc4\uc785\ub2c8\ub2e4(\ub530\ub77c\uc11c \"<a href=\"https:\/\/en.wikipedia.org\/wiki\/Relational_model\">\uad00\uacc4\ud615<\/a>\" \ub370\uc774\ud130\ubca0\uc774\uc2a4)\ub97c \ud1b5\ud574 \ub370\uc774\ud130\ub97c \ud568\uaed8 \uc815\ub9ac\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13006-sql-server-table.png\" alt=\"SQL Server table\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc5d0\uc11c\ub294 \uc5c4\uaca9\ud558\uac8c \uac15\uc81c\ub41c \uad00\uacc4\ub294 \uc5c6\uc9c0\ub9cc \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 7\uc5d0\uc11c\ub294 <a href=\"https:\/\/docs.couchbase.com\/server\/7.0\/learn\/data\/scopes-and-collections.html\">\"\uceec\ub809\uc158\"<\/a>. \uc774\ub807\uac8c \ud558\uba74 \ub370\uc774\ud130\uc5d0 \uc5b4\ub5a4 \uc81c\uc57d \uc870\uac74(\uae30\ubcf8 \ud0a4\uc640 \uc720\uc0ac\ud55c \uace0\uc720 \ubb38\uc11c \ud0a4 \uc678\uc5d0\ub294)\ub3c4 \uc801\uc6a9\ud560 \uc218 \uc5c6\uc9c0\ub9cc \ub3d9\uc77c\ud55c \uc218\uc900\uc758 \ub370\uc774\ud130 \uad6c\uc131\uc744 \uc81c\uacf5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub294 \ucc3e\uc740 \uac01 \ud14c\uc774\ube14\uc5d0 \ub300\ud574 \uceec\ub809\uc158\uc744 \uc0dd\uc131\ud569\ub2c8\ub2e4. \uc774\uc804 \ub2e8\uacc4\uc5d0\uc11c \ubc94\uc704\ub97c \ub9cc\ub4e4\ub3c4\ub85d \uc120\ud0dd\ud55c \uacbd\uc6b0 \ud574\ub2f9 \uceec\ub809\uc158\uc740 \ud574\ub2f9 \ubc94\uc704 \uc548\uc5d0 \ubc30\uce58\ub429\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13007-couchbase-collection.png\" alt=\"Couchbase collection\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><strong>\ud301<\/strong>: SQL Server\uc758 \ud14c\uc774\ube14 \uc774\ub984\uc740 Couchbase Server\uc758 \uceec\ub809\uc158 \uc774\ub984\ubcf4\ub2e4 \ud6e8\uc52c \ub354 \uae38 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c \ud14c\uc774\ube14 \uc774\ub984\uc774 \uae34 \ub370\uc774\ud130\ubca0\uc774\uc2a4\ub97c \ub9c8\uc774\uadf8\ub808\uc774\uc158\ud558\ub294 \uacbd\uc6b0 \uc0c8\ub86d\uace0 \ub354 \uc9e7\uc740 \uceec\ub809\uc158 \uc774\ub984\uc744 \uba85\uc2dc\uc801\uc73c\ub85c \uc81c\uacf5\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_what_about_converting_the_sql_query\">SQL \ucffc\ub9ac\ub97c \ubcc0\ud658\ud558\ub294 \uac83\uc740 \uc5b4\ub5a8\uae4c\uc694?<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub294 (\uc544\uc9c1) SQL Server \ucffc\ub9ac\ub97c \ubcc0\ud658\ud558\uc9c0\ub294 \uc54a\uc9c0\ub9cc, \ub2e4\uc74c\uc740 AdventureWorks\uc758 SQL Server \ucffc\ub9ac\uc640 Couchbase\uc5d0\uc11c \ubcc0\ud658\ub41c AdventureWorks \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc758 \ub3d9\ub4f1\ud55c \ucffc\ub9ac\ub97c \ube44\uad50\ud55c \uac83\uc785\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc544\ub798 tSQL \ucffc\ub9ac(\ub2e4\uc74c\uc5d0\uc11c \uac00\uc838\uc634)\ub294 <a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/t-sql\/queries\/from-transact-sql?view=sql-server-ver15#i-using-a-derived-table\">Microsoft \ubb38\uc11c<\/a>)\ub294 \"\ubaa8\ub4e0 \uc9c1\uc6d0\uc758 \uc774\ub984\uacfc \uc131, \uadf8\ub9ac\uace0 \uadf8\ub4e4\uc774 \uac70\uc8fc\ud558\ub294 \ub3c4\uc2dc\ub97c \ubc18\ud658\"\ud558\ub3c4\ub85d \uc124\uacc4\ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-SQL\" data-lang=\"SQL\">SELECT RTRIM(p.FirstName) + ' ' + LTRIM(p.LastName) AS Name, d.City\r\nFROM AdventureWorks2016.Person.Person AS p\r\nINNER JOIN AdventureWorks2016.HumanResources.Employee e ON p.BusinessEntityID = e.BusinessEntityID\r\nINNER JOIN\r\n   (SELECT bea.BusinessEntityID, a.City\r\n    FROM AdventureWorks2016.Person.Address AS a\r\n    INNER JOIN AdventureWorks2016.Person.BusinessEntityAddress AS bea\r\n    ON a.AddressID = bea.AddressID) AS d\r\nON p.BusinessEntityID = d.BusinessEntityID\r\nORDER BY p.LastName, p.FirstName;<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc774 \ucffc\ub9ac\uc758 \uacb0\uacfc\uc785\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13010-sql-query-results.png\" alt=\"SQL Server query results\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uac70\uc758 \ubcc0\uacbd\ud558\uc9c0 \uc54a\uace0\ub3c4 \ub9e4\uc6b0 \uc720\uc0ac\ud55c \ucffc\ub9ac\ub97c Couchbase\uc5d0\uc11c N1QL \ucffc\ub9ac\ub85c \uc2e4\ud589\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-SQL\" data-lang=\"SQL\">SELECT RTRIM(p.FirstName) || ' ' || LTRIM(p.LastName) AS Name, d.City\r\nFROM AdventureWorks2016.Person.Person AS p\r\nINNER JOIN AdventureWorks2016.HumanResources.Employee e ON p.BusinessEntityID = e.BusinessEntityID\r\nINNER JOIN\r\n   (SELECT bea.BusinessEntityID, a.City\r\n    FROM AdventureWorks2016.Person.Address AS a\r\n    INNER JOIN AdventureWorks2016.Person.BusinessEntityAddress AS bea\r\n    ON a.AddressID = bea.AddressID) AS d\r\nON p.BusinessEntityID = d.BusinessEntityID\r\nORDER BY p.LastName, p.FirstName;<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>N1QL \ubc84\uc804\uc5d0\uc11c \uc720\uc77c\ud55c \ucc28\uc774\uc810\uc740 <code>||<\/code> \ub300\uc2e0 <code>+<\/code> \ub97c \ubb38\uc790\uc5f4 \uc5f0\uacb0\uc5d0 \uc0ac\uc6a9\ud558\uace0 \uacb0\uacfc\ub294 \uacb0\uacfc \uc9d1\ud569\uc774 \uc544\ub2cc JSON\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-JavaScript\" data-lang=\"JavaScript\">[\r\n  { \"City\": \"Bothell\", \"Name\": \"Syed Abbas\" },\r\n  { \"City\": \"Carnation\", \"Name\": \"Kim Abercrombie\" },\r\n  { \"City\": \"Kenmore\", \"Name\": \"Hazem Abolrous\" },\r\n  { \"City\": \"Seattle\", \"Name\": \"Pilar Ackerman\" },\r\n  { \"City\": \"Monroe\", \"Name\": \"Jay Adams\" },\r\n  { \"City\": \"Issaquah\", \"Name\": \"Fran\u00c3\u00a7ois Ajenstat\" },\r\n  { \"City\": \"Renton\", \"Name\": \"Amy Alberts\" },\r\n  { \"City\": \"Bellevue\", \"Name\": \"Greg Alderson\" },\r\n  { \"City\": \"Renton\", \"Name\": \"Sean Alexander\" },\r\n  { \"City\": \"Renton\", \"Name\": \"Gary Altman\" },\r\n  \/\/\/ ... etc ...\r\n]<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc774\uac83\uc740 <em>not<\/em> \ub294 N1QL \ucffc\ub9ac\uac00 \ucd5c\ub300\ud55c \ucd5c\uc801\ud654\ub418\uc5b4 \uc788\uc74c\uc744 \uc758\ubbf8\ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, \uc704\uc758 N1QL \ucffc\ub9ac\ub294 \ubb38\uc11c \ud0a4\ub97c \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uc73c\uba70, \ub354 \ub9ce\uac70\ub098 \ub2e4\ub978 \uc778\ub371\uc2a4\uc758 \uc774\uc810\uc744 \ub204\ub9b4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. (\uc608\ub97c \ub4e4\uc5b4, \uc774\ub984, \uc131, \ub3c4\uc2dc\ub9cc \ud544\uc694\ud558\ubbc0\ub85c \uc5ec\uae30\uc5d0\ub294 \ucee4\ubc84\ub9c1 \uc778\ub371\uc2a4\uac00 \uc801\uc808\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4). \ud558\uc9c0\ub9cc \uc774\uac83\uc740 \"\ub808\ubca8 5\" \ubcc0\ud658\uc774\ubbc0\ub85c \uc2dc\uc791\ud558\uae30\uc5d0 \ucda9\ubd84\ud560 \uac83\uc785\ub2c8\ub2e4.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_index_to_index_conversion\">\uc778\ub371\uc2a4\uc5d0\uc11c \uc778\ub371\uc2a4\ub85c\uc758 \ubcc0\ud658<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>SQL Server\uc5d0\uc11c\ub294 \ud14c\uc774\ube14\uc5d0 \ud558\ub098 \uc774\uc0c1\uc758 \uc5f4\uc5d0 \ub300\ud55c \uc778\ub371\uc2a4\ub97c \ub9cc\ub4e4 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc11c\ubc84\ub294 \ub610\ud55c \ub2e4\uc74c\uc744 \uc218\ud589\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/docs.couchbase.com\/server\/current\/n1ql\/n1ql-intro\/queriesandresults.html#indexes\">\uc778\ub371\uc2a4 \ub9cc\ub4e4\uae30<\/a> \ub97c \uceec\ub809\uc158\uc5d0\uc11c \ud558\ub098 \uc774\uc0c1\uc758 JSON \ud544\ub4dc\ub85c \uc124\uc815\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub294 SQL Server \uc778\ub371\uc2a4\uc758 \uc9c1\uc811 \ubcc0\ud658\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc608\ub97c \ub4e4\uc5b4 SQL Server\uc758 \uc778\ub371\uc2a4\uc785\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code>CREATE INDEX SalesTaxRate_StateProvinceID_TaxType ON AdventureWorks2016.Sales.SalesTaxRate (StateProvinceID, TaxType)<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\ub294 Couchbase Server\uc758 \uc778\ub371\uc2a4\uac00 \ub429\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code>CREATE INDEX sql_SalesTaxRate_StateProvinceID_TaxType ON AdventureWorks2016.Sales.SalesTaxRate (StateProvinceID, TaxType)<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Couchbase\ub294 \ubaa8\ub4e0 \uc778\ub371\uc2a4\ub97c \ubcc0\ud658\ud558\uc9c0\ub9cc \uc2e4\ud589\ud558\ub824\ub294 \ucffc\ub9ac\uc5d0 \ub530\ub77c SQL Server \uc778\ub371\uc2f1 \uc218\uc900\uc774 \ub108\ubb34 \ub192\uac70\ub098 \ub0ae\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub2e4\ud589\ud788\ub3c4 Couchbase Server 6.6 \uc774\uc0c1 \ubc84\uc804\uc5d0\ub294 \uae30\ubcf8\uc73c\ub85c \uc81c\uacf5\ub418\ub294 <a href=\"https:\/\/docs.couchbase.com\/server\/current\/tools\/query-workbench.html#index-advisor\">\uc778\ub371\uc2a4 \uc5b4\ub4dc\ubc14\uc774\uc800<\/a> (\ub3c5\ub9bd\ud615 <a href=\"https:\/\/index-advisor.couchbase.com\/indexadvisor\">\uc6f9 \uae30\ubc18 \ubc84\uc804\ub3c4 \uc0ac\uc6a9 \uac00\ub2a5<\/a>)\ub97c \uc0ac\uc6a9\ud558\uba74 \uc6d0\ud558\ub294 \ubaa8\ub4e0 N1QL \ucffc\ub9ac\uc5d0 \ub300\ud55c \uc778\ub371\uc2a4\ub97c \ucd94\ucc9c\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><strong>\ucc38\uace0<\/strong>: \uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc11c\ubc84\ub294 \uae30\ubcf8\uc801\uc73c\ub85c \uc804\uccb4 \ud14c\uc774\ube14 \uc2a4\uce94(\uc989, \uae30\ubcf8 \uc778\ub371\uc2a4)\uc5d0 \ud574\ub2f9\ud558\ub294 \uac83\uc744 \ud5c8\uc6a9\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub294 \uac01 \uceec\ub809\uc158\uc5d0 \ub300\ud55c \uae30\ubcf8 \uc778\ub371\uc2a4\ub97c \uc0dd\uc131\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ucffc\ub9ac\ub97c \uc2e4\ud589\ud558\ub824\uace0 \ud560 \ub54c \"\ud0a4 \uacf5\uac04\uc5d0 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uc778\ub371\uc2a4\uac00 \uc5c6\uc2b5\ub2c8\ub2e4\"\uc640 \uac19\uc740 \uc624\ub958 \uba54\uc2dc\uc9c0\uac00 \ud45c\uc2dc\ub418\uba74 \uc778\ub371\uc2a4 \uc5b4\ub4dc\ubc14\uc774\uc800\ub97c \uc0ac\uc6a9\ud574\ubcf4\ub77c\ub294 \uc2e0\ud638\uc785\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\ub610\ud55c <a href=\"https:\/\/docs.couchbase.com\/server\/current\/manage\/monitor\/monitoring-indexes.html\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc778\ub371\uc2a4 \ubaa8\ub2c8\ud130<\/a> \uc744 \ud074\ub9ad\ud574 \uc778\ub371\uc2a4 \uc694\uccad\ub960(\ub2e4\ub978 \uc778\ub371\uc2a4 \ud2b9\uc131 \uc911)\uc744 \ud655\uc778\ud558\uc138\uc694. \uc774\ub97c \ud1b5\ud574 \ub354 \uc774\uc0c1 \ud544\uc694\ud558\uc9c0 \uc54a\uc740 \uc778\ub371\uc2a4\ub97c \uc2dd\ubcc4\ud558\ub294 \ub370 \ub3c4\uc6c0\uc774 \ub420 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_row_to_document\">\ud589\uc5d0\uc11c \ubb38\uc11c\ub85c<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>\uc801\uc808\ud55c \ubc94\uc704\uc640 \uceec\ub809\uc158\uc774 \uc124\uc815\ub418\uba74 SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub97c \uc0ac\uc6a9\ud558\uc5ec \uac01 \ud14c\uc774\ube14\uc5d0\uc11c \ubaa8\ub4e0 \ub370\uc774\ud130 \ud589\uc744 \uac00\uc838\uc640 \uac01 \uceec\ub809\uc158\uc758 JSON \ubb38\uc11c\uc5d0 \uc4f8 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13001-sql-server-address-row.png\" alt=\"13001 sql server address row\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\ub300\ubd80\ubd84\uc758 \uacbd\uc6b0 SQL Server\uc5d0\uc11c \uc9c0\uc6d0\ud558\ub294 \ub370\uc774\ud130 \uc720\ud615\uc740 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/couchbase-for-oracle-developers-part-4-data-types\/\">JSON\uc5d0 \uc798 \ub9e4\ud551<\/a> \ub370\uc774\ud130 \uc720\ud615. \uba87 \uac00\uc9c0 \uc608\uc2dc\uc785\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"responsive-table\">\n<table class=\"tableblock frame-all grid-all spread\">\n<colgroup>\n<col style=\"width: 50%\" \/>\n<col style=\"width: 50%\" \/> <\/colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">SQL Server \ub370\uc774\ud130 \uc720\ud615<\/th>\n<th class=\"tableblock halign-left valign-top\">JSON \ub370\uc774\ud130 \uc720\ud615<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubb38\uc790, \ubc14\uc774\ud2b8 \ubb38\uc790, nvarchar \ub4f1<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubb38\uc790\uc5f4<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uc815\uc218, \uc18c\uc218, \ubd80\ub3d9 \uc18c\uc218, \uc2e4\uc218 \ub4f1<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\uc22b\uc790<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">bit<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubd80\uc6b8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ub0a0\uc9dc, \ub0a0\uc9dc, \uc2dc\uac04 \ub4f1<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\ubb38\uc790\uc5f4<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"paragraph\">\n<p>\ub610\ud55c SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\uac00 \ucc98\ub9ac\ud560 \uc218 \uc788\ub294 \uba87 \uac00\uc9c0 \ud2b9\uc218\ud55c SQL Server \ub370\uc774\ud130 \uc720\ud615\ub3c4 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc608\ub97c \ub4e4\uc5b4, SQL Server\uc758 <code>\uc9c0\ub9ac<\/code> \uc720\ud615\uc740 \"Lat\" \ubc0f \"Long\" \ubc0f \"Z\"\uc640 \uac19\uc740 \uc18d\uc131\uc744 \uac00\uc9c4 \uc911\ucca9\ub41c JSON \uac1d\uccb4\uac00 \ub429\ub2c8\ub2e4. \ub2e4\uc74c\uc740 \uc704 \uc2a4\ud06c\ub9b0\uc0f7\uc758 \ub370\uc774\ud130 \ud589\uc5d0 \ub300\ud55c \ubcc0\ud658\ub41c \ubb38\uc11c\uc785\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-JavaScript\" data-lang=\"JavaScript\">{\r\n  \"AddressID\": 1,\r\n  \"AddressLine1\": \"1970 Napa Ct.\",\r\n  \"AddressLine2\": null,\r\n  \"City\": \"Bothell\",\r\n  \"StateProvinceID\": 79,\r\n  \"PostalCode\": \"98011\",\r\n  \"SpatialLocation\": {\r\n    \"IsNull\": false,\r\n    \"STSrid\": 4326,\r\n    \"Lat\": 47.7869921906598,\r\n    \"Long\": -122.164644615406,\r\n    \"Z\": null,\r\n    \"M\": null,\r\n    \"HasZ\": false,\r\n    \"HasM\": false\r\n  },\r\n  \"rowguid\": \"9aadcb0d-36cf-483f-84d8-585c2d4ec6e9\",\r\n  \"ModifiedDate\": \"2007-12-04T00:00:00\"\r\n}<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\uad81\uae08\ud55c \ud2b9\uc815 \ub370\uc774\ud130 \uc720\ud615\uc774 \uc788\ub294 \uacbd\uc6b0 SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub97c \uc0ac\uc6a9\ud574 \ubcf4\uace0 \uc5b4\ub5a4 \uc77c\uc774 \ubc1c\uc0dd\ud558\ub294\uc9c0 \ud655\uc778\ud558\uc138\uc694. \uc608\uc0c1\ud55c \ub300\ub85c \ub370\uc774\ud130\uac00 \ubcc0\ud658\ub418\uc9c0 \uc54a\ub294 \uacbd\uc6b0, <a href=\"https:\/\/github.com\/mgroves\/SqlServerToCouchbase\/issues\">\uae43\ud5c8\ube0c\uc5d0\uc11c \uc774\uc288\ub97c \uc0dd\uc131\ud558\uc138\uc694.<\/a>.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_user_to_user\">\uc0ac\uc6a9\uc790 \ub300 \uc0ac\uc6a9\uc790<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>SQL Server\ub294 \ub370\uc774\ud130\ubca0\uc774\uc2a4, \uc2a4\ud0a4\ub9c8 \ubc0f \ud14c\uc774\ube14 \uc218\uc900\uc5d0\uc11c \ub2e4\uc591\ud55c \uc0ac\uc6a9\uc790 \uc720\ud615, \ubcf4\uc548 \uc5ed\ud560 \ubc0f \uad8c\ud55c\uc744 \uc9c0\uc6d0\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uc11c\ubc84\uc5d0\ub294 \ubc84\ud0b7, \ubc94\uc704 \ubc0f \uceec\ub809\uc158 \uc218\uc900\uc5d0\uc11c \ub2e4\uc591\ud55c \uad8c\ud55c\uc744 \uc124\uc815\ud560 \uc218 \uc788\ub294 \uc5ed\ud560 \uae30\ubc18 \uc778\uc99d(RBAC)\uc774 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>SqlServerToCouchbase \uc720\ud2f8\ub9ac\ud2f0\ub294 \uc77c\uce58\ud558\ub294 \uc0ac\uc6a9\uc790\ub97c \uc0dd\uc131\ud558\uace0 \uac00\ub2a5\ud55c \ud55c \uad8c\ud55c\uc744 \ucd5c\ub300\ud55c \ubcc0\ud658\ud558\uae30 \uc704\ud574 \ucd5c\uc120\uc744 \ub2e4\ud569\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>AdventureWorks\uc5d0\ub294 \uc138\ubd84\ud654\ub41c \uad8c\ud55c\uc744 \uac00\uc9c4 \uc0ac\uc6a9\uc790\uc758 \uc608\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc800\ub294 Person \uc2a4\ud0a4\ub9c8\uc5d0 \uc788\ub294 \uba87 \uac1c\uc758 \ud14c\uc774\ube14\uc5d0 \ub300\ud55c \uad8c\ud55c\uc758 \ud558\uc704 \uc9d1\ud569\uc744 \ub098\ud0c0\ub0b4\uae30 \uc704\ud574 \uc9c1\uc811 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13008-sql-server-user-permissions-security.png\" alt=\"SQL Server user permissions at the table level\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Couchbase\uc758 \ud574\ub2f9 \uc0ac\uc6a9\uc790\ub3c4 \ube44\uc2b7\ud55c \uad8c\ud55c\uc744 \uac16\uac8c \ub429\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2021\/02\/13009-couchbase-user-permissions-security.png\" alt=\"Couchbase user permissions at the collection level\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>SQL Server\uc5d0\ub294 \ub370\uc774\ud130 \uc791\uc5c5\uc744 \uc704\ud55c API\uac00 \ud558\ub098\ub9cc \uc788\uc9c0\ub9cc(tSQL), Couchbase\uc5d0\ub294 N1QL, \ud0a4\/\uac12, \uc804\uccb4 \ud14d\uc2a4\ud2b8 \uac80\uc0c9, \ubd84\uc11d \ub4f1 \uc5ec\ub7ec \uac00\uc9c0\uac00 \uc788\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c Couchbase\uc5d0\uc11c \uc0ac\uc6a9\uc790\uc5d0\uac8c \ubcc0\ud658\ub418\ub294 \uad8c\ud55c\uc758 \uc218\uac00 \ub354 \ub9ce\uc2b5\ub2c8\ub2e4. \"\ub808\ubca8 4\"\ub85c \uc62c\ub77c\uac08\uc218\ub85d \ud544\uc694\uc5d0 \ub530\ub77c \uc774\ub7ec\ud55c \uad8c\ud55c\uc744 \uc870\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><strong>\uacbd\uace0<\/strong>: \uc0ac\uc6a9\uc790, \uc778\uc99d, \uad8c\ud55c \ubd80\uc5ec \ubc0f \ubcf4\uc548\uc740 \ubc18\ub4dc\uc2dc \uc8fc\uc758\ub97c \uae30\uc6b8\uc774\uace0 \uc218\ub3d9\uc73c\ub85c \uac80\ud1a0\ud574\uc57c \ud558\ub294 \uc601\uc5ed\uc785\ub2c8\ub2e4. \uc6d0\ud558\ub294 \uacb0\uacfc\ub97c \uc5bb\uc744 \uc218 \uc788\ub2e4\uace0 \ud655\uc2e0\ud560 \ub54c\uae4c\uc9c0 \uc774 \ub2e8\uacc4\ub97c \uc644\uc804\ud788 \uc790\ub3d9\ud654\ud558\uc9c0 \ub9c8\uc138\uc694.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_next_steps\">\ub2e4\uc74c \ub2e8\uacc4<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>\"\ubcc0\ud658\" \uc720\ud2f8\ub9ac\ud2f0\ub294 SQL Server \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc758 Couchbase Server \ubcc0\ud658\uc744 \uc0dd\uc131\ud569\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \ud604\uc7ac \ud074\ub77c\uc774\uc5b8\ud2b8 \ucf54\ub4dc\ub294 \ubcc0\ud658\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \uc774\ub294 SQL Server\uc5d0\uc11c NoSQL\ub85c\uc758 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \ub9c8\uc774\uadf8\ub808\uc774\uc158\ubfd0\ub9cc \uc544\ub2c8\ub77c \ubaa8\ub4e0 \ub370\uc774\ud130\ubca0\uc774\uc2a4 \ub9c8\uc774\uadf8\ub808\uc774\uc158\uc5d0\uc11c \uc5b4\ub824\uc6b4 \ubb38\uc81c\uc785\ub2c8\ub2e4. \ud558\uc9c0\ub9cc SQL \ucffc\ub9ac \ubc0f \ud074\ub77c\uc774\uc5b8\ud2b8 \ucf54\ub4dc \ub9c8\uc774\uadf8\ub808\uc774\uc158\uc5d0 \ub300\ud55c \ud5a5\ud6c4 \ud3ec\uc2a4\ud305\uc744 \uc774 \ube14\ub85c\uadf8\uc5d0\uc11c \uacc4\uc18d \uc9c0\ucf1c\ubd10 \uc8fc\uc138\uc694!<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uadf8 \ub3d9\uc548 \uba87 \uac00\uc9c0 \ub2e8\uacc4\ub97c \uc0b4\ud3b4\ubcfc \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 SDK\ub97c \uc0ac\uc6a9\ud558\ub824\uba74 \ud074\ub77c\uc774\uc5b8\ud2b8\uc5d0\uc11c \ub370\uc774\ud130 \uc561\uc138\uc2a4 \uad8c\ud55c\uc744 \ubcc0\uacbd\ud574\uc57c \ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4 ADO.NET, Dapper, PetaPoco \ub4f1\uc744 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0\uc5d0\ub294 <a href=\"https:\/\/docs.couchbase.com\/dotnet-sdk\/current\/hello-world\/start-using-sdk.html\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 .NET SDK<\/a>.<\/li>\n<li>\uc5d4\ud2f0\ud2f0 \ud504\ub808\uc784\uc6cc\ud06c\ub97c \uc0ac\uc6a9\ud558\uc2dc\ub098\uc694? \ud655\uc778\ud574\ubcf4\uc138\uc694. <a href=\"https:\/\/github.com\/couchbaselabs\/Linq2Couchbase\">Linq2Couchbase \ud504\ub85c\uc81d\ud2b8<\/a>. (Java\ub97c \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0 <a href=\"https:\/\/spring.io\/projects\/spring-data-couchbase\">Spring \ub370\uc774\ud130 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4<\/a>.)<\/li>\n<li>\uce74\uc6b0\uce58\ubca0\uc774\uc2a4\ub294 ACID \ud2b8\ub79c\uc7ad\uc158\uc744 \uc9c0\uc6d0\ud569\ub2c8\ub2e4! .NET\uc6a9, <a href=\"https:\/\/www.nuget.org\/packages\/Couchbase.Transactions\/1.0.0-beta.1\">Couchbase.Transactions<\/a> \ub294 \ud604\uc7ac \ubca0\ud0c0 \ubc84\uc804\uc785\ub2c8\ub2e4. Couchbase 7\uc5d0\uc11c N1QL\uc740 \ub2e4\uc74c\uc744 \uc9c0\uc6d0\ud569\ub2c8\ub2e4. <a href=\"https:\/\/docs.couchbase.com\/server\/7.0\/n1ql\/n1ql-language-reference\/begin-transaction.html\"><code>\ud2b8\ub79c\uc7ad\uc158 \uc2dc\uc791\/\ucee4\ubc0b\/\ub864\ubc31<\/code><\/a><\/li>\n<li>Couchbase\uc758 N1QL\uc740 \uc644\uc804\ud55c SQL \uad6c\ud604\uc785\ub2c8\ub2e4. \uadf8\ub7ec\ub098 \ubaa8\ub4e0 SQL \ubc29\uc5b8\uacfc \ub9c8\ucc2c\uac00\uc9c0\ub85c N1QL\uacfc tSQL \uc0ac\uc774\uc5d0\ub294 \ucc28\uc774\uc810\uc774 \uc788\uc2b5\ub2c8\ub2e4. \uc77c\ubd80 \ucffc\ub9ac\ub294 \uadf8\ub300\ub85c \uc791\ub3d9\ud560 \uc218 \uc788\uc9c0\ub9cc \ub300\ubd80\ubd84\uc758 \uacbd\uc6b0 \uad6c\ubb38 \ucc28\uc774\uac00 \uc788\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ube0c\ub77c\uc6b0\uc800 \ub0b4 <a href=\"https:\/\/query-tutorial.couchbase.com\/tutorial\/\">\ub300\ud654\ud615 N1QL \ud29c\ud1a0\ub9ac\uc5bc<\/a>.<\/li>\n<li>MySQL\uacfc \ube44\uc2b7\ud55c \uc811\uadfc \ubc29\uc2dd\uc744 \ucc3e\uace0 \uacc4\uc2e0\uac00\uc694? \ud655\uc778\ud574 \ubcf4\uc138\uc694. <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/hands-on-migration-from-relational-to-collections\/\">\uad00\uacc4\ud615\uc5d0\uc11c \uceec\ub809\uc158\uc73c\ub85c\uc758 \ub9c8\uc774\uadf8\ub808\uc774\uc158 \uc2e4\uc2b5<\/a> \ub97c \uc0ac\uc6a9\ud558\uc5ec Python \/ CLI\ub97c \uc0ac\uc6a9\ud558\ub294 \uc720\uc0ac\ud55c \uc811\uadfc \ubc29\uc2dd\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<li>PostgreSQL\uacfc \uc720\uc0ac\ud55c \uc811\uadfc \ubc29\uc2dd\uc744 \ucc3e\uace0 \uacc4\uc2e0\uac00\uc694? \ud655\uc778\ud574 \ubcf4\uc138\uc694. <a href=\"https:\/\/github.com\/metonymic-smokey\/couchgres\/tree\/main\/migrate\">Couchgres<\/a>\ub294 \ucee4\ubba4\ub2c8\ud2f0\uac00 \uc9c0\uc6d0\ud558\ub294 \uc624\ud508\uc18c\uc2a4 \ud504\ub85c\uc81d\ud2b8\ub85c, Golang\/CLI\uc640 \uc720\uc0ac\ud55c \uc811\uadfc \ubc29\uc2dd\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_summary\">\uc694\uc57d<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Couchbase Server 7\uc740 Couchbase Server\uc758 \uac00\uc7a5 \ud06c\uace0 \uc911\uc694\ud55c \ub9b4\ub9ac\uc2a4\uac00 \ub420 \uc608\uc815\uc785\ub2c8\ub2e4. SQL\uc5d0\uc11c NoSQL\ub85c \ubcc0\ud658\ud558\ub294 \uc5ec\uc815\uc5d0 \ub3c4\uc6c0\uc774 \ub420 \uc218 \uc788\ub3c4\ub85d \uc124\uacc4\ub41c \uc774\uc640 \uac19\uc740 \ub354 \ub9ce\uc740 \uae00\uc744 Couchbase \ube14\ub85c\uadf8\uc5d0\uc11c \uacc4\uc18d \uc9c0\ucf1c\ubd10 \uc8fc\uc138\uc694.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\uc9c0\uae08 \ubc14\ub85c Couchbase Server 7 \ubca0\ud0c0\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub2e4\uc74c\uc744 \uc218\ud589\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/downloads\/\">\ub2e4\uc6b4\ub85c\ub4dc\ud558\uc5ec \uc0ac\uc6a9\ud574 \ubcf4\uae30<\/a>. \ubca0\ud0c0 \ubc84\uc804\uc774\ubbc0\ub85c, \ud53c\ub4dc\ubc31\uc774\ub098 \uc9c8\ubb38\uc774 \uc788\uc73c\uc2dc\uba74 \uc5b8\uc81c\ub4e0\uc9c0 <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/forums\/c\/beta-support\/\">\ubca0\ud0c0 \uc9c0\uc6d0 \uc139\uc158<\/a> Couchbase Server 7 \ubc0f \uae30\ud0c0 \ubca0\ud0c0\/\ud504\ub9ac\ubdf0 \ub9b4\ub9ac\uc2a4\uc5d0 \ub300\ud55c Couchbase \ud3ec\ub7fc\uc744 \ucc38\uc870\ud558\uc138\uc694.<\/p>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>SQL to NoSQL migration seems like a contradiction, but thanks to advances and innovations in Couchbase Server\u2019s NoSQL database, it\u2019s becoming easier. In this post, I\u2019ll introduce you to a tool called SqlServerToCouchbase, an open-source attempt at an automated tool [&hellip;]<\/p>","protected":false},"author":71,"featured_media":10854,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1811,1816,1812],"tags":[9499,1556],"ppma_author":[8937],"class_list":["post-10832","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dotnet","category-couchbase-server","category-n1ql-query","tag-acid-transactions","tag-sql-server"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.8 (Yoast SEO v25.8) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SQL to NoSQL Migration: How to Convert Automatically<\/title>\n<meta name=\"description\" content=\"SQL to NoSQL migration can be at least partially automated. This article helps you find out about the new conversion features available in Couchbase Server 7.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/sql-to-nosql-automated-migration\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SQL to NoSQL: Automated Migration\" \/>\n<meta property=\"og:description\" content=\"SQL to NoSQL migration can be at least partially automated. This article helps you find out about the new conversion features available in Couchbase Server 7.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/sql-to-nosql-automated-migration\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-03-02T08:27:36+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-13T23:46:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1575\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Matthew Groves\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@mgroves\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matthew Groves\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"13\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/\"},\"author\":{\"name\":\"Matthew Groves\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58\"},\"headline\":\"SQL to NoSQL: Automated Migration\",\"datePublished\":\"2021-03-02T08:27:36+00:00\",\"dateModified\":\"2025-06-13T23:46:30+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/\"},\"wordCount\":2175,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg\",\"keywords\":[\"ACID transactions\",\"SQL Server\"],\"articleSection\":[\".NET\",\"Couchbase Server\",\"SQL++ \/ N1QL Query\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/\",\"name\":\"SQL to NoSQL Migration: How to Convert Automatically\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg\",\"datePublished\":\"2021-03-02T08:27:36+00:00\",\"dateModified\":\"2025-06-13T23:46:30+00:00\",\"description\":\"SQL to NoSQL migration can be at least partially automated. This article helps you find out about the new conversion features available in Couchbase Server 7.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg\",\"width\":1575,\"height\":628,\"caption\":\"Couchbase TLS security enhancements in 7.1\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SQL to NoSQL: Automated Migration\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58\",\"name\":\"Matthew Groves\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/ba51e6aacc53995c323a634e4502ef54\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g\",\"caption\":\"Matthew Groves\"},\"description\":\"Matthew D. Groves is a guy who loves to code. It doesn't matter if it's C#, jQuery, or PHP: he'll submit pull requests for anything. He has been coding professionally ever since he wrote a QuickBASIC point-of-sale app for his parent's pizza shop back in the 90s. He currently works as a Senior Product Marketing Manager for Couchbase. His free time is spent with his family, watching the Reds, and getting involved in the developer community. He is the author of AOP in .NET, Pro Microservices in .NET, a Pluralsight author, and a Microsoft MVP.\",\"sameAs\":[\"https:\/\/crosscuttingconcerns.com\",\"https:\/\/x.com\/mgroves\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/matthew-groves\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"SQL to NoSQL Migration: How to Convert Automatically","description":"SQL to NoSQL migration can be at least partially automated. This article helps you find out about the new conversion features available in Couchbase Server 7.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/sql-to-nosql-automated-migration\/","og_locale":"ko_KR","og_type":"article","og_title":"SQL to NoSQL: Automated Migration","og_description":"SQL to NoSQL migration can be at least partially automated. This article helps you find out about the new conversion features available in Couchbase Server 7.","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/sql-to-nosql-automated-migration\/","og_site_name":"The Couchbase Blog","article_published_time":"2021-03-02T08:27:36+00:00","article_modified_time":"2025-06-13T23:46:30+00:00","og_image":[{"width":1575,"height":628,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg","type":"image\/jpeg"}],"author":"Matthew Groves","twitter_card":"summary_large_image","twitter_creator":"@mgroves","twitter_misc":{"Written by":"Matthew Groves","Est. reading time":"13\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/"},"author":{"name":"Matthew Groves","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58"},"headline":"SQL to NoSQL: Automated Migration","datePublished":"2021-03-02T08:27:36+00:00","dateModified":"2025-06-13T23:46:30+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/"},"wordCount":2175,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg","keywords":["ACID transactions","SQL Server"],"articleSection":[".NET","Couchbase Server","SQL++ \/ N1QL Query"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/","url":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/","name":"SQL to NoSQL Migration: How to Convert Automatically","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg","datePublished":"2021-03-02T08:27:36+00:00","dateModified":"2025-06-13T23:46:30+00:00","description":"SQL to NoSQL migration can be at least partially automated. This article helps you find out about the new conversion features available in Couchbase Server 7.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2021\/02\/130-hero-sql-to-nosql-handoff.jpg","width":1575,"height":628,"caption":"Couchbase TLS security enhancements in 7.1"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/sql-to-nosql-automated-migration\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"SQL to NoSQL: Automated Migration"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58","name":"\ub9e4\ud29c \uadf8\ub85c\ube0c\uc2a4","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/ba51e6aacc53995c323a634e4502ef54","url":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","caption":"Matthew Groves"},"description":"Matthew D. Groves\ub294 \ucf54\ub529\uc744 \uc88b\uc544\ud558\ub294 \uc0ac\ub78c\uc785\ub2c8\ub2e4. C#, jQuery, PHP \ub4f1 \ubb34\uc5c7\uc774\ub4e0 \ud480 \ub9ac\ud018\uc2a4\ud2b8\ub97c \uc81c\ucd9c\ud560 \uc815\ub3c4\ub85c \ucf54\ub529\uc744 \uc88b\uc544\ud569\ub2c8\ub2e4. 90\ub144\ub300\uc5d0 \ubd80\ubaa8\ub2d8\uc758 \ud53c\uc790 \uac00\uac8c\ub97c \uc704\ud574 QuickBASIC POS \uc571\uc744 \ub9cc\ub4e0 \uc774\ud6c4\ub85c \uc804\ubb38\uc801\uc73c\ub85c \ucf54\ub529\uc744 \ud574\uc654\uc2b5\ub2c8\ub2e4. \ud604\uc7ac Couchbase\uc758 \uc120\uc784 \uc81c\ud488 \ub9c8\ucf00\ud305 \uad00\ub9ac\uc790\ub85c \uc77c\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc5ec\uac00 \uc2dc\uac04\uc5d0\ub294 \uac00\uc871\uacfc \ud568\uaed8 \ucd95\uad6c \uacbd\uae30\ub97c \uad00\ub78c\ud558\uace0 \uac1c\ubc1c\uc790 \ucee4\ubba4\ub2c8\ud2f0\uc5d0 \ucc38\uc5ec\ud558\uba70 \uc2dc\uac04\uc744 \ubcf4\ub0c5\ub2c8\ub2e4. \uadf8\ub294 .NET\uc758 AOP, .NET\uc758 \ud504\ub85c \ub9c8\uc774\ud06c\ub85c\uc11c\ube44\uc2a4, Pluralsight \uc800\uc790, Microsoft MVP\uc758 \uc800\uc790\uc774\uae30\ub3c4 \ud569\ub2c8\ub2e4.","sameAs":["https:\/\/crosscuttingconcerns.com","https:\/\/x.com\/mgroves"],"url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/matthew-groves\/"}]}},"authors":[{"term_id":8937,"user_id":71,"is_guest":0,"slug":"matthew-groves","display_name":"Matthew Groves","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","author_category":"","last_name":"Groves","first_name":"Matthew","job_title":"","user_url":"https:\/\/crosscuttingconcerns.com","description":"Matthew D. Groves\ub294 \ucf54\ub529\uc744 \uc88b\uc544\ud558\ub294 \uc0ac\ub78c\uc785\ub2c8\ub2e4.  C#, jQuery, PHP \ub4f1 \ubb34\uc5c7\uc774\ub4e0 \ud480 \ub9ac\ud018\uc2a4\ud2b8\ub97c \uc81c\ucd9c\ud560 \uc815\ub3c4\ub85c \ucf54\ub529\uc744 \uc88b\uc544\ud569\ub2c8\ub2e4.  90\ub144\ub300\uc5d0 \ubd80\ubaa8\ub2d8\uc758 \ud53c\uc790 \uac00\uac8c\ub97c \uc704\ud574 QuickBASIC POS \uc571\uc744 \ub9cc\ub4e0 \uc774\ud6c4\ub85c \uc804\ubb38\uc801\uc73c\ub85c \ucf54\ub529\uc744 \ud574\uc654\uc2b5\ub2c8\ub2e4.  \ud604\uc7ac Couchbase\uc758 \uc120\uc784 \uc81c\ud488 \ub9c8\ucf00\ud305 \uad00\ub9ac\uc790\ub85c \uc77c\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc5ec\uac00 \uc2dc\uac04\uc5d0\ub294 \uac00\uc871\uacfc \ud568\uaed8 \ucd95\uad6c \uacbd\uae30\ub97c \uad00\ub78c\ud558\uace0 \uac1c\ubc1c\uc790 \ucee4\ubba4\ub2c8\ud2f0\uc5d0 \ucc38\uc5ec\ud558\uba70 \uc2dc\uac04\uc744 \ubcf4\ub0c5\ub2c8\ub2e4.  \uadf8\ub294 .NET\uc758 AOP, .NET\uc758 \ud504\ub85c \ub9c8\uc774\ud06c\ub85c\uc11c\ube44\uc2a4, Pluralsight \uc800\uc790, Microsoft MVP\uc758 \uc800\uc790\uc774\uae30\ub3c4 \ud569\ub2c8\ub2e4."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/10832","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=10832"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/10832\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/10854"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=10832"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=10832"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=10832"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=10832"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}