{"id":1652,"date":"2014-12-16T19:35:06","date_gmt":"2014-12-16T19:35:06","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1652"},"modified":"2025-06-13T23:50:10","modified_gmt":"2025-06-14T06:50:10","slug":"introducing-couchbase-net-sdk-20-beta-2","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/introducing-couchbase-net-sdk-20-beta-2\/","title":{"rendered":"Couchbase .NET SDK 2.0 \ubca0\ud0c0 2\ub97c \uc18c\uac1c\ud569\ub2c8\ub2e4!"},"content":{"rendered":"<p>\uc624\ub298 Couchbase .NET SDK 2.0 \ubca0\ud0c0 2\ub97c \ucd9c\uc2dc\ud569\ub2c8\ub2e4.   \uc774\uac83\uc740 .NET \ud50c\ub7ab\ud3fc\uacfc .NET \ucee4\ubba4\ub2c8\ud2f0\uc5d0 \ub300\ud55c \uc9c0\uc18d\uc801\uc778 \ub178\ub825\uc758 \uc77c\ud658\uc73c\ub85c \uc774\ub8e8\uc5b4\uc9c4 \ud765\ubbf8\ub85c\uc6b4 \uc5c5\ub370\uc774\ud2b8\uc785\ub2c8\ub2e4.  \uace0\uac1d\uc758 \uc694\uccad\uc5d0 \ub530\ub77c \uc815\uc2dd \ubc84\uc804 \ucd9c\uc2dc \uc804\uc5d0 \uba87 \uac00\uc9c0 \uc0c8\ub85c\uc6b4 \uae30\ub2a5\ub3c4 \ucd94\uac00\ud588\uc2b5\ub2c8\ub2e4.   \ub300\ub7c9 \uba54\uc11c\ub4dc\uc640 \ube44\ub3d9\uae30 \ubdf0 \ubc0f N1QL \ucffc\ub9ac\ub97c \uc0b4\uc9dd \uc5ff\ubcfc \uc218 \uc788\ub294 \uae30\ub2a5\uc744 \ud3ec\ud568\ud558\uac8c \ub418\uc5b4 \ub9e4\uc6b0 \uae30\uc069\ub2c8\ub2e4!<\/p>\n<h2>\uc774\ubc88 \ub9b4\ub9ac\uc2a4\uc5d0\ub294 \ubb34\uc5c7\uc774 \ud3ec\ud568\ub418\ub098\uc694?<\/h2>\n<p>\uae30\ub2a5 \uba74\uc5d0\uc11c\ub294 \uc774\uc804 \ub9b4\ub9ac\uc2a4(DP1, DP2 \ubc0f \ubca0\ud0c0)\ub97c \uae30\ubc18\uc73c\ub85c \ud558\uba70 \ub2e4\uc74c\uacfc \uac19\uc740 \uae30\ub2a5\uc774 \ucd94\uac00\ub418\uc5c8\uc2b5\ub2c8\ub2e4:<\/p>\n<ul>\n<li>\ub300\ub7c9 \ubc29\ubc95: \uc5c5\uc11c\ud2b8 \ubc0f \uac00\uc838\uc624\uae30<\/li>\n<li>\ube44\ub3d9\uae30 \ubcf4\uae30<\/li>\n<li>\ube44\ub3d9\uae30 N1QL \ucffc\ub9ac(\uc2e4\ud5d8\uc801 - N1QL\uc740 \uc5ec\uc804\ud788 DP3)<\/li>\n<li>\uacf5\ud1b5 \ub370\uc774\ud130 \uc720\ud615 - SDK \uac04\uc5d0 \uc77c\uad00\ub41c \uac12 \uc720\ud615 \uc9c0\uc815<\/li>\n<li>\uad00\ub9ac API - \ud074\ub7ec\uc2a4\ud130, \ubc84\ud0b7 \ubc0f \ubcf4\uae30 \uad00\ub9ac\uc6a9<\/li>\n<\/ul>\n<h3>\ub300\ub7c9 \ubc29\ubc95: \uc5c5\uc11c\ud2b8 \ubc0f \uac00\uc838\uc624\uae30<\/h3>\n<p>\ub300\ub7c9 \uba54\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud558\uba74 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \ud55c \ubc88\uc758 \uc694\uccad\uc73c\ub85c \ud0a4 \uc9d1\ud569\uc744 \uc804\uc1a1\ud55c \ub2e4\uc74c \uacb0\uacfc\ub97c \uae30\ub2e4\ub9b4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4<\/p>\n<div class=\"geshifilter\">\n<div class=\"csharp geshifilter-csharp\" style=\"font-family:monospace;\"><span style=\"color: #0600FF; font-weight: bold;\">\uc0ac\uc6a9<\/span><span style=\"color: #008000;\">(<\/span>var \ud074\ub7ec\uc2a4\ud130 <span style=\"color: #008000;\">=<\/span> <a href=\"https:\/\/www.google.com\/search?q=new+msdn.microsoft.com\"><span style=\"color: #008000;\">new<\/span><\/a> \ud074\ub7ec\uc2a4\ud130<span style=\"color: #008000;\">(<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">)<\/span><br \/><span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 <span style=\"color: #0600FF; font-weight: bold;\">\uc0ac\uc6a9<\/span> <span style=\"color: #008000;\">(<\/span>var bucket <span style=\"color: #008000;\">=<\/span> \ud074\ub7ec\uc2a4\ud130<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">OpenBucket<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">)<\/span><br \/>\u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 var items <span style=\"color: #008000;\">=<\/span> <a href=\"https:\/\/www.google.com\/search?q=new+msdn.microsoft.com\"><span style=\"color: #008000;\">new<\/span><\/a> \uc0ac\uc804<span style=\"color: #008000;\"><<\/span><span style=\"color: #6666cc; font-weight: bold;\">\ubb38\uc790\uc5f4<\/span>\ub3d9\uc801<span style=\"color: #008000;\">><\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><span style=\"color: #666666;\">\"Key1\"<\/span>, <span style=\"color: #666666;\">\"\ubb38\uc790\uc5f4\"<\/span><span style=\"color: #008000;\">}<\/span>,<br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><span style=\"color: #666666;\">\"Key2\"<\/span>, <a href=\"https:\/\/www.google.com\/search?q=new+msdn.microsoft.com\"><span style=\"color: #008000;\">new<\/span><\/a> <span style=\"color: #008000;\">{<\/span>Foo <span style=\"color: #008000;\">=<\/span> <span style=\"color: #666666;\">\"\ubc14\"<\/span>, Baz <span style=\"color: #008000;\">=<\/span> <span style=\"color: #FF0000;\">2<\/span><span style=\"color: #008000;\">}<\/span><span style=\"color: #008000;\">}<\/span>,<br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><span style=\"color: #666666;\">\"Key3\"<\/span>, <span style=\"color: #FF0000;\">2<\/span><span style=\"color: #008000;\">}<\/span>,<br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><span style=\"color: #666666;\">\"Key4\"<\/span>, <span style=\"color: #FF0000;\">5.8<\/span><span style=\"color: #008000;\">}<\/span>,<br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><span style=\"color: #666666;\">\"Key5\"<\/span>, <a href=\"https:\/\/www.google.com\/search?q=new+msdn.microsoft.com\"><span style=\"color: #008000;\">new<\/span><\/a><span style=\"color: #008000;\">[<\/span><span style=\"color: #008000;\">]<\/span> <span style=\"color: #008000;\">{<\/span>0x00, 0x00<span style=\"color: #008000;\">}<\/span><span style=\"color: #008000;\">}<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0<span style=\"color: #008000;\">}<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 var multiUpsert <span style=\"color: #008000;\">=<\/span> \ubc84\ud0b7<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">Upsert<\/span><span style=\"color: #008000;\">(<\/span>\ud56d\ubaa9<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #0600FF; font-weight: bold;\">foreach<\/span> <span style=\"color: #008000;\">(<\/span>var item <span style=\"color: #0600FF; font-weight: bold;\">in<\/span> \uba40\ud2f0\uc5c5\uc11c\ud2b8<span style=\"color: #008000;\">)<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 Assert<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">IsTrue<\/span><span style=\"color: #008000;\">(<\/span>\ud56d\ubaa9<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\uac00\uce58<\/span><span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\uc131\uacf5<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">}<\/span><br \/>\u00a0 \u00a0<span style=\"color: #008000;\">}<\/span><br \/><span style=\"color: #008000;\">}<\/span><\/div>\n<\/div>\n<p>\uc704\uc5d0\uc11c\ub294 \ud074\ub7ec\uc2a4\ud130 \uac1d\uccb4\ub97c \uc0dd\uc131\ud558\uace0 \uae30\ubcf8 \ubc84\ud0b7\uc744 \uc5f4\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c \ud0a4\ub294 \ubb38\uc790\uc5f4\ub85c \uc815\uc758\ub418\uace0 \uac12\uc740 \ub3d9\uc801 \uc720\ud615\uc73c\ub85c \uc815\uc758\ub41c \ub515\uc154\ub108\ub9ac\ub97c \uad6c\ucd95\ud569\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c \uc5ec\ub7ec \uac1c\uc758 \ud0a4\uc640 \uc5f0\uacb0\ub41c \uac12\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4. \uac01 \uac12\uc740 \ubb38\uc790\uc5f4, \uc775\uba85 \uc720\ud615, \uc815\uc218, 10\uc9c4\uc218, \ub9c8\uc9c0\ub9c9\uc73c\ub85c \ubc14\uc774\ud2b8 \ubc30\uc5f4 \ub4f1 \uc11c\ub85c \ub2e4\ub978 \uc720\ud615\uc784\uc744 \uc54c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c IBucket.Upsert(...)\ub97c \ud638\ucd9c\ud558\uace0 \uc0ac\uc804\uc744 \uc804\ub2ec\ud569\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c \uacb0\uacfc\ub97c \ubc18\ubcf5\ud558\uc5ec \uac01 \uc791\uc5c5\uc774 \uc131\uacf5\ud588\ub294\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub4a4\uc5d0\uc11c \uc6b0\ub9ac\ub294 \uc791\uc5c5 \ubcd1\ub82c \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \ud65c\uc6a9\ud558\uc5ec \uac01 \uc791\uc5c5\uc744 \ubcd1\ub82c\ub85c \uc2e4\ud589\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc624\ubc84\ub85c\ub4dc\uc5d0\ub294 \uae30\ubcf8 ParallelOptions\uac00 \uc0ac\uc6a9\ub418\uc9c0\ub9cc, \uc790\uccb4 ParallelOptions(\uc790\uccb4 \ucde8\uc18c \ud1a0\ud070 \ud3ec\ud568)\ub97c \uc804\ub2ec\ud558\uace0 \ubc18\ubcf5\ub2f9 \ucc98\ub9ac\ub420 \ud0a4\uc758 \uac01 \ud30c\ud2f0\uc158 \ud06c\uae30\ub97c \uc81c\uc5b4\ud560 \uc218 \uc788\ub294 \uc624\ubc84\ub85c\ub4dc\uac00 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>\ube44\ub3d9\uae30 \ubcf4\uae30<\/h3>\n<p>\ube44\ub3d9\uae30 CRUD(InsertAsync, UpsertAsync \ub4f1) \uc791\uc5c5\uc5d0 \ub300\ud55c \uc9c0\uc6d0\uc740 GA\uc5d0 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc558\uc9c0\ub9cc, \ube44\ub3d9\uae30 \ubcf4\uae30\ub294 \ud3ec\ud568\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc774 \uad6c\ud604\uc740 \ub300\ubd80\ubd84\uc758 .NET \uac1c\ubc1c\uc790\uc5d0\uac8c \uc775\uc219\ud55c \uc791\uc5c5 \ube44\ub3d9\uae30 \ud328\ud134(TAP)\uc744 \uae30\ubc18\uc73c\ub85c \ud558\uba70 .NET 4.0\uc5d0 \ub3c4\uc785\ub41c async\/await \ud0a4\uc6cc\ub4dc\ub97c \uc9c0\uc6d0\ud569\ub2c8\ub2e4:<\/p>\n<div class=\"geshifilter\">\n<div class=\"csharp geshifilter-csharp\" style=\"font-family:monospace;\"><span style=\"color: #0600FF; font-weight: bold;\">public<\/span> \ube44\ub3d9\uae30 <span style=\"color: #6666cc; font-weight: bold;\">void<\/span> QueryAsync<span style=\"color: #008000;\">(<\/span><span style=\"color: #008000;\">)<\/span><br \/><span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #0600FF; font-weight: bold;\">\uc0ac\uc6a9<\/span> <span style=\"color: #008000;\">(<\/span>var bucket <span style=\"color: #008000;\">=<\/span> _cluster<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">OpenBucket<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #666666;\">\"\ub9e5\uc8fc \uc0d8\ud50c\"<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">)<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 var \ucffc\ub9ac <span style=\"color: #008000;\">=<\/span> \ubc84\ud0b7<span style=\"color: #008000;\">.<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #0000FF;\">CreateQuery<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #666666;\">\"\ub9e5\uc8fc\"<\/span>, <span style=\"color: #666666;\">\"brewery_beers\"<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">.<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #0000FF;\">\uc81c\ud55c<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #FF0000;\">10<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><\/p>\n<p>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 var \uacb0\uacfc <span style=\"color: #008000;\">=<\/span> \ubc84\ud0b7 \ub300\uae30<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">QueryAsync<\/span><span style=\"color: #008000;\"><<\/span>\ub3d9\uc801<span style=\"color: #008000;\">><\/span><span style=\"color: #008000;\">(<\/span>\ucffc\ub9ac<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #0600FF; font-weight: bold;\">foreach<\/span> <span style=\"color: #008000;\">(<\/span>var row <span style=\"color: #0600FF; font-weight: bold;\">in<\/span> \uacb0\uacfc<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\ud589<\/span><span style=\"color: #008000;\">)<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \ucf58\uc194<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">WriteLine<\/span><span style=\"color: #008000;\">(<\/span>\ud589<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">}<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">}<\/span><br \/><span style=\"color: #008000;\">}<\/span><\/div>\n<\/div>\n<p>\uc5ec\uae30\uc11c\ub294 \uc774\ubbf8 \uc0dd\uc131\ub41c \ud074\ub7ec\uc2a4\ud130 \uac1c\uccb4\uc5d0\uc11c \"beer-sample\" \ubc84\ud0b7\uc744 \uc5f4\uace0 \"beer\" \ub514\uc790\uc778 \ubb38\uc11c\uc5d0 \uc815\uc758\ub41c \"brewery_beers\" \ubcf4\uae30\ub97c \ub300\uc0c1\uc73c\ub85c \ud558\ub294 \ucffc\ub9ac\ub97c \uc0dd\uc131\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc911\uc694\ud55c \uac83\uc740 \ube44\ub3d9\uae30 \ub300\uae30\ub97c \uc54c\ub9ac\uae30 \uc704\ud574 await \ud0a4\uc6cc\ub4dc\ub97c \uc0ac\uc6a9\ud558\uace0 \uc788\uace0 \ud638\ucd9c \uba54\uc11c\ub4dc\uc5d0 async \ud0a4\uc6cc\ub4dc\uac00 \uc815\uc758\ub418\uc5b4 \uc788\uc73c\uba70, \ud638\ucd9c\ub41c \ucffc\ub9ac\ub97c \uc2e4\ud589\ud558\ub294 \uba54\uc11c\ub4dc\uc758 \uc774\ub984\uc5d0\ub3c4 \"Async\" \ud6c4\ucca8\uc774 \ubd99\uc5b4 \uc788\ub2e4\ub294 \uc810\uc785\ub2c8\ub2e4: QueryAsync<t>(IViewQuery \ucffc\ub9ac). \uc5ec\uae30\uc11c \uc77c\uc5b4\ub098\ub294 \uc77c\uc740 \ucffc\ub9ac \uc694\uccad\uc774 \uba54\uc778 \uc2a4\ub808\ub4dc\uac00 \uc544\ub2cc \uc2a4\ub808\ub4dc \ud480 \uc2a4\ub808\ub4dc\uc5d0\uc11c \uc2e4\ud589\ub41c\ub2e4\ub294 \uac83\uc785\ub2c8\ub2e4. \uba4b\uc9c4 \uc77c\uc774\uc8e0.<\/p>\n<h3>\ube44\ub3d9\uae30 N1QL \ucffc\ub9ac(\uc2e4\ud5d8\uc801)<\/h3>\n<p>\ube44\ub3d9\uae30 \ubcf4\uae30\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c, \ube44\ub3d9\uae30\/\ub300\uae30 \ud0a4\uc6cc\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec N1QL \ucffc\ub9ac\ub97c \ube44\ub3d9\uae30\uc801\uc73c\ub85c \uc2e4\ud589\ud558\uae30 \uc704\ud55c \uc624\ubc84\ub85c\ub4dc\uac00 \ucd94\uac00\ub418\uc5c8\uc2b5\ub2c8\ub2e4:<\/p>\n<div class=\"geshifilter\">\n<div class=\"csharp geshifilter-csharp\" style=\"font-family:monospace;\"><span style=\"color: #0600FF; font-weight: bold;\">public<\/span> \ube44\ub3d9\uae30 <span style=\"color: #6666cc; font-weight: bold;\">void<\/span> QueryN1QLAsync<span style=\"color: #008000;\">(<\/span><span style=\"color: #008000;\">)<\/span><br \/><span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 <span style=\"color: #0600FF; font-weight: bold;\">\uc0ac\uc6a9<\/span> <span style=\"color: #008000;\">(<\/span>var bucket <span style=\"color: #008000;\">=<\/span> _cluster<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">OpenBucket<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">)<\/span><br \/>\u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0<span style=\"color: #0600FF; font-weight: bold;\">const<\/span> <span style=\"color: #6666cc; font-weight: bold;\">\ubb38\uc790\uc5f4<\/span> \ucffc\ub9ac <span style=\"color: #008000;\">=<\/span> <span style=\"color: #666666;\">\"SELECT * \"<\/span> <span style=\"color: #008000;\">+<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<span style=\"color: #666666;\">\"FROM \ud29c\ud1a0\ub9ac\uc5bc \"<\/span> <span style=\"color: #008000;\">+<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<span style=\"color: #666666;\">\"WHERE fname = 'Ian'\"<\/span><span style=\"color: #008000;\">;<\/span><\/p>\n<p>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 var \uacb0\uacfc <span style=\"color: #008000;\">=<\/span> \ubc84\ud0b7 \ub300\uae30<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">QueryAsync<\/span><span style=\"color: #008000;\"><<\/span>\ub3d9\uc801<span style=\"color: #008000;\">><\/span><span style=\"color: #008000;\">(<\/span>\ucffc\ub9ac<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #0600FF; font-weight: bold;\">foreach<\/span> <span style=\"color: #008000;\">(<\/span>var row <span style=\"color: #0600FF; font-weight: bold;\">in<\/span> \uacb0\uacfc<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\ud589<\/span><span style=\"color: #008000;\">)<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \ucf58\uc194<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">WriteLine<\/span><span style=\"color: #008000;\">(<\/span>\ud589<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<span style=\"color: #008000;\">}<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0<span style=\"color: #008000;\">}<\/span><br \/>\u00a0<span style=\"color: #008000;\">}<\/span><\/div>\n<\/div>\n<p>\ub2e4\uc2dc \ud55c \ubc88 \ucffc\ub9ac\ub97c \uc2e4\ud589\ud558\ub294 \uba54\uc11c\ub4dc\uc758 \uc2dc\uadf8\ub2c8\ucc98\uc5d0 \"async\" \ud0a4\uc6cc\ub4dc\ub97c \ucd94\uac00\ud55c \ub2e4\uc74c \"await\" \ud0a4\uc6cc\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \ucffc\ub9ac\uac00 \uba54\uc778 \uc2a4\ub808\ub4dc\uc5d0\uc11c \uc2e4\ud589\ub418\ub294 \ub3d9\uc548 \uc2a4\ub808\ub4dc\ud480 \uc2a4\ub808\ub4dc\uc5d0\uc11c \ube44\ub3d9\uae30 \ub300\uae30\ub97c \uc218\ud589\ud569\ub2c8\ub2e4. \ud638\ucd9c\uc774 \ubc18\ud658\ub418\uba74 \ub2e4\ub978 N1QL \ucffc\ub9ac\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c \uacb0\uacfc\ub97c \ubc18\ubcf5\ud569\ub2c8\ub2e4.<\/p>\n<h3>\uc77c\ubc18\uc801\uc778 \ub370\uc774\ud130 \uc720\ud615<\/h3>\n<p>\uae30\uc5c5 \ud658\uacbd\uc5d0\uc11c\ub294 \uc870\uc9c1\uc758 \ube44\uc988\ub2c8\uc2a4 \uc694\uad6c \uc0ac\ud56d\uc744 \ucda9\uc871\ud558\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc194\ub8e8\uc158\uc744 \uc81c\uacf5\ud558\uae30 \uc704\ud574 \ud558\ub098 \uc774\uc0c1\uc758 \uac1c\ubc1c\uc790 \ud300\uc774 \ub450 \uac1c \uc774\uc0c1\uc758 \ud50c\ub7ab\ud3fc\uc744 \uc0ac\uc6a9\ud558\ub294 \uac83\uc774 \ub9e4\uc6b0 \uc77c\ubc18\uc801\uc785\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, Java\ub85c \uc791\uc131\ub41c \ud2f0\uc5b4\ub294 \ud575\uc2ec \uc11c\ube44\uc2a4\ub97c \uc368\ub4dc\ud30c\ud2f0\uc5d0 \ub178\ucd9c\ud558\uace0, .NET\uc73c\ub85c \uc791\uc131\ub41c \ub2e4\ub978 \ud2f0\uc5b4\ub294 Java \ud2f0\uc5b4\uc5d0\uc11c \ud478\uc2dc\ud55c \ub370\uc774\ud130\ub97c \uc18c\ube44\ud558\ub294 \uacbd\uc6b0\uac00 \uc788\uc2b5\ub2c8\ub2e4. \uc774\uc640 \uac19\uc774 \ud55c \ud50c\ub7ab\ud3fc\uc774 Couchbase\uc5d0 \ub370\uc774\ud130\ub97c \uc4f0\uace0 \ub2e4\ub978 \ud50c\ub7ab\ud3fc\uc774 \ud574\ub2f9 \ub370\uc774\ud130\ub97c \uc77d\ub294 \uc0c1\ud669\uc5d0\uc11c\ub294 Couchbase\uc5d0 \uc800\uc7a5\ub41c \uac01 \ud56d\ubaa9\uc758 \uae30\ubcf8 \ub370\uc774\ud130 \uc720\ud615\uc774 \ub450 \ud50c\ub7ab\ud3fc\uacfc \uac01\uac01\uc758 SDK\uc5d0\uc11c \ub3d9\uc77c\ud558\uac8c \ucde8\uae09\ub418\ub294 \uac83\uc774 \uc911\uc694\ud569\ub2c8\ub2e4.<\/p>\n<p>\uacfc\uac70\uc5d0\ub294 \ub2e4\uc591\ud55c SDK\uc5d0\uc11c \uc720\ud615 \ud2b8\ub79c\uc2a4\ucf54\ub529\uc744 \ucc98\ub9ac\ud558\ub294 \ubc29\uc2dd\uc5d0 \uc57d\uac04\uc758 \uc77c\uad00\uc131\uc774 \uc5c6\uc5c8\uc9c0\ub9cc 2.0 SDK\uc5d0\uc11c\ub294 \ubcc0\uacbd\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc774\uc81c \ud558\ub098\uc758 SDK(\uc608: Python)\uc5d0\uc11c \ubb38\uc11c\ub098 \uac12\uc744 \uc800\uc7a5\ud558\uba74 \ub2e4\ub978 \ud50c\ub7ab\ud3fc\uc5d0\uc11c \ud574\ub2f9 \uac12\uc744 \uc77d\uc744 \ub54c \ub3d9\uc77c\ud55c \uc720\ud615\uc73c\ub85c \ud2b8\ub79c\uc2a4\ucf54\ub529\ub429\ub2c8\ub2e4. \uc774\ub294 \ub2e8\uc21c\ud788 \ud558\uc704 \uc720\ud615 \uc9d1\ud569\uc744 JSON, \ubb38\uc790\uc5f4, \ubc14\uc774\ub108\ub9ac \ub370\uc774\ud130 \ub610\ub294 \uc774\uc804 \ubc84\uc804\uacfc\uc758 \ud638\ud658\uc131\uc744 \uc704\ud574 \"\ube44\uacf5\uac1c\" \uc720\ud615\uc73c\ub85c \ucc98\ub9ac\ud558\uc5ec \uc218\ud589\ub429\ub2c8\ub2e4. \uc774 \uc720\ud615 \uc815\ubcf4\ub294 \ubb38\uc11c \uba54\ud0c0\ub370\uc774\ud130 \ub0b4\uc5d0 '\uacf5\ud1b5 \ud50c\ub798\uadf8'\ub85c \uc800\uc7a5\ub418\uba70 SDK\uc5d0\uc11c \ud2b8\ub79c\uc2a4\ucf54\ub529\uc744 \uc77c\uad00\ub418\uac8c \ucc98\ub9ac\ud558\ub294 \ubc29\ubc95\uc744 \uacb0\uc815\ud558\ub294 \ub370 \uc0ac\uc6a9\ub429\ub2c8\ub2e4.<\/p>\n<h3>\uad00\ub9ac API<\/h3>\n<p>GA\uc5d0\uc11c \ub9c8\uc9c0\ub9c9\uc73c\ub85c \uacf5\uac1c\ub41c \uc8fc\uc694 \uae30\ub2a5\uc740 \ubc84\ud0b7, \ub514\uc790\uc778 \ubb38\uc11c \ubc0f \ubdf0 \uc0dd\uc131 \ubc0f \uc81c\uac70, \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c \ub178\ub4dc \ucd94\uac00 \ubc0f \uc81c\uac70\uc640 \uac19\uc740 \ud074\ub7ec\uc2a4\ud130 \ubc0f \ubc84\ud0b7 \uc218\uc900 \uc791\uc5c5\uc744 \uc218\ud589\ud560 \uc218 \uc788\ub294 \uc644\uc804\ud788 \uc0c8\ub85c\uc6b4 \uad00\ub9ac API\uc785\ub2c8\ub2e4.<\/p>\n<p>\uad00\ub9ac API\ub294 \ubc84\ud0b7\uc5d0\uc11c \uc218\ud589\ub418\ub294 \uc791\uc5c5\uacfc \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c \uc218\ud589\ub418\ub294 \uc791\uc5c5\uc758 \ub450 \uac00\uc9c0 \uac1c\ubcc4 \uc791\uc5c5 \uc720\ud615\uc73c\ub85c \ub098\ub20c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uac01\uac01\uc740 \ud074\ub7ec\uc2a4\ud130 \uac1d\uccb4\uc758 \ud329\ud1a0\ub9ac \uba54\uc11c\ub4dc\uc5d0 \uc758\ud574 \uc0dd\uc131\ub418\ub294 \uac01\uac01\uc758 \uad00\ub9ac\uc790 \uac1d\uccb4\ub85c \ud45c\ud604\ub429\ub2c8\ub2e4.<\/p>\n<p>\ub2e4\uc74c\uc740 \ud074\ub7ec\uc2a4\ud130\uc5d0 \ub178\ub4dc\ub97c \ucd94\uac00\ud558\ub294 \uc608\uc81c\uc785\ub2c8\ub2e4:<\/p>\n<div class=\"geshifilter\">\n<div class=\"csharp geshifilter-csharp\" style=\"font-family:monospace;\"><span style=\"color: #0600FF; font-weight: bold;\">\uc0ac\uc6a9<\/span> <span style=\"color: #008000;\">(<\/span>var \ud074\ub7ec\uc2a4\ud130 <span style=\"color: #008000;\">=<\/span> <a href=\"https:\/\/www.google.com\/search?q=new+msdn.microsoft.com\"><span style=\"color: #008000;\">new<\/span><\/a> \ud074\ub7ec\uc2a4\ud130<span style=\"color: #008000;\">(<\/span>\uad6c\uc131<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">)<\/span><br \/><span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \ubcc0\uc218 \ud074\ub7ec\uc2a4\ud130 \uad00\ub9ac\uc790 <span style=\"color: #008000;\">=<\/span> \ud074\ub7ec\uc2a4\ud130<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">CreateManager<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #666666;\">\"\uad00\ub9ac\uc790\"<\/span>, <span style=\"color: #666666;\">\"\ube44\ubc00\ubc88\ud638\"<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 var \uacb0\uacfc <span style=\"color: #008000;\">=<\/span> \ud074\ub7ec\uc2a4\ud130 \uad00\ub9ac\uc790<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\ucd94\uac00 \ub178\ub4dc<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #666666;\">&#8220;192.168.56.103&#8221;<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 Assert<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">IsTrue<\/span><span style=\"color: #008000;\">(<\/span>\uacb0\uacfc<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\uc131\uacf5<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/><span style=\"color: #008000;\">}<\/span><\/div>\n<\/div>\n<p>\uba3c\uc800 \ubc84\ud0b7\uc744 \uc5f4 \ub54c \uc0ac\uc6a9\ud558\ub294 \uac83\uacfc \ub3d9\uc77c\ud55c \uac1d\uccb4\uc778 Cluster \uac1d\uccb4\ub97c \ub9cc\ub4e4\uc5b4 \uc6d0\uaca9 \ud074\ub7ec\uc2a4\ud130\uc758 \uc874\uc7ac \uc704\uce58\ub97c \uc54c\ub824\uc8fc\ub294 \uad6c\uc131\uc744 \uc804\ub2ec\ud569\ub2c8\ub2e4. \uadf8\ub7f0 \ub2e4\uc74c \ud074\ub7ec\uc2a4\ud130\uc758 \uad00\ub9ac \uc0ac\uc6a9\uc790 \uc774\ub984\uacfc \ube44\ubc00\ubc88\ud638\ub97c \uc804\ub2ec\ud558\uc5ec CreateManager(...) \ud329\ud1a0\ub9ac \uba54\uc11c\ub4dc\ub97c \ud638\ucd9c\ud569\ub2c8\ub2e4. \uc778\uc99d\uc774 \uc644\ub8cc\ub418\uba74 \ud074\ub7ec\uc2a4\ud130\uc5d0 \uc0c8 \ub178\ub4dc\ub97c \ucd94\uac00\ud558\uace0 \uc694\uccad\uc774 \uc608\uc0c1\ub300\ub85c \ucc98\ub9ac\ub418\uc5c8\ub294\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4.<\/p>\n<p>\ub2e4\uc74c \uc608\uc5d0\uc11c\ub294 \ubc84\ud0b7\uc5d0 \uc0c8 \ub514\uc790\uc778 \ubb38\uc11c \ubc0f \ubcf4\uae30\ub97c \ucd94\uac00\ud558\ub294 \ubc84\ud0b7 \uc218\uc900 \uad00\ub9ac \uc791\uc5c5\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.<\/p>\n<div class=\"geshifilter\">\n<div class=\"csharp geshifilter-csharp\" style=\"font-family:monospace;\"><span style=\"color: #0600FF; font-weight: bold;\">\uc0ac\uc6a9<\/span> <span style=\"color: #008000;\">(<\/span>var \ud074\ub7ec\uc2a4\ud130 <span style=\"color: #008000;\">=<\/span> <a href=\"https:\/\/www.google.com\/search?q=new+msdn.microsoft.com\"><span style=\"color: #008000;\">new<\/span><\/a> \ud074\ub7ec\uc2a4\ud130<span style=\"color: #008000;\">(<\/span>\uad6c\uc131<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">)<\/span><br \/><span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 <span style=\"color: #0600FF; font-weight: bold;\">\uc0ac\uc6a9<\/span> <span style=\"color: #008000;\">(<\/span>var bucket <span style=\"color: #008000;\">=<\/span> \ud074\ub7ec\uc2a4\ud130<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">OpenBucket<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">)<\/span><br \/>\u00a0 \u00a0 <span style=\"color: #008000;\">{<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 var \uad00\ub9ac\uc790 <span style=\"color: #008000;\">=<\/span> \ubc84\ud0b7<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">CreateManager<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #666666;\">\"\uad00\ub9ac\uc790\"<\/span>, <span style=\"color: #666666;\">&#8220;&#8221;<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 var designDoc <span style=\"color: #008000;\">=<\/span> \ud30c\uc77c<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">ReadAllText<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #666666;\">@\"\ub370\uc774\ud130<span style=\"color: #008080; font-weight: bold;\">\\<\/span>\ub514\uc790\uc778 \ubb38\uc11c<span style=\"color: #008080; font-weight: bold;\">\\<\/span>by_field.json\"<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 var \uacb0\uacfc <span style=\"color: #008000;\">=<\/span> \uad00\ub9ac\uc790<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\uc0bd\uc785 \ub514\uc790\uc778 \ubb38\uc11c<\/span><span style=\"color: #008000;\">(<\/span><span style=\"color: #666666;\">\"by_field\"<\/span>, \ub514\uc790\uc778 \ubb38\uc11c<span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 \u00a0 \u00a0 Assert<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">IsTrue<\/span><span style=\"color: #008000;\">(<\/span>\uacb0\uacfc<span style=\"color: #008000;\">.<\/span><span style=\"color: #0000FF;\">\uc131\uacf5<\/span><span style=\"color: #008000;\">)<\/span><span style=\"color: #008000;\">;<\/span><br \/>\u00a0 \u00a0 <span style=\"color: #008000;\">}<\/span><br \/><span style=\"color: #008000;\">}<\/span><\/div>\n<\/div>\n<p>\uc5ec\uae30\uc11c\ub294 \ud074\ub7ec\uc2a4\ud130 \uac1d\uccb4\ub97c \uc0dd\uc131\ud55c \ub2e4\uc74c \uae30\ubcf8 \ubc84\ud0b7\uc744 \uc5f4\uace0 \ud329\ud1a0\ub9ac \uba54\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec BucketManager \uac1d\uccb4\ub97c \uc0dd\uc131\ud569\ub2c8\ub2e4. \uad00\ub9ac\uc790\uac00 \uc0dd\uc131\ub418\uba74 \ub514\uc790\uc778 \ubb38\uc11c\uc640 \ubcf4\uae30\uac00 \ud3ec\ud568\ub41c \ud30c\uc77c\uc744 JSON\uc73c\ub85c \uc5f4\uace0 InsertDesignDocument(..) \uba54\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub514\uc790\uc778 \ubb38\uc11c \"by_field\"\ub97c \ubc84\ud0b7\uc5d0 \ucd94\uac00\ud569\ub2c8\ub2e4. \ub514\uc790\uc778 \ubb38\uc11c \uc0bd\uc785 \uc678\uc5d0\ub3c4 \uae30\uc874 \ub514\uc790\uc778 \ubb38\uc11c \uc5c5\ub370\uc774\ud2b8, \ub514\uc790\uc778 \ubb38\uc11c \ub610\ub294 \ubaa8\ub4e0 \ub514\uc790\uc778 \ubb38\uc11c \uac00\uc838\uc624\uae30, \ub514\uc790\uc778 \ubb38\uc11c \uc81c\uac70\ub97c \uc704\ud55c \ucd94\uac00 \uba54\uc11c\ub4dc\uac00 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h2>\ubb34\uc5c7\uc774 \ub2ec\ub77c\uc84c\ub098\uc694?<\/h2>\n<p>\ubca0\ud0c0 \ubc84\uc804\uacfc \ubca0\ud0c0 2 \ubc84\uc804 \uc0ac\uc774\uc5d0\ub294 SDK \ub0b4\uc5d0\uc11c \uc5ec\ub7ec \uac00\uc9c0 \ubcc0\uacbd \uc0ac\ud56d\uc774 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. \ub300\ubd80\ubd84\uc758 \uacbd\uc6b0 \uc774\ub7ec\ud55c \ubcc0\uacbd \uc0ac\ud56d\uc740 \ucd94\uac00\uc801\uc774\uac70\ub098 \ub0b4\ubd80\uc801\uc778 \uac83\uc73c\ub85c, 2.0 SDK\ub97c \uc0ac\uc6a9\ud558\uae30 \uc2dc\uc791\ud55c \uc0ac\uc6a9\uc790\uc5d0\uac8c\ub294 \uc601\ud5a5\uc744 \ubbf8\uce58\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \uba87 \uac00\uc9c0 \ud68d\uae30\uc801\uc778 \ubcc0\uacbd \uc0ac\ud56d\uc774 \uba87 \uac00\uc9c0 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n<p>\uc8fc\ub85c \ub9e4\uac1c\ubcc0\uc218\uc758 \uc774\ub984 \ubcc0\uacbd \ubc0f\/\ub610\ub294 \uc7ac\uc815\ub82c\uacfc \uad00\ub828\ub41c \uae30\ud0c0 \uc0ac\uc18c\ud55c \ubcc0\uacbd \uc0ac\ud56d\ub3c4 \ub2e4\uc218 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. \u00a0<\/p>\n<ul>\n<li>Couchase.CouchbaseCluster\uac00 Couchbase.Cluster\ub85c \uc774\ub984\uc774 \ubcc0\uacbd\ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/li>\n<li>CouchBaseBucket \ubc0f MemchachedBucket\uc774 CouchBase.Core.Buckets\uc5d0\uc11c \uae30\ubcf8 CouchBase \ub124\uc784\uc2a4\ud398\uc774\uc2a4\ub85c \uc774\ub3d9\ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n<h2>\uc774\ubc88 \ub9b4\ub9ac\uc2a4\uc5d0 \uc5c6\ub294 \uae30\ub2a5\uc740 \ubb34\uc5c7\uc778\uac00\uc694?<\/h2>\n<p>\ucd5c\ub300\ud55c \ub9ce\uc740 \uae30\ub2a5\uc744 \ub9b4\ub9ac\uc2a4\uc5d0 \ud3ec\ud568\ud558\uae30 \uc704\ud574 \ub178\ub825\ud558\uace0 \uc788\uc9c0\ub9cc, \ud56d\uc0c1 \uc8fc\uae30\uc5d0 \ube44\ud574 \ub354 \ub9ce\uc740 \uae30\ub2a5\uc774 \uc81c\uacf5\ub418\uace0 \uc788\uc73c\uba70 \uc77c\ubd80 \uae30\ub2a5\uc740 GA\uc5d0 \ud3ec\ud568\ub418\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. \uac00\uc7a5 \uc8fc\ubaa9\ud560 \ub9cc\ud55c \uac83\uc740<\/p>\n<ul>\n<li>\ubcf5\uc81c\ubcf8 \uc77d\uae30: \ud074\ub77c\uc774\uc5b8\ud2b8\uac00 \ud558\ub098 \uc774\uc0c1\uc758 \ubcf5\uc81c\ubcf8\uc5d0\uc11c \uc77d\uc744 \uc218 \uc788\ub3c4\ub85d \ud5c8\uc6a9\ud569\ub2c8\ub2e4. \uc774\ub294 \uc8fc\ub85c \"\ub0b4 VBucket\uc774 \uc544\ub2d8\"\uc774 \ubc1c\uc0dd\ud560 \uc218 \uc788\ub294 \ub9ac\ubc38\ub7f0\uc2f1 \uc2dc\ub098\ub9ac\uc624\uc5d0 \uc0ac\uc6a9\ub429\ub2c8\ub2e4.<\/li>\n<li>\ube44\ub3d9\uae30\/\ub300\uae30 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud55c \ube44\ub3d9\uae30 CRUD \uc791\uc5c5<\/li>\n<li>\ud50c\ub7ec\uadf8\ud615 JSON \ud30c\uc11c: \uc6d0\ud558\ub294 JSON \uc9c1\ub82c\ud654\uae30\/\uc5ed\uc9c1\ub82c\ud654\uae30\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uae30\ub2a5\uc785\ub2c8\ub2e4. \ud604\uc7ac \ud074\ub77c\uc774\uc5b8\ud2b8\ub294 Newtonsoft.JSON\uc5d0 \uc758\uc874\ud569\ub2c8\ub2e4.<\/li>\n<li>Per connection TCP heartbeat settings: currently this is configured at the OS level via KeepAliveTime on Windows: https:\/\/technet.microsoft.com\/en-us\/library\/cc782936%28WS.10%29.aspx<\/li>\n<\/ul>\n<h2>\ubc1b\ub294 \ubc29\ubc95<\/h2>\n<p>\ubc14\uc774\ub108\ub9ac\ub294 S3\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc73c\uba70, \uc18c\uc2a4 \ucf54\ub4dc\ub294 Github\uc5d0\uc11c, \ud328\ud0a4\uc9c0\ub294 Nuget\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4:<\/p>\n<ul>\n<li>\ubc14\uc774\ub108\ub9ac\ub294 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/packages.couchbase.com.s3.amazonaws.com\/clients\/net\/2.0\/beta2\/Couchbase-Net-Client-Beta2.zip\">\uc5ec\uae30\ub97c \ud074\ub9ad\ud558\uc138\uc694.<\/a><\/li>\n<li>\ub9ac\ud3ec\uc9c0\ud1a0\ub9ac\ub294 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/github.com\/couchbase\/couchbase-net-client\">\uc5ec\uae30<\/a>.<\/li>\n<li>NuGet \ud328\ud0a4\uc9c0\ub294 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/www.nuget.org\/packages\/CouchbaseNetClient\/2.0.0-beta2\">\uc5ec\uae30<\/a>.<\/li>\n<\/ul>\n<h2>\uac10\uc0ac<\/h2>\n<p>\uc624\ud508 \uc18c\uc2a4 \ud504\ub85c\uc81d\ud2b8\uc778 Couchbase .NET SDK\ub294 \uc544\ubb34\ub9ac \uc791\uc740 \uac83\uc774\ub77c\ub3c4 \ucee4\ubba4\ub2c8\ud2f0\uc758 \uae30\uc5ec\uc5d0 \uc758\uc874\ud569\ub2c8\ub2e4. \ud480 \ub9ac\ud018\uc2a4\ud2b8\ub97c \uc81c\ucd9c\ud558\uac70\ub098 \ubc84\uadf8 \ub9ac\ud3ec\ud2b8\ub97c \ubc1c\ud589\ud574 \uc8fc\uc2e0 \ub2e4\uc74c \ubd84\ub4e4\uaed8 \ud2b9\ubcc4\ud788 \uac10\uc0ac\ub4dc\ub9bd\ub2c8\ub2e4:<\/p>\n<ul>\n<li>\ub9e4\ud2b8 \ub2c8\uc0e8<\/li>\n<li>\ubcf4\uc774\ud0c0 \uc57c\ucfe0\ubca1<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Today we are releasing a Beta 2 of the Couchbase .NET SDK 2.0.\u00a0\u00a0 This is an exciting update in our continued commitment to the .NET platform, and the .NET community.\u00a0 We&#39;ve even managed to squeeze in a few new features [&hellip;]<\/p>","protected":false},"author":21,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1811,9986,10127],"tags":[],"ppma_author":[8970],"class_list":["post-1652","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dotnet","category-c","category-c-sharp"],"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>Introducing the Couchbase .NET SDK 2.0 Beta 2! - The Couchbase Blog<\/title>\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\/introducing-couchbase-net-sdk-20-beta-2\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Introducing the Couchbase .NET SDK 2.0 Beta 2!\" \/>\n<meta property=\"og:description\" content=\"Today we are releasing a Beta 2 of the Couchbase .NET SDK 2.0.\u00a0\u00a0 This is an exciting update in our continued commitment to the .NET platform, and the .NET community.\u00a0 We&#039;ve even managed to squeeze in a few new features [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/introducing-couchbase-net-sdk-20-beta-2\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2014-12-16T19:35:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T06:50:10+00:00\" \/>\n<meta name=\"author\" content=\"Jeff Morris, Senior Software Engineer, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@jeffrysmorris\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeff Morris, Senior Software Engineer, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/\"},\"author\":{\"name\":\"Jeff Morris, Senior Software Engineer, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/b678bdd9f7b21a33d43ea965865a3341\"},\"headline\":\"Introducing the Couchbase .NET SDK 2.0 Beta 2!\",\"datePublished\":\"2014-12-16T19:35:06+00:00\",\"dateModified\":\"2025-06-14T06:50:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/\"},\"wordCount\":1469,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"articleSection\":[\".NET\",\"C\/C++\",\"C#\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/\",\"name\":\"Introducing the Couchbase .NET SDK 2.0 Beta 2! - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2014-12-16T19:35:06+00:00\",\"dateModified\":\"2025-06-14T06:50:10+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Introducing the Couchbase .NET SDK 2.0 Beta 2!\"}]},{\"@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\/b678bdd9f7b21a33d43ea965865a3341\",\"name\":\"Jeff Morris, Senior Software Engineer, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/73188ee2831025d81740e12e1ed80812\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g\",\"caption\":\"Jeff Morris, Senior Software Engineer, Couchbase\"},\"description\":\"Jeff Morris is a Senior Software Engineer at Couchbase. Prior to joining Couchbase, Jeff spent six years at Source Interlink as an Enterprise Web Architect. Jeff is responsible for the development of Couchbase SDKs and how to integrate with N1QL (query language).\",\"sameAs\":[\"https:\/\/x.com\/jeffrysmorris\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/jeff-morris\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Introducing the Couchbase .NET SDK 2.0 Beta 2! - The Couchbase Blog","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\/introducing-couchbase-net-sdk-20-beta-2\/","og_locale":"ko_KR","og_type":"article","og_title":"Introducing the Couchbase .NET SDK 2.0 Beta 2!","og_description":"Today we are releasing a Beta 2 of the Couchbase .NET SDK 2.0.\u00a0\u00a0 This is an exciting update in our continued commitment to the .NET platform, and the .NET community.\u00a0 We&#39;ve even managed to squeeze in a few new features [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/introducing-couchbase-net-sdk-20-beta-2\/","og_site_name":"The Couchbase Blog","article_published_time":"2014-12-16T19:35:06+00:00","article_modified_time":"2025-06-14T06:50:10+00:00","author":"Jeff Morris, Senior Software Engineer, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@jeffrysmorris","twitter_misc":{"Written by":"Jeff Morris, Senior Software Engineer, Couchbase","Est. reading time":"7\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/"},"author":{"name":"Jeff Morris, Senior Software Engineer, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/b678bdd9f7b21a33d43ea965865a3341"},"headline":"Introducing the Couchbase .NET SDK 2.0 Beta 2!","datePublished":"2014-12-16T19:35:06+00:00","dateModified":"2025-06-14T06:50:10+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/"},"wordCount":1469,"commentCount":2,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","articleSection":[".NET","C\/C++","C#"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/","url":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/","name":"Introducing the Couchbase .NET SDK 2.0 Beta 2! - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2014-12-16T19:35:06+00:00","dateModified":"2025-06-14T06:50:10+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/introducing-couchbase-net-sdk-20-beta-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Introducing the Couchbase .NET SDK 2.0 Beta 2!"}]},{"@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\/b678bdd9f7b21a33d43ea965865a3341","name":"Jeff Morris, \uc218\uc11d \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4, Couchbase","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/73188ee2831025d81740e12e1ed80812","url":"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g","caption":"Jeff Morris, Senior Software Engineer, Couchbase"},"description":"Jeff Morris\ub294 Couchbase\uc758 \uc218\uc11d \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4\uc785\ub2c8\ub2e4. Couchbase\uc5d0 \uc785\uc0ac\ud558\uae30 \uc804\uc5d0\ub294 6\ub144 \ub3d9\uc548 Source Interlink\uc5d0\uc11c \uc5d4\ud130\ud504\ub77c\uc774\uc988 \uc6f9 \uc544\ud0a4\ud14d\ud2b8\ub85c \uadfc\ubb34\ud588\uc2b5\ub2c8\ub2e4. Jeff\ub294 Couchbase SDK \uac1c\ubc1c\uacfc N1QL(\ucffc\ub9ac \uc5b8\uc5b4)\uacfc \ud1b5\ud569\ud558\ub294 \ubc29\ubc95\uc744 \ub2f4\ub2f9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.","sameAs":["https:\/\/x.com\/jeffrysmorris"],"url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/jeff-morris\/"}]}},"authors":[{"term_id":8970,"user_id":21,"is_guest":0,"slug":"jeff-morris","display_name":"Jeff Morris, Senior Software Engineer, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/5f910befdbd58de8bac85293df7f544680843061ecc921ba7d293d6d52076ab3?s=96&d=mm&r=g","author_category":"","last_name":"Jeff Morris, Senior Software Engineer, Couchbase","first_name":"Jeff","job_title":"","user_url":"","description":"Jeff Morris\ub294 Couchbase\uc758 \uc218\uc11d \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4\uc785\ub2c8\ub2e4. Couchbase\uc5d0 \uc785\uc0ac\ud558\uae30 \uc804\uc5d0\ub294 6\ub144 \ub3d9\uc548 Source Interlink\uc5d0\uc11c \uc5d4\ud130\ud504\ub77c\uc774\uc988 \uc6f9 \uc544\ud0a4\ud14d\ud2b8\ub85c \uadfc\ubb34\ud588\uc2b5\ub2c8\ub2e4. Jeff\ub294 Couchbase SDK \uac1c\ubc1c\uacfc N1QL(\ucffc\ub9ac \uc5b8\uc5b4)\uacfc \ud1b5\ud569\ud558\ub294 \ubc29\ubc95\uc744 \ub2f4\ub2f9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/1652","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\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=1652"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/1652\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=1652"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=1652"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=1652"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=1652"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}