{"id":64444,"date":"2024-03-21T08:30:52","date_gmt":"2024-03-21T01:30:52","guid":{"rendered":"https:\/\/itviec.com\/blog\/?p=64444"},"modified":"2024-04-12T13:53:30","modified_gmt":"2024-04-12T06:53:30","slug":"cac-loai-co-so-du-lieu-nosql","status":"publish","type":"post","link":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/","title":{"rendered":"C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a, \u01afu &#8211; Nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 \u1ee8ng d\u1ee5ng"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">N\u1ed9i dung b\u00e0i vi\u1ebft<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#NoSQL_la_gi\" >NoSQL l\u00e0 g\u00ec?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#Cac_loai_co_so_du_lieu_NoSQL_pho_bien\" >C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u1ed5 bi\u1ebfn<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#Uu_diem_va_khuyet_diem_cua_cac_loai_co_so_du_lieu_NoSQL\" >\u01afu \u0111i\u1ec3m v\u00e0 khuy\u1ebft \u0111i\u1ec3m c\u1ee7a c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#Nhung_truong_hop_su_dung_pho_bien_cua_cac_loai_co_so_du_lieu_NoSQL\" >Nh\u1eefng tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng ph\u1ed5 bi\u1ebfn c\u1ee7a c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#Cach_chon_loai_co_so_du_lieu_NoSQL_phu_hop\" >C\u00e1ch ch\u1ecdn lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#Cau_hoi_thuong_gap_ve_cac_loai_co_so_du_lieu_NoSQL\" >C\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p v\u1ec1 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#Tong_ket_cac_loai_co_so_du_lieu_NoSQL\" >T\u1ed5ng k\u1ebft c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/a><\/li><\/ul><\/nav><\/div>\n<p><em><strong>C\u01a1 s\u1edf d\u1eef li\u1ec7u phi quan h\u1ec7 (Non-relational databases) \u0111\u00e3 xu\u1ea5t hi\u1ec7n t\u1eeb cu\u1ed1i th\u1eadp k\u1ef7 1960, tuy nhi\u00ean, thu\u1eadt ng\u1eef &#8220;NoSQL&#8221; \u0111\u01b0\u1ee3c Carlo Strozzi s\u1eed d\u1ee5ng v\u00e0o n\u0103m 1998 \u0111\u1ec3 \u0111\u1eb7t t\u00ean cho c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7 ngu\u1ed3n m\u1edf Strozzi NoSQL c\u1ee7a \u00f4ng. \u0110\u1ec3 t\u00ecm hi\u1ec3u s\u00e2u h\u01a1n v\u1ec1 NoSQL, b\u00e0i vi\u1ebft s\u1ebd gi\u00fap b\u1ea1n hi\u1ec3u h\u01a1n v\u1ec1 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u1ed5 bi\u1ebfn, \u01b0u \u0111i\u1ec3m &#8211; nh\u01b0\u1ee3c \u0111i\u1ec3m c\u1ee7a t\u1eebng lo\u1ea1i c\u0169ng nh\u01b0 g\u1ee3i \u00fd c\u00e1ch ch\u1ecdn c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p.<\/strong><\/em><\/p>\n<p><span style=\"font-weight: 400;\">\u0110\u1ecdc b\u00e0i vi\u1ebft n\u00e0y \u0111\u1ec3 hi\u1ec3u r\u00f5 h\u01a1n:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">NoSQL l\u00e0 g\u00ec?<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Kh\u00e1m ph\u00e1 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u01afu \u0111i\u1ec3m c\u1ee7a t\u1eebng lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">C\u00e1c ti\u00eau ch\u00ed \u0111\u1ec3 ch\u1ecdn lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p<\/span><\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"NoSQL_la_gi\"><\/span>NoSQL<b> l\u00e0 g\u00ec?<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">NoSQL, hay c\u00f2n \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 &#8220;not only SQL&#8221; ho\u1eb7c &#8220;non-SQL&#8221;, l\u00e0 m\u1ed9t h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd d\u1eef li\u1ec7u cho ph\u00e9p l\u01b0u tr\u1eef v\u00e0 truy v\u1ea5n c\u00e1c lo\u1ea1i d\u1eef li\u1ec7u phi quan h\u1ec7.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Kh\u00f4ng gi\u1ed1ng v\u1edbi c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd d\u1eef li\u1ec7u quan h\u1ec7 (Relational Database Management System) l\u01b0u tr\u1eef d\u1eef li\u1ec7u m\u1ed9t c\u00e1ch c\u00f3 t\u1ed5 ch\u1ee9c nh\u01b0 \u1edf d\u1ea1ng b\u1ea3ng th\u00ec NoSQL l\u01b0u tr\u1eef d\u1eef li\u1ec7u v\u1edbi c\u1ea5u tr\u00fac t\u01b0\u01a1ng t\u1ef1 nh\u01b0 JSON m\u00e0 kh\u00f4ng y\u00eau c\u1ea7u s\u1eed d\u1ee5ng schema. \u0110i\u1ec1u n\u00e0y mang l\u1ea1i kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng nhanh ch\u00f3ng \u0111\u1ec3 qu\u1ea3n l\u00fd c\u00e1c t\u1eadp d\u1eef li\u1ec7u phi quan h\u1ec7 k\u00edch th\u01b0\u1edbc l\u1edbn.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">NoSQL c\u0169ng l\u00e0 m\u1ed9t lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u ph\u00e2n t\u00e1n, c\u00f3 ngh\u0129a l\u00e0 th\u00f4ng tin \u0111\u01b0\u1ee3c sao ch\u00e9p v\u00e0 l\u01b0u tr\u1eef tr\u00ean nhi\u1ec1u m\u00e1y ch\u1ee7 kh\u00e1c nhau, c\u00f3 th\u1ec3 tr\u00ean cloud ho\u1eb7c tr\u00ean m\u00e1y t\u00ednh c\u1ee5c b\u1ed9. \u0110i\u1ec1u n\u00e0y \u0111\u1ea3m b\u1ea3o t\u00ednh kh\u1ea3 d\u1ee5ng v\u00e0 tr\u1ef1c quan c\u1ee7a d\u1eef li\u1ec7u. N\u1ebfu m\u1ed9t s\u1ed1 d\u1eef li\u1ec7u g\u1eb7p s\u1ef1 c\u1ed1 th\u00ec ph\u1ea7n c\u00f2n l\u1ea1i c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u v\u1eabn c\u00f3 th\u1ec3 ti\u1ebfp t\u1ee5c ho\u1ea1t \u0111\u1ed9ng.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Hi\u1ec7n nay, qu\u1ea3n l\u00fd d\u1eef li\u1ec7u l\u1edbn v\u1edbi t\u1ed1c \u0111\u1ed9 cao v\u00e0 kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng nhanh ch\u00f3ng l\u00e0 ch\u00eca kh\u00f3a quan tr\u1ecdng \u0111\u1ec3 tri\u1ec3n khai c\u00e1c \u1ee9ng d\u1ee5ng web c\u1ee7a c\u00e1c doanh nghi\u1ec7p. \u0110\u1eb7c bi\u1ec7t, v\u1edbi s\u1ef1 b\u00f9ng n\u1ed5 c\u1ee7a \u0111i\u1ec7n to\u00e1n \u0111\u00e1m m\u00e2y v\u00e0 d\u1eef li\u1ec7u l\u1edbn, NoSQL n\u1ed5i l\u00ean nh\u01b0 m\u1ed9t l\u1ef1a ch\u1ecdn ph\u1ed5 bi\u1ebfn nh\u1edd v\u00e0o hi\u1ec7u su\u1ea5t m\u1ea1nh m\u1ebd v\u00e0 gi\u1ea3i ph\u00e1p qu\u1ea3n l\u00fd d\u1eef li\u1ec7u \u0111\u01a1n gi\u1ea3n \u0111\u1ec3 qu\u1ea3n l\u00fd c\u00e1c lo\u1ea1i d\u1eef li\u1ec7u m\u00e0 SQL kh\u00f4ng l\u00e0m \u0111\u01b0\u1ee3c.<\/span><\/p>\n<blockquote><p><em>\u0110\u1ecdc th\u00eam: <a href=\"https:\/\/itviec.com\/blog\/nosql-la-gi\/\" target=\"_blank\" rel=\"noopener\"><strong>NoSQL l\u00e0 g\u00ec? V\u00ec sao g\u1ecdi NoSQL l\u00e0 b\u01b0\u1edbc ti\u1ebfn m\u1edbi trong qu\u1ea3n l\u00fd d\u1eef li\u1ec7u?<\/strong><\/a><\/em><\/p><\/blockquote>\n<h2><span class=\"ez-toc-section\" id=\"Cac_loai_co_so_du_lieu_NoSQL_pho_bien\"><\/span><b>C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u1ed5 bi\u1ebfn<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">NoSQL cung c\u1ea5p nhi\u1ec1u c\u00e1ch kh\u00e1c nhau trong t\u1ed5 ch\u1ee9c d\u1eef li\u1ec7u. V\u1edbi vi\u1ec7c h\u1ed7 tr\u1ee3 nhi\u1ec1u c\u1ea5u tr\u00fac d\u1eef li\u1ec7u \u0111a d\u1ea1ng, NoSQL c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng trong vi\u1ec7c ph\u00e2n t\u00edch d\u1eef li\u1ec7u, qu\u1ea3n l\u00fd d\u1eef li\u1ec7u l\u1edbn, m\u1ea1ng x\u00e3 h\u1ed9i v\u00e0 ph\u00e1t tri\u1ec3n \u1ee9ng d\u1ee5ng di \u0111\u1ed9ng. C\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL c\u00f3 kh\u1ea3 n\u0103ng qu\u1ea3n l\u00fd d\u1eef li\u1ec7u th\u00f4ng qua c\u00e1c m\u00f4 h\u00ecnh qu\u1ea3n l\u00fd d\u1eef li\u1ec7u sau \u0111\u00e2y.<\/span><\/p>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-value thu\u1ed9c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL, m\u00e0 \u1edf \u0111\u00f3 m\u1ed7i m\u1ee5c (item) \u0111\u01b0\u1ee3c t\u1ed5 ch\u1ee9c v\u00e0 l\u01b0u tr\u1eef d\u01b0\u1edbi d\u1ea1ng c\u1eb7p key-value. M\u1ed7i \u0111\u1ed1i t\u01b0\u1ee3ng d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c x\u00e1c \u0111\u1ecbnh b\u1eb1ng m\u1ed9t kh\u00f3a (key) duy nh\u1ea5t v\u00e0 gi\u00e1 tr\u1ecb (value) t\u01b0\u01a1ng \u1ee9ng ch\u1ee9a th\u00f4ng tin li\u00ean quan \u0111\u1ebfn kh\u00f3a \u0111\u00f3. Trong m\u00f4 h\u00ecnh n\u00e0y, key th\u01b0\u1eddng \u0111\u01b0\u1ee3c h\u1ea1n ch\u1ebf \u1edf d\u1ea1ng chu\u1ed7i (string), trong khi value c\u00f3 th\u1ec3 mang nhi\u1ec1u \u0111\u1ecbnh d\u1ea1ng kh\u00e1c nhau nh\u01b0 chu\u1ed7i, JSON, XML, ho\u1eb7c c\u00e1c ki\u1ec3u d\u1eef li\u1ec7u ph\u1ee9c t\u1ea1p t\u00f9y thu\u1ed9c v\u00e0o kh\u1ea3 n\u0103ng h\u1ed7 tr\u1ee3 c\u1ee7a h\u1ec7 th\u1ed1ng c\u1ee5 th\u1ec3. S\u1ef1 linh ho\u1ea1t n\u00e0y cho ph\u00e9p x\u1eed l\u00fd l\u01b0\u1ee3ng d\u1eef li\u1ec7u kh\u1ed5ng l\u1ed3.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value l\u00e0 h\u1ec7 th\u1ed1ng l\u01b0u tr\u1eef d\u1eef li\u1ec7u theo d\u1ea1ng c\u1eb7p index key-value v\u00e0 truy v\u1ea5n value b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng index key. C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-value l\u01b0u tr\u1eef d\u1eef li\u1ec7u gi\u1ed1ng v\u1edbi m\u1ed9t c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7 (RDMS) nh\u01b0ng c\u00e1c b\u1ea3ng c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u key-value ch\u1ec9 c\u00f3 2 c\u1ed9t.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">M\u1ed9t s\u1ed1 c\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value cho ph\u00e9p th\u1ef1c hi\u1ec7n c\u00e1c ph\u00e9p n\u1ed1i (join) c\u01a1 b\u1ea3n, nh\u01b0ng c\u00f3 th\u1ec3 kh\u00f4ng ph\u00f9 h\u1ee3p v\u1edbi c\u00e1c ph\u00e9p n\u1ed1i ph\u1ee9c t\u1ea1p.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00f3 nhi\u1ec1u lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value kh\u00e1c nhau, v\u1edbi s\u1ef1 kh\u00e1c bi\u1ec7t ch\u1ee7 y\u1ebfu v\u1ec1 c\u00e1ch x\u1eed l\u00fd theo \u0111\u1ecbnh l\u00fd CAP (Consistency, Availability, Partition Tolerance) v\u00e0 c\u1ea5u h\u00ecnh s\u1eed d\u1ee5ng b\u1ed9 nh\u1edb so v\u1edbi l\u01b0u tr\u1eef. C\u01a1 s\u1edf d\u1eef li\u1ec7u n\u00e0y c\u00f3 hi\u1ec7u su\u1ea5t truy v\u1ea5n nhanh, th\u00edch h\u1ee3p cho c\u00e1c \u1ee9ng d\u1ee5ng y\u00eau c\u1ea7u content caching (l\u01b0u tr\u1eef d\u1eef li\u1ec7u), ch\u1eb3ng h\u1ea1n nh\u01b0 trang web th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed th\u01b0\u1eddng xuy\u00ean c\u1eadp nh\u1eadt danh s\u00e1ch top 10 s\u1ea3n ph\u1ea9m ph\u1ed5 bi\u1ebfn.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00e1c \u0111\u1eb7c \u0111i\u1ec3m c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u key-value:<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Nh\u1ea5t qu\u00e1n (Consistency)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">H\u1ed7 tr\u1ee3 giao d\u1ecbch (Transaction)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">T\u00ednh n\u0103ng truy v\u1ea5n (Query Feature)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">C\u1ea5u tr\u00fac d\u1eef li\u1ec7u (Data Structure)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">M\u1edf r\u1ed9ng (Scaling)<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">M\u1ed9t s\u1ed1 c\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value ph\u1ed5 bi\u1ebfn bao g\u1ed3m Dynamo DB, Redis v\u00e0 BerkleyDB.<\/span><\/p>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Document<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u Document l\u00e0 m\u1ed9t s\u1ef1 m\u1edf r\u1ed9ng c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u Key-value, n\u01a1i d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c t\u1ed5 ch\u1ee9c trong c\u00e1c t\u00e0i li\u1ec7u c\u00f3 c\u1ea5u tr\u00fac nh\u01b0 JSON ho\u1eb7c XML. C\u00e1c t\u00e0i li\u1ec7u n\u00e0y gi\u00fap d\u1ec5 d\u00e0ng \u00e1nh x\u1ea1 c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng (Object) trong ph\u1ea7n m\u1ec1m h\u01b0\u1edbng \u0111\u1ed1i t\u01b0\u1ee3ng (Oriented Object software).<\/span><\/p>\n<blockquote><p><em>\u0110\u1ecdc th\u00eam: <a href=\"https:\/\/itviec.com\/blog\/oop-la-gi\/\" target=\"_blank\" rel=\"noopener\"><strong>OOP l\u00e0 g\u00ec? 4 \u0111\u1eb7c t\u00ednh c\u01a1 b\u1ea3n c\u1ee7a OOP<\/strong><\/a><\/em><\/p><\/blockquote>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u Document kh\u00f4ng y\u00eau c\u1ea7u ph\u1ea3i x\u00e1c \u0111\u1ecbnh tr\u01b0\u1edbc schema v\u00e0 cho ph\u00e9p l\u01b0u tr\u1eef d\u1eef li\u1ec7u ph\u1ee9c t\u1ea1p \u1edf \u0111\u1ecbnh d\u1ea1ng t\u00e0i li\u1ec7u nh\u01b0 JSON ho\u1eb7c XML. M\u1ed7i t\u00e0i li\u1ec7u trong c\u01a1 s\u1edf d\u1eef li\u1ec7u Document l\u00e0 \u0111\u1ed9c l\u1eadp v\u00e0 kh\u00f4ng th\u1ec3 th\u1ef1c hi\u1ec7n c\u00e1c ph\u00e9p n\u1ed1i (join) m\u00e0 trong ng\u1eef c\u1ea3nh n\u00e0y c\u00f3 ngh\u0129a l\u00e0 kh\u00f4ng c\u00f3 c\u01a1 ch\u1ebf t\u1ef1 \u0111\u1ed9ng \u0111\u1ec3 duy tr\u00ec t\u00ednh to\u00e0n v\u1eb9n quan h\u1ec7 gi\u1eefa c\u00e1c ph\u1ea7n d\u1eef li\u1ec7u khi th\u1ef1c hi\u1ec7n c\u00e1c ph\u00e9p n\u1ed1i.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">M\u1eb7c d\u00f9 kh\u00f4ng h\u1ed7 tr\u1ee3 d\u1eef li\u1ec7u quan h\u1ec7 v\u00e0 b\u00ean c\u1ea1nh c\u00e1c \u01b0u \u0111i\u1ec3m t\u01b0\u01a1ng t\u1ef1 nh\u01b0 c\u01a1 s\u1edf d\u1eef li\u1ec7u key-value, c\u01a1 s\u1edf d\u1eef li\u1ec7u Document c\u00f3 nh\u1eefng \u01b0u \u0111i\u1ec3m b\u1ed5 sung nh\u01b0 kh\u1ea3 n\u0103ng truy v\u1ea5n kh\u00f4ng ch\u1ec9 b\u1eb1ng key m\u00e0 c\u00f2n truy v\u1ea5n thu\u1ed9c t\u00ednh (attribute) trong t\u00e0i li\u1ec7u. D\u1eef li\u1ec7u trong m\u1ed7i t\u00e0i li\u1ec7u c\u00f3 th\u1ec3 \u1edf \u0111\u1ecbnh d\u1ea1ng kh\u00e1c nhau v\u00e0 c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c truy v\u1ea5n m\u1ed9t c\u00e1ch linh ho\u1ea1t.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">V\u00ed d\u1ee5, m\u1ed9t \u1ee9ng d\u1ee5ng qu\u1ea3n l\u00fd th\u00f4ng tin c\u00e1 nh\u00e2n, trong \u0111\u00f3 m\u1ed7i ng\u01b0\u1eddi d\u00f9ng \u0111\u01b0\u1ee3c bi\u1ec3u di\u1ec5n b\u1eb1ng m\u1ed9t t\u00e0i li\u1ec7u. M\u1ed7i t\u00e0i li\u1ec7u c\u00f3 th\u1ec3 ch\u1ee9a th\u00f4ng tin nh\u01b0 t\u00ean, \u0111\u1ecba ch\u1ec9, s\u1ed1 \u0111i\u1ec7n tho\u1ea1i, v\u00e0 s\u1edf th\u00edch. M\u1ed7i ng\u01b0\u1eddi d\u00f9ng c\u00f3 th\u1ec3 c\u00f3 m\u1ed9t s\u1ed1 l\u01b0\u1ee3ng t\u00e0i li\u1ec7u kh\u00f4ng gi\u1edbi h\u1ea1n, v\u00e0 m\u1ed7i t\u00e0i li\u1ec7u c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c c\u1eadp nh\u1eadt \u0111\u1ed9c l\u1eadp m\u00e0 kh\u00f4ng l\u00e0m \u1ea3nh h\u01b0\u1edfng \u0111\u1ebfn c\u00e1c t\u00e0i li\u1ec7u kh\u00e1c. \u0110i\u1ec1u n\u00e0y gi\u00fap qu\u1ea3n l\u00fd th\u00f4ng tin c\u00e1 nh\u00e2n m\u1ed9t c\u00e1ch linh ho\u1ea1t v\u00e0 thu\u1eadn ti\u1ec7n.<\/span><\/p>\n<p>V\u00ed d\u1ee5 v\u1ec1 c\u00e1ch d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef trong C\u01a1 s\u1edf d\u1eef li\u1ec7u Document:<\/p>\n<pre>first_name: \"Tu\u1ea5n\",\r\nlast_name: \"Nguy\u1ec5n\",\r\ncell: \"090-912-3456\",\r\ncity: \"C\u1ea7n Th\u01a1\",\r\nyear_of_birth: 1995,\r\nlocation: {\r\n           type: \"Point\",\r\n           coordinates: [-73.9876, 40.7574]\r\n},\r\nprofession: [\"Developer\", \"Web\"],\r\napps: [\r\n { name: \"MyApp\",\r\n   version: 1.0.4 },\r\n { name: \"DocFinder\",\r\n   version: 2.5.7}\r\n],\r\ncars: [\r\n { make: \"Bentley\",\r\n   year: 1973 },\r\n { make: \"Rolls Royce\",\r\n   year: 1965 }\r\n]<\/pre>\n<p><span style=\"font-weight: 400;\">C\u00e1c \u0111\u1eb7c \u0111i\u1ec3m c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u Document:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Truy v\u1ea5n nhanh h\u01a1n<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">D\u1ec5 d\u00e0ng x\u1eed l\u00fd l\u01b0\u1ee3ng l\u1edbn d\u1eef li\u1ec7u<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Kh\u1ea3 n\u0103ng index linh ho\u1ea1t<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">M\u1ed9t s\u1ed1 c\u01a1 s\u1edf d\u1eef li\u1ec7u Document ph\u1ed5 bi\u1ebfn l\u00e0 MongoDB, CouchDB v\u00e0 Lotus Notes.<\/span><\/p>\n<blockquote><p><em>\u0110\u1ecdc th\u00eam: <a href=\"https:\/\/itviec.com\/blog\/mongodb-la-gi\/\" target=\"_blank\" rel=\"noopener\"><strong>MongoDB l\u00e0 g\u00ec? \u0110\u1ecbnh ngh\u0129a v\u00e0 Hi\u1ec3u r\u00f5 A-Z v\u1ec1 MongoDB<\/strong><\/a><\/em><\/p><\/blockquote>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Column-Family<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family k\u1ebft h\u1ee3p \u0111\u1eb7c \u0111i\u1ec3m khai b\u00e1o c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7 v\u1edbi \u0111\u1eb7c \u0111i\u1ec3m key-value pair v\u00e0 free schema c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u Key-value. Thay v\u00ec l\u01b0u tr\u1eef d\u1eef li\u1ec7u d\u01b0\u1edbi d\u1ea1ng h\u00e0ng nh\u01b0 c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7, Column Family l\u01b0u tr\u1eef ch\u00fang d\u01b0\u1edbi d\u1ea1ng c\u00e1c c\u1ed9t.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family \u0111\u01b0\u1ee3c bi\u1ec3u di\u1ec5n nh\u01b0 m\u1ed9t h\u1ec7 th\u1ed1ng l\u01b0u tr\u1eef Key-value \u0111a chi\u1ec1u, t\u01b0\u01a1ng t\u1ef1 nh\u01b0 m\u1ed9t b\u1ea3n \u0111\u1ed3 ho\u1eb7c m\u1ed9t m\u1ea3ng k\u1ebft h\u1ee3p (associative array). D\u1eef li\u1ec7u trong c\u01a1 s\u1edf d\u1eef li\u1ec7u n\u00e0y kh\u00f4ng ch\u1ec9 b\u1ec1n v\u1eefng, t\u1ee9c l\u00e0 gi\u00e1 tr\u1ecb v\u1eabn t\u1ed3n t\u1ea1i sau khi \u0111\u01b0\u1ee3c t\u1ea1o ra ho\u1eb7c truy c\u1eadp (access), m\u00e0 c\u00f2n \u0111\u01b0\u1ee3c ph\u00e2n t\u00e1n tr\u00ean nhi\u1ec1u n\u00fat (node) t\u00ednh to\u00e1n v\u00e0 l\u01b0u tr\u1eef, gi\u00fap t\u1ed1i \u01b0u h\u00f3a hi\u1ec7u su\u1ea5t v\u00e0 kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng. C\u00e1c key \u0111\u01b0\u1ee3c s\u1eafp x\u1ebfp \u0111\u1ec3 h\u1ed7 tr\u1ee3 qu\u00e1 tr\u00ecnh truy v\u1ea5n, v\u00e0 d\u1eef li\u1ec7u c\u00f3 th\u1ec3 b\u1ecb khuy\u1ebft nh\u01b0 trong c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00f3 hai lo\u1ea1i Column Family:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Standard Column Family: g\u1ed3m m\u1ed9t c\u1eb7p key-value, trong \u0111\u00f3 key \u0111\u01b0\u1ee3c \u00e1nh x\u1ea1 t\u1edbi m\u1ed9t gi\u00e1 tr\u1ecb (value) l\u00e0 m\u1ed9t t\u1eadp h\u1ee3p c\u00e1c c\u1ed9t.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Super Column Family: bao g\u1ed3m m\u1ed9t c\u1eb7p key-value, trong \u0111\u00f3 key \u0111\u01b0\u1ee3c \u00e1nh x\u1ea1 t\u1edbi m\u1ed9t gi\u00e1 tr\u1ecb (value) l\u00e0 c\u00e1c column family. T\u01b0\u01a1ng t\u1ef1 nh\u01b0 trong c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7, super column family c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c coi l\u00e0 m\u1ed9t &#8220;view&#8221; tr\u00ean m\u1ed9t lo\u1ea1t c\u00e1c b\u1ea3ng. N\u00f3 c\u0169ng c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c hi\u1ec3u nh\u01b0 m\u1ed9t b\u1ea3n \u0111\u1ed3 c\u1ee7a c\u00e1c b\u1ea3ng.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">C\u00e1c \u0111\u1eb7c \u0111i\u1ec3m c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">L\u01b0u tr\u1eef key \u0111a chi\u1ec1u (<\/span><span style=\"font-weight: 400;\">Multidimensional key store)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">B\u1ec1n v\u1eefng<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Ph\u00e2n t\u00e1n<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Kh\u1ea3 n\u0103ng linh ho\u1ea1t cao<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">M\u1ed9t s\u1ed1 c\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family ph\u1ed5 bi\u1ebfn bao g\u1ed3m Google&#8217;s Bigtable, Cassandra, v\u00e0 HBase.<\/span><\/p>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Graph<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u Graph l\u00e0 h\u1ec7 th\u1ed1ng l\u01b0u tr\u1eef d\u1eef li\u1ec7u theo h\u01b0\u1edbng \u0111\u1ed3 th\u1ecb. M\u1ed9t c\u01a1 s\u1edf d\u1eef li\u1ec7u Graph ph\u1ea3i c\u00f3 t\u00ednh n\u0103ng truy xu\u1ea5t d\u1eef li\u1ec7u kh\u00f4ng c\u1ea7n index. Thay v\u00e0o \u0111\u00f3 m\u1ed7i n\u00fat ch\u1ee9a m\u1ed9t con tr\u1ecf (pointer) tr\u1ef1c ti\u1ebfp \u0111\u1ebfn c\u00e1c n\u00fat li\u1ec1n k\u1ec1 c\u1ee7a n\u00f3. Khi s\u1ed1 l\u01b0\u1ee3ng node t\u0103ng, chi ph\u00ed \u0111\u1ec3 di chuy\u1ec3n t\u1eeb n\u00fat n\u00e0y sang n\u00fat kh\u00e1c (hay c\u00f2n g\u1ecdi l\u00e0 m\u1ed9t \u201cb\u01b0\u1edbc nh\u1ea3y\u201d) v\u1eabn \u0111\u01b0\u1ee3c duy tr\u00ec \u1ed5n \u0111\u1ecbnh.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00e1c c\u01a1 s\u1edf d\u1eef li\u1ec7u Graph \u0111\u01b0\u1ee3c t\u1ed1i \u01b0u h\u00f3a \u0111\u1ec3 duy\u1ec7t qua d\u1eef li\u1ec7u k\u1ebft n\u1ed1i, v\u00ed d\u1ee5 nh\u01b0 vi\u1ec7c t\u00ecm ki\u1ebfm &#8220;B\u1ea1n b\u00e8 chung&#8221; tr\u00ean m\u1ea1ng x\u00e3 h\u1ed9i c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n m\u1ed9t c\u00e1ch nhanh ch\u00f3ng v\u00e0 hi\u1ec7u qu\u1ea3 b\u1eb1ng c\u00e1ch duy\u1ec7t qua c\u00e1c m\u1ed1i quan h\u1ec7 k\u1ebft n\u1ed1i gi\u1eefa c\u00e1c ng\u01b0\u1eddi d\u00f9ng v\u00e0 s\u1edf th\u00edch chung m\u00e0 kh\u00f4ng c\u1ea7n s\u1eed d\u1ee5ng index.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00e1c \u0111\u1eb7c \u0111i\u1ec3m c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u Graph:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Linh ho\u1ea1t<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">T\u1ed1c \u0111\u1ed9 nhanh<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">C\u1ea3i thi\u1ec7n hi\u1ec7u su\u1ea5t ngay c\u1ea3 khi ph\u1ea3i x\u1eed l\u00fd l\u01b0\u1ee3ng d\u1eef li\u1ec7u kh\u1ed5ng l\u1ed3<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">M\u1ed9t s\u1ed1 c\u01a1 s\u1edf d\u1eef li\u1ec7u Graph ph\u1ed5 bi\u1ebfn g\u1ed3m Neo4j, OrientDB v\u00e0 Allegrograph.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Uu_diem_va_khuyet_diem_cua_cac_loai_co_so_du_lieu_NoSQL\"><\/span><b>\u01afu \u0111i\u1ec3m v\u00e0 khuy\u1ebft \u0111i\u1ec3m c\u1ee7a c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value<\/b><\/h3>\n<table>\n<thead>\n<tr>\n<th>\n<p style=\"text-align: center;\"><strong>\u01afu \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value<\/strong><\/p>\n<\/th>\n<th style=\"text-align: center;\"><strong>Khuy\u1ebft \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-Value<\/strong><\/th>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\" rowspan=\"4\">\n<ul>\n<li><span style=\"font-weight: 400;\">M\u00f4 h\u00ecnh d\u1eef li\u1ec7u \u0111\u01a1n gi\u1ea3n<\/span><\/li>\n<li><span style=\"font-weight: 400;\">D\u1ec5 d\u00e0ng m\u1edf r\u1ed9ng (scalability)<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Gi\u00e1 tr\u1ecb c\u00f3 th\u1ec3 l\u00e0 XML, JSON ho\u1eb7c c\u00e1c schema linh ho\u1ea1t<\/span><\/li>\n<li><span style=\"font-weight: 400;\">T\u1ed1c \u0111\u1ed9 nhanh<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Ph\u00f9 h\u1ee3p cho c\u00e1c tr\u01b0\u1eddng h\u1ee3p d\u1eef li\u1ec7u kh\u00f4ng c\u00f3 quan h\u1ec7 (phi quan h\u1ec7)<\/span><\/li>\n<\/ul>\n<\/th>\n<th rowspan=\"4\">\n<ul>\n<li style=\"text-align: left;\"><span style=\"font-weight: 400;\">Kh\u00f4ng t\u1ef1 h\u1ed7 tr\u1ee3 li\u00ean k\u1ebft c\u00e1c d\u1eef li\u1ec7u gi\u1eefa c\u00e1c c\u1eb7p key-value, ph\u1ea3i t\u1ef1 t\u1ea1o kh\u00f3a ngo\u1ea1i (foreign key) ri\u00eang<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"font-weight: 400;\">Kh\u00f4ng ph\u00f9 h\u1ee3p v\u1edbi d\u1eef li\u1ec7u ph\u1ee9c t\u1ea1p<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"font-weight: 400;\">Thi\u1ebfu kh\u1ea3 n\u0103ng qu\u00e9t (Scanning)<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"font-weight: 400;\">Ch\u1ec9 ph\u00f9 h\u1ee3p v\u1edbi c\u00e1c l\u1ec7nh CRUD (create, read, update, delete)<\/span><\/li>\n<\/ul>\n<\/th>\n<\/tr>\n<\/thead>\n<\/table>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Document<\/b><\/h3>\n<table>\n<thead>\n<tr>\n<th>\n<p style=\"text-align: center;\"><strong>\u01afu \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Document<\/strong><\/p>\n<\/th>\n<th style=\"text-align: center;\"><strong>Khuy\u1ebft \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Document<\/strong><\/th>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\" rowspan=\"4\">\n<ul>\n<li><span style=\"font-weight: 400;\">M\u00f4 h\u00ecnh d\u1eef li\u1ec7u \u0111\u01a1n gi\u1ea3n v\u00e0 m\u1ea1nh m\u1ebd<\/span><\/li>\n<li><span style=\"font-weight: 400;\">\u0110\u1ecbnh d\u1ea1ng m\u1edf<\/span><\/li>\n<li><span style=\"font-weight: 400;\">C\u00f3 th\u1ec3 m\u1edf r\u1ed9ng (scalability)<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Kh\u00f4ng c\u00f3 kh\u00f3a ngo\u1ea1i (foreign keys)<\/span><\/li>\n<\/ul>\n<\/th>\n<th rowspan=\"4\">\n<ul>\n<li style=\"text-align: left;\"><span style=\"font-weight: 400;\">Ch\u1ec9 l\u00e0 gi\u1ea3i ph\u00e1p t\u1ea1m th\u1eddi \u0111\u1ec3 l\u01b0u tr\u1eef d\u1eef li\u1ec7u d\u1ea1ng b\u1ea3ng v\u00e0 kh\u00f4ng hi\u1ec7u qu\u1ea3 khi x\u1eed l\u00fd c\u00e1c b\u1ea3ng l\u1edbn<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"font-weight: 400;\">Truy v\u1ea5n gi\u1edbi h\u1ea1n \u1edf c\u00e1c key v\u00e0 index<\/span><\/li>\n<li style=\"text-align: left;\"><span style=\"font-weight: 400;\">C\u1ea7n s\u1eed d\u1ee5ng ph\u01b0\u01a1ng ph\u00e1p MapReduce khi th\u1ef1c hi\u1ec7n c\u00e1c truy v\u1ea5n ph\u1ee9c t\u1ea1p\u00a0<\/span><\/li>\n<\/ul>\n<\/th>\n<\/tr>\n<\/thead>\n<\/table>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family<\/b><\/h3>\n<table>\n<thead>\n<tr>\n<th>\n<p style=\"text-align: center;\"><strong>\u01afu \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family<\/strong><\/p>\n<\/th>\n<th style=\"text-align: center;\"><strong>Khuy\u1ebft \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family<\/strong><\/th>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\" rowspan=\"4\">\n<ul>\n<li><span style=\"font-weight: 400;\">H\u1ed7 tr\u1ee3 d\u1eef li\u1ec7u b\u00e1n c\u1ea5u tr\u00fac<\/span><\/li>\n<li><span style=\"font-weight: 400;\">T\u1ef1 \u0111\u1ed9ng index<\/span><\/li>\n<li><span style=\"font-weight: 400;\">C\u00f3 th\u1ec3 m\u1edf r\u1ed9ng (scalability)<\/span><\/li>\n<\/ul>\n<\/th>\n<th rowspan=\"4\">\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Ch\u1ec9 l\u00e0 gi\u1ea3i ph\u00e1p t\u1ea1m th\u1eddi \u0111\u1ec3 l\u01b0u tr\u1eef d\u1eef li\u1ec7u d\u1ea1ng b\u1ea3ng v\u00e0 kh\u00f4ng hi\u1ec7u qu\u1ea3 khi x\u1eed l\u00fd c\u00e1c b\u1ea3ng l\u1edbn.<\/span><\/p>\n<\/th>\n<\/tr>\n<\/thead>\n<\/table>\n<h3><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Graph<\/b><\/h3>\n<table>\n<thead>\n<tr>\n<th>\n<p style=\"text-align: center;\"><strong>\u01afu \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Graph<\/strong><\/p>\n<\/th>\n<th style=\"text-align: center;\"><strong>Khuy\u1ebft \u0111i\u1ec3m C\u01a1 s\u1edf d\u1eef li\u1ec7u Graph<\/strong><\/th>\n<\/tr>\n<tr>\n<th style=\"text-align: left;\" rowspan=\"4\">\n<ul>\n<li><span style=\"font-weight: 400;\">L\u00e0 m\u1ed9t c\u00f4ng c\u1ee5 m\u1ea1nh m\u1ebd<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Index \u0111\u01b0\u1ee3c l\u01b0u local g\u1ea7n data, d\u1ec5 d\u00e0ng truy xu\u1ea5t<\/span><\/li>\n<li><span style=\"font-weight: 400;\">C\u00f3 th\u1ec3 \u0111\u00e1p \u1ee9ng ACID (Atomicity. Consistency, Isolation, Durability)<\/span><\/li>\n<li><span style=\"font-weight: 400;\">C\u1ea5u tr\u00fac linh ho\u1ea1t<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Kh\u1ea3 n\u0103ng cung c\u1ea5p k\u1ebft qu\u1ea3 ngay l\u1eadp t\u1ee9c (in real-time)<\/span><\/li>\n<\/ul>\n<\/th>\n<th rowspan=\"4\">\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Kh\u00f3 m\u1edf r\u1ed9ng chi\u1ec1u ngang (th\u00eam m\u00e1y ch\u1ee7), m\u1eb7c d\u00f9 c\u00f3 th\u1ec3 m\u1edf r\u1ed9ng chi\u1ec1u d\u1ecdc (n\u00e2ng c\u1ea5p m\u00e1y ch\u1ee7).<\/span><\/p>\n<\/th>\n<\/tr>\n<\/thead>\n<\/table>\n<h2><span class=\"ez-toc-section\" id=\"Nhung_truong_hop_su_dung_pho_bien_cua_cac_loai_co_so_du_lieu_NoSQL\"><\/span><b>Nh\u1eefng tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng ph\u1ed5 bi\u1ebfn c\u1ee7a c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">B\u1eaft \u0111\u1ea7u t\u1eeb s\u1ef1 xu\u1ea5t hi\u1ec7n c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL, kh\u00f4ng th\u1ec3 ph\u1ee7 nh\u1eadn r\u1eb1ng m\u1ed7i lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u n\u00e0y mang l\u1ea1i nh\u1eefng \u01b0u \u0111i\u1ec3m \u0111\u1eb7c tr\u01b0ng v\u00e0 ti\u1ec1m n\u0103ng m\u1ea1nh m\u1ebd trong qu\u1ea3n l\u00fd v\u00e0 x\u1eed l\u00fd d\u1eef li\u1ec7u. M\u1eb7c d\u00f9 v\u1eabn t\u1ed3n t\u1ea1i m\u1ed9t s\u1ed1 h\u1ea1n ch\u1ebf, nh\u01b0ng t\u00ednh linh ho\u1ea1t, d\u1ec5 s\u1eed d\u1ee5ng v\u00e0 kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng c\u1ee7a NoSQL \u0111\u00e3 t\u1ea1o n\u00ean s\u1ee9c h\u00fat m\u1ea1nh m\u1ebd trong ng\u00e0nh c\u00f4ng nghi\u1ec7p d\u1eef li\u1ec7u ng\u00e0y nay.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Sau \u0111\u00e2y l\u00e0 nh\u1eefng tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng ph\u1ed5 bi\u1ebfn c\u1ee7a t\u1eebng lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL trong ng\u1eef c\u1ea3nh th\u1ef1c t\u1ebf.<\/span><\/p>\n<h3><strong>Khi n\u00e0o n\u00ean ch\u1ecdn C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-value?<\/strong><\/h3>\n<p><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Key-value<\/b><span style=\"font-weight: 400;\"> th\u01b0\u1eddng \u0111\u01b0\u1ee3c \u01b0a chu\u1ed9ng trong nhi\u1ec1u tr\u01b0\u1eddng h\u1ee3p. Ch\u00fang xu\u1ea5t s\u1eafc trong vi\u1ec7c l\u01b0u tr\u1eef th\u00f4ng tin phi\u00ean, gi\u00fap l\u01b0u gi\u1eef v\u00e0 kh\u00f4i ph\u1ee5c tr\u1ea1ng th\u00e1i phi\u00ean c\u1ee7a ng\u01b0\u1eddi d\u00f9ng trong c\u00e1c \u1ee9ng d\u1ee5ng web.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Ngo\u00e0i ra, c\u01a1 s\u1edf d\u1eef li\u1ec7u Key-value c\u0169ng r\u1ea5t h\u1eefu \u00edch \u0111\u1ec3 l\u01b0u tr\u1eef d\u1eef li\u1ec7u c\u00e1 nh\u00e2n h\u00f3a cho t\u1eebng ng\u01b0\u1eddi d\u00f9ng, x\u1eed l\u00fd gi\u1ecf h\u00e0ng mua s\u1eafm trong c\u00e1c \u1ee9ng d\u1ee5ng th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed v\u00e0 c\u00f2n \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng trong vi\u1ec7c \u0111\u1ec1 xu\u1ea5t s\u1ea3n ph\u1ea9m d\u1ef1a tr\u00ean d\u1eef li\u1ec7u c\u00e1 nh\u00e2n, t\u0103ng tr\u1ea3i nghi\u1ec7m mua s\u1eafm tr\u1ef1c tuy\u1ebfn.\u00a0<\/span><\/p>\n<h3><strong>Khi n\u00e0o n\u00ean ch\u1ecdn C\u01a1 s\u1edf d\u1eef li\u1ec7u Document?<\/strong><\/h3>\n<p><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Document<\/b><span style=\"font-weight: 400;\"> th\u01b0\u1eddng \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng trong nhi\u1ec1u tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng kh\u00e1c nhau. Trong vi\u1ec7c qu\u1ea3n l\u00fd h\u1ed3 s\u01a1 ng\u01b0\u1eddi d\u00f9ng, ch\u00fang cung c\u1ea5p m\u1ed9t Schema linh ho\u1ea1t, cho ph\u00e9p l\u01b0u tr\u1eef c\u00e1c thu\u1ed9c t\u00ednh v\u00e0 gi\u00e1 tr\u1ecb (value) kh\u00e1c nhau, gi\u00fap ng\u01b0\u1eddi d\u00f9ng l\u01b0u tr\u1eef nhi\u1ec1u lo\u1ea1i th\u00f4ng tin kh\u00e1c nhau trong h\u1ed3 s\u01a1 c\u00e1 nh\u00e2n c\u1ee7a h\u1ecd.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u01a1 s\u1edf d\u1eef li\u1ec7u n\u00e0y c\u0169ng r\u1ea5t h\u1eefu \u00edch trong qu\u1ea3n l\u00fd n\u1ed9i dung website, cho ph\u00e9p l\u01b0u tr\u1eef m\u1ecdi lo\u1ea1i d\u1eef li\u1ec7u v\u1edbi Schema linh ho\u1ea1t, bao g\u1ed3m h\u00ecnh \u1ea3nh, video, b\u00ecnh lu\u1eadn, v.v. \u1ee8ng d\u1ee5ng nhi\u1ec1u nh\u1ea5t c\u00f3 th\u1ec3 th\u1ea5y l\u00e0 trong c\u00e1c n\u1ec1n t\u1ea3ng vi\u1ebft blog v\u00e0 c\u00e1c \u1ee9ng d\u1ee5ng qu\u1ea3n l\u00fd n\u1ed9i dung.<\/span><\/p>\n<h3><strong>Khi n\u00e0o n\u00ean ch\u1ecdn C\u01a1 s\u1edf d\u1eef li\u1ec7u <b>Column Family<\/b>?<\/strong><\/h3>\n<p><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Column Family<\/b><span style=\"font-weight: 400;\"> l\u00e0 l\u1ef1a ch\u1ecdn t\u1ed1t cho vi\u1ec7c l\u01b0u tr\u1eef v\u00e0 qu\u1ea3n l\u00fd s\u1edf th\u00edch c\u00e1 nh\u00e2n c\u1ee7a ng\u01b0\u1eddi d\u00f9ng, cung c\u1ea5p c\u01a1 s\u1edf cho c\u00e1c h\u1ec7 th\u1ed1ng th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed, n\u01a1i c\u00f3 th\u1ec3 qu\u1ea3n l\u00fd c\u00e1c s\u1edf th\u00edch, l\u1ef1a ch\u1ecdn v\u00e0 th\u00f4ng tin c\u00e1 nh\u00e2n c\u1ee7a ng\u01b0\u1eddi d\u00f9ng.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Ngo\u00e0i ra c\u00f2n \u1ee9ng d\u1ee5ng trong c\u00e1c l\u0129nh v\u1ef1c Business Intelligence, qu\u1ea3n l\u00fd kho d\u1eef li\u1ec7u (data warehouse), v\u00e0 c\u00e1c h\u1ec7 th\u1ed1ng b\u00e1o c\u00e1o. C\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd kho d\u1eef li\u1ec7u c\u0169ng l\u00e0 m\u1ed9t trong nh\u1eefng \u1ee9ng d\u1ee5ng ph\u1ed5 bi\u1ebfn c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u n\u00e0y.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00e1c c\u01a1 s\u1edf d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef d\u1ea1ng c\u1ed9t n\u1ed5i ti\u1ebfng bao g\u1ed3m Google&#8217;s Bigtable, Cassandra, v\u00e0 HBase.<\/span><\/p>\n<h3><strong>Khi n\u00e0o n\u00ean ch\u1ecdn C\u01a1 s\u1edf d\u1eef li\u1ec7u Graph?<\/strong><\/h3>\n<p><b>C\u01a1 s\u1edf d\u1eef li\u1ec7u Graph<\/b><span style=\"font-weight: 400;\">\u00a0th\u01b0\u1eddng \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng trong nhi\u1ec1u tr\u01b0\u1eddng h\u1ee3p, bao g\u1ed3m c\u00e1c m\u1ea1ng x\u00e3 h\u1ed9i, h\u1ec7 th\u1ed1ng \u0111\u1ec1 xu\u1ea5t, qu\u1ea3n l\u00fd logistics, \u0111\u00e1nh gi\u00e1 r\u1ee7i ro, v\u00e0 ph\u00e1t hi\u1ec7n gian l\u1eadn.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Cach_chon_loai_co_so_du_lieu_NoSQL_phu_hop\"><\/span><b>C\u00e1ch ch\u1ecdn lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Khi l\u1ef1a ch\u1ecdn lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p, c\u00e1c y\u1ebfu t\u1ed1 quan tr\u1ecdng c\u1ea7n xem x\u00e9t bao g\u1ed3m y\u00eau c\u1ea7u b\u00e0i to\u00e1n, hi\u1ec7u su\u1ea5t, kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng, chi ph\u00ed, m\u00f4 h\u00ecnh d\u1eef li\u1ec7u, \u0111\u1ed9 ph\u1ee9c t\u1ea1p v\u00e0 \u0111\u1ed9 nh\u1ea5t qu\u00e1n c\u1ee7a d\u1eef li\u1ec7u nh\u1eb1m \u0111\u00e1p \u1ee9ng \u0111\u01b0\u1ee3c \u0111\u1ea7y \u0111\u1ee7 c\u00e1c y\u00eau c\u1ea7u v\u00e0 m\u1ee5c ti\u00eau c\u1ee7a d\u1ef1 \u00e1n.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u1ee5 th\u1ec3:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"><strong>Y\u00eau c\u1ea7u b\u00e0i to\u00e1n<\/strong> n\u00ean l\u00e0 trung t\u00e2m \u0111\u1ec3 l\u1ef1a ch\u1ecdn c\u01a1 s\u1edf d\u1eef li\u1ec7u, v\u00ec n\u00f3 \u1ea3nh h\u01b0\u1edfng \u0111\u1ebfn hi\u1ec7u su\u1ea5t, kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng, b\u1ea3o tr\u00ec, v\u00e0 t\u1ed1c \u0111\u1ed9 ph\u00e1t tri\u1ec3n v\u00e0 tri\u1ec3n khai \u1ee9ng d\u1ee5ng. <\/span><span style=\"font-weight: 400;\">Hi\u1ec7u su\u1ea5t \u0111\u00f2i h\u1ecfi xem c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u00f3 \u0111\u00e1p \u1ee9ng \u0111\u01b0\u1ee3c nhu c\u1ea7u v\u1ec1 th\u00f4ng l\u01b0\u1ee3ng v\u00e0 \u0111\u1ed9 tr\u1ec5 hay kh\u00f4ng. Kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng l\u00e0 quan tr\u1ecdng, v\u00e0 s\u1ef1 linh ho\u1ea1t c\u1ee7a m\u00f4 h\u00ecnh d\u1eef li\u1ec7u c\u1ea7n ph\u1ea3i \u0111\u00e1p \u1ee9ng m\u00f4 h\u00ecnh kinh doanh c\u1ee7a \u1ee9ng d\u1ee5ng.<\/span><\/li>\n<li><span style=\"font-weight: 400;\"><strong>\u0110\u1ed9 ph\u1ee9c t\u1ea1p v\u00e0 \u0111\u1ed9 nh\u1ea5t qu\u00e1n<\/strong> c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u0169ng \u0111\u1eb7c bi\u1ec7t quan tr\u1ecdng, c\u00f9ng v\u1edbi s\u1ef1 h\u1ed7 tr\u1ee3 cho b\u1ea3o m\u1eadt, kh\u1ea3 n\u0103ng ch\u1ed1ng l\u1ed7i cao.<\/span><\/li>\n<li><span style=\"font-weight: 400;\"><strong>Y\u1ebfu t\u1ed1 chi ph\u00ed<\/strong>\u00a0kh\u00f4ng ch\u1ec9 gi\u1edbi h\u1ea1n \u1edf c\u00e1c ph\u00ed c\u1ea5p ph\u00e9p ho\u1eb7c \u0111\u0103ng k\u00fd ban \u0111\u1ea7u m\u00e0 c\u00f2n bao g\u1ed3m c\u00e1c chi ph\u00ed v\u1eadn h\u00e0nh nh\u01b0 ph\u1ea7n c\u1ee9ng, l\u01b0u tr\u1eef d\u1eef li\u1ec7u, nh\u00e2n c\u00f4ng c\u1ea7n thi\u1ebft cho b\u1ea3o tr\u00ec c\u01a1 s\u1edf d\u1eef li\u1ec7u v\u00e0 c\u00e1c chi ph\u00ed kh\u00e1c.<\/span><\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Cau_hoi_thuong_gap_ve_cac_loai_co_so_du_lieu_NoSQL\"><\/span><b>C\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p v\u1ec1 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><b>NoSQL c\u00f3 s\u1eed d\u1ee5ng schema kh\u00f4ng?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Kh\u00f4ng, \u0111a ph\u1ea7n NoSQL kh\u00f4ng s\u1eed d\u1ee5ng schema v\u00ec v\u1eady n\u00ean NoSQL linh ho\u1ea1t h\u01a1n so v\u1edbi SQL trong vi\u1ec7c x\u1eed l\u00fd c\u01a1 s\u1edf d\u1eef li\u1ec7u. L\u01b0u \u00fd r\u1eb1ng NoSQL kh\u00f4ng ph\u1ea3i l\u00e0 m\u1ed9t lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u1ee5 th\u1ec3 m\u00e0 l\u00e0 m\u1ed9t h\u1ec7 th\u1ed1ng c\u01a1 s\u1edf d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c thi\u1ebft k\u1ebf \u0111\u1ec3 qu\u1ea3n l\u00fd v\u00e0 x\u1eed l\u00fd nhi\u1ec1u lo\u1ea1i d\u1eef li\u1ec7u phi quan h\u1ec7.\u00a0<\/span><\/p>\n<h3><b>Khi n\u00e0o n\u00ean s\u1eed d\u1ee5ng c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">NoSQL l\u00e0 l\u1ef1a ch\u1ecdn ph\u00f9 h\u1ee3p khi c\u1ea7n m\u1edf r\u1ed9ng ph\u1ea7n c\u1ee9ng nhanh ch\u00f3ng trong t\u01b0\u01a1ng lai ho\u1eb7c th\u1ef1c hi\u1ec7n c\u00e1c thay \u0111\u1ed5i v\u1ec1 m\u00f4 h\u00ecnh d\u1eef li\u1ec7u d\u1ecdc \u0111\u01b0\u1eddng \u0111i.\u00a0<\/span><\/p>\n<h3><b>NoSQL c\u00f3 th\u1ec3 thay th\u1ebf SQL kh\u00f4ng?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Kh\u00f4ng th\u1ec3 thay th\u1ebf SQL b\u1eb1ng NoSQL.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">V\u00ec hai lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u n\u00e0y mang l\u1ea1i nh\u1eefng l\u1ee3i \u00edch v\u00e0 kh\u1ea3 n\u0103ng kh\u00e1c nhau, n\u00ean kh\u00f4ng th\u1ec3 ph\u1ee7 nh\u1eadn nh\u1eefng \u0111i\u1ec3m m\u1ea1nh m\u00e0 m\u1ed7i lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u n\u00e0y mang l\u1ea1i. S\u1ebd c\u00f3 m\u1ed9t s\u1ed1 tr\u01b0\u1eddng h\u1ee3p n\u00ean d\u00f9ng SQL v\u00e0 trong m\u1ed9t s\u1ed1 tr\u01b0\u1eddng h\u1ee3p th\u00ec ch\u1ec9 n\u00ean d\u00f9ng NoSQL, do \u0111\u00f3 kh\u00f4ng th\u1ec3 thay th\u1ebf SQL b\u1eb1ng NoSQL hay ng\u01b0\u1ee3c l\u1ea1i \u0111\u01b0\u1ee3c.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Tong_ket_cac_loai_co_so_du_lieu_NoSQL\"><\/span><b>T\u1ed5ng k\u1ebft c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Qua b\u00e0i vi\u1ebft tr\u00ean, mong b\u1ea1n \u0111\u00e3 c\u00f3 th\u1ec3 hi\u1ec3u \u0111\u01b0\u1ee3c NoSQL l\u00e0 g\u00ec v\u00e0 n\u1eafm r\u00f5 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL, \u01b0u \u0111i\u1ec3m, khuy\u1ebft \u0111i\u1ec3m, c\u00e1c \u1ee9ng d\u1ee5ng ph\u1ed5 bi\u1ebfn c\u1ee7a t\u1eebng lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u trong c\u00e1c l\u0129nh v\u1ef1c hi\u1ec7n nay.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">B\u00ean c\u1ea1nh nh\u1eefng \u01b0u \u0111i\u1ec3m tuy\u1ec7t v\u1eddi th\u00ec c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL n\u00f3i ri\u00eang c\u0169ng c\u00f2n m\u1ed9t s\u1ed1 h\u1ea1n ch\u1ebf m\u00e0 b\u1ea1n c\u1ea7n c\u00e2n nh\u1eafc v\u00e0 nghi\u00ean c\u1ee9u k\u1ef9 tr\u01b0\u1edbc khi l\u1ef1a ch\u1ecdn cho d\u1ef1 \u00e1n c\u1ee7a m\u00ecnh.<\/span><\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" class=\"sp-no-webp wp-image-5668 aligncenter sp-no-webp entered lazyloaded\" src=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2.png\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" srcset=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2.png 300w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2-200x200.png 200w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2-60x60.png 60w\" alt=\"robby-2\" width=\"300\" height=\"300\" data-lazy-src=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2.png\" data-lazy-sizes=\"(max-width: 300px) 100vw, 300px\" data-lazy-srcset=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2.png 300w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2-200x200.png 200w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2-60x60.png 60w\" data-ll-status=\"loaded\" \/><\/figure>\n<\/div>\n<p id=\"block-bdf220a1-3635-4794-9101-81d879939b92\" class=\"has-text-align-center\" style=\"text-align: center;\"><strong>B\u1ea1n th\u1ea5y b\u00e0i vi\u1ebft hay v\u00e0 h\u1eefu \u00edch? \u0110\u1eebng ng\u1ea1i Share v\u1edbi b\u1ea1n b\u00e8 v\u00e0 \u0111\u1ed3ng nghi\u1ec7p nh\u00e9.<\/strong><\/p>\n<p id=\"block-a1315aab-406f-48df-97fc-6b9584e6e134\" class=\"has-text-align-center\" style=\"text-align: center;\"><strong>V\u00e0 nhanh tay tham kh\u1ea3o\u00a0<a href=\"http:\/\/itviec.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">vi\u1ec7c l\u00e0m IT<\/a>\u00a0\u201cch\u1ea5t\u201d tr\u00ean ITviec<\/strong>!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>C\u01a1 s\u1edf d\u1eef li\u1ec7u phi quan h\u1ec7 (Non-relational databases) \u0111\u00e3 xu\u1ea5t hi\u1ec7n t\u1eeb cu\u1ed1i th\u1eadp k\u1ef7 1960, tuy nhi\u00ean, thu\u1eadt ng\u1eef &#8220;NoSQL&#8221; \u0111\u01b0\u1ee3c Carlo Strozzi s\u1eed d\u1ee5ng v\u00e0o n\u0103m 1998 \u0111\u1ec3 \u0111\u1eb7t t\u00ean cho c\u01a1 s\u1edf d\u1eef li\u1ec7u quan h\u1ec7 ngu\u1ed3n m\u1edf Strozzi NoSQL c\u1ee7a \u00f4ng. \u0110\u1ec3 t\u00ecm hi\u1ec3u s\u00e2u h\u01a1n v\u1ec1 NoSQL, b\u00e0i vi\u1ebft [&hellip;]<\/p>\n","protected":false},"author":209,"featured_media":64527,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_gspb_post_css":"","footnotes":""},"categories":[109],"tags":[],"class_list":["post-64444","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-chuyen-mon-it"],"blocksy_meta":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.8 (Yoast SEO v27.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a v\u00e0 \u1ee8ng d\u1ee5ng - ITviec Blog<\/title>\n<meta name=\"description\" content=\"B\u00e0i vi\u1ebft gi\u1edbi thi\u1ec7u \u0111\u1ea7y \u0111\u1ee7 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL c\u00f9ng \u01b0u, nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 c\u00e1ch l\u1ef1a ch\u1ecdn lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a, \u01afu - Nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 \u1ee8ng d\u1ee5ng\" \/>\n<meta property=\"og:description\" content=\"C\u01a1 s\u1edf d\u1eef li\u1ec7u phi quan h\u1ec7 (Non-relational databases) \u0111\u00e3 xu\u1ea5t hi\u1ec7n t\u1eeb cu\u1ed1i th\u1eadp k\u1ef7 1960, tuy nhi\u00ean, thu\u1eadt ng\u1eef &quot;NoSQL&quot; \u0111\u01b0\u1ee3c Carlo Strozzi s\u1eed d\u1ee5ng v\u00e0o n\u0103m\" \/>\n<meta property=\"og:url\" content=\"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/\" \/>\n<meta property=\"og:site_name\" content=\"ITviec Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ITviec\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-21T01:30:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-12T06:53:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Thumbnail-nosql-database-vippro.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"790\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"M\u1ef9 Duy\u00ean\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ITviec\" \/>\n<meta name=\"twitter:site\" content=\"@ITviec\" \/>\n<meta name=\"twitter:label1\" content=\"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi\" \/>\n\t<meta name=\"twitter:data1\" content=\"M\u1ef9 Duy\u00ean\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 ph\u00fat\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a v\u00e0 \u1ee8ng d\u1ee5ng - ITviec Blog","description":"B\u00e0i vi\u1ebft gi\u1edbi thi\u1ec7u \u0111\u1ea7y \u0111\u1ee7 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL c\u00f9ng \u01b0u, nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 c\u00e1ch l\u1ef1a ch\u1ecdn lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p.","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:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/","og_locale":"vi_VN","og_type":"article","og_title":"C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a, \u01afu - Nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 \u1ee8ng d\u1ee5ng","og_description":"C\u01a1 s\u1edf d\u1eef li\u1ec7u phi quan h\u1ec7 (Non-relational databases) \u0111\u00e3 xu\u1ea5t hi\u1ec7n t\u1eeb cu\u1ed1i th\u1eadp k\u1ef7 1960, tuy nhi\u00ean, thu\u1eadt ng\u1eef \"NoSQL\" \u0111\u01b0\u1ee3c Carlo Strozzi s\u1eed d\u1ee5ng v\u00e0o n\u0103m","og_url":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/","og_site_name":"ITviec Blog","article_publisher":"https:\/\/www.facebook.com\/ITviec","article_published_time":"2024-03-21T01:30:52+00:00","article_modified_time":"2024-04-12T06:53:30+00:00","og_image":[{"width":1500,"height":790,"url":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Thumbnail-nosql-database-vippro.png","type":"image\/png"}],"author":"M\u1ef9 Duy\u00ean","twitter_card":"summary_large_image","twitter_creator":"@ITviec","twitter_site":"@ITviec","twitter_misc":{"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi":"M\u1ef9 Duy\u00ean","\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"18 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#article","isPartOf":{"@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/"},"author":{"name":"M\u1ef9 Duy\u00ean","@id":"https:\/\/itviec.com\/blog\/#\/schema\/person\/73733c0725c7e39e696a896bd1abe2d7"},"headline":"C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a, \u01afu &#8211; Nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 \u1ee8ng d\u1ee5ng","datePublished":"2024-03-21T01:30:52+00:00","dateModified":"2024-04-12T06:53:30+00:00","mainEntityOfPage":{"@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/"},"wordCount":4680,"publisher":{"@id":"https:\/\/itviec.com\/blog\/#organization"},"image":{"@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#primaryimage"},"thumbnailUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Thumbnail-nosql-database-vippro.png","articleSection":["Chuy\u00ean m\u00f4n IT"],"inLanguage":"vi"},{"@type":"WebPage","@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/","url":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/","name":"C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a v\u00e0 \u1ee8ng d\u1ee5ng - ITviec Blog","isPartOf":{"@id":"https:\/\/itviec.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#primaryimage"},"image":{"@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#primaryimage"},"thumbnailUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Thumbnail-nosql-database-vippro.png","datePublished":"2024-03-21T01:30:52+00:00","dateModified":"2024-04-12T06:53:30+00:00","description":"B\u00e0i vi\u1ebft gi\u1edbi thi\u1ec7u \u0111\u1ea7y \u0111\u1ee7 c\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL c\u00f9ng \u01b0u, nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 c\u00e1ch l\u1ef1a ch\u1ecdn lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL ph\u00f9 h\u1ee3p.","breadcrumb":{"@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/"]}]},{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#primaryimage","url":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Thumbnail-nosql-database-vippro.png","contentUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Thumbnail-nosql-database-vippro.png","width":1500,"height":790},{"@type":"BreadcrumbList","@id":"https:\/\/itviec.com\/blog\/cac-loai-co-so-du-lieu-nosql\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Chuy\u00ean m\u00f4n IT","item":"https:\/\/itviec.com\/blog\/chuyen-mon-it\/"},{"@type":"ListItem","position":2,"name":"C\u00e1c lo\u1ea1i c\u01a1 s\u1edf d\u1eef li\u1ec7u NoSQL: \u0110\u1ecbnh ngh\u0129a, \u01afu &#8211; Nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 \u1ee8ng d\u1ee5ng"}]},{"@type":"WebSite","@id":"https:\/\/itviec.com\/blog\/#website","url":"https:\/\/itviec.com\/blog\/","name":"ITviec Blog","description":"IT Jobs &amp; People in Vietnam","publisher":{"@id":"https:\/\/itviec.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/itviec.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi"},{"@type":"Organization","@id":"https:\/\/itviec.com\/blog\/#organization","name":"ITviec","url":"https:\/\/itviec.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/itviec.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2018\/12\/itviec-black-square-facebook.png","contentUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2018\/12\/itviec-black-square-facebook.png","width":1800,"height":1800,"caption":"ITviec"},"image":{"@id":"https:\/\/itviec.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ITviec","https:\/\/x.com\/ITviec","https:\/\/www.linkedin.com\/company\/itviec","https:\/\/www.youtube.com\/channel\/UCYthAQ3bcGr57M_ag5gHDvQ"]},{"@type":"Person","@id":"https:\/\/itviec.com\/blog\/#\/schema\/person\/73733c0725c7e39e696a896bd1abe2d7","name":"M\u1ef9 Duy\u00ean","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Author_Duyen-Tran-120x120.jpg","url":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Author_Duyen-Tran-120x120.jpg","contentUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2024\/03\/Author_Duyen-Tran-120x120.jpg","caption":"M\u1ef9 Duy\u00ean"},"url":"https:\/\/itviec.com\/blog\/author\/my-duyen\/"}]}},"_links":{"self":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/posts\/64444","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/users\/209"}],"replies":[{"embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/comments?post=64444"}],"version-history":[{"count":0,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/posts\/64444\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/media\/64527"}],"wp:attachment":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/media?parent=64444"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/categories?post=64444"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/tags?post=64444"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}