Chủ Nhật, 1 tháng 8, 2021

MongoDB là gì? Ưu nhược điểm khi sử dụng MongoDB?

Sự phát triển của thời đại công nghệ thông tin khiến cho nhiều người quan tâm đến chủ đề này hơn. Cơ hội công việc, sự phát triển của ngành nghề này trong tương lai. Đặc biệt là đối với các bạn trẻ hiện nay, theo đuổi ngành công nghệ thông tin chính là một điều nên làm. Những câu hỏi xoay quanh các nền tảng, ứng dụng trong ngành chính là xu thế. Câu hỏi về MongoDB hay sử dụng MongoDB như thế nào được đặt ra rất nhiều. Bài viết ngày hôm nay, chúng ta hãy cùng nhau tìm hiểu về chủ đề này nhé!

NoSql là gì?

Trước khi đến với những giải đáp về sử dụng MongoDB, các bạn nên tìm hiểu về NoSql. Bởi lẽ, hai điều này có liên hệ mật thiết đến nhau. Trước hết, chúng ta sẽ đi giải đáp về NoSql là gì nhé!

Những tính năng tuyệt vời của Mongodb

Những tính năng tuyệt vời của Mongodb

Nếu như bạn đã tìm hiểu hoặc có kiến thức sẵn về IT chắc hẳn sẽ biết đến cơ sở dữ liệu phi quan hệ. NoSql chính là một dạng cơ sở dữ liệu mã nguồn mở. Đây là những chữ cái viết tắt của cụm từ None-Relational SQL hay còn gọi là Not-Only SQL. Nó được ra đời như một điều bù đắp cho những khuyết điểm của mô hình dữ liệu RDBMS. Relational Database Management System – Hệ quản trị cơ sở dữ liệu quan hệ có những điểm thiếu sót về tốc độ, tính năng, khả năng mở rộng,… NoSql chính là mảnh vá cho những khuyết điểm này.

Đến với NoSql, các bạn có thể mở rộng dữ liệu mà không cần lo lắng tới những điều kiện khác. Nếu như thông thường, để mở rộng dữ liệu, các bạn cần phải tạo khóa ngoại, khóa chính, kiểm trá,… Nhưng khi sử dụng NoSql thì các bạn không cần thực hiện điều này. NoSql có khả năng bỏ qua tính toàn vẹn của dữ liệu và transaction. Nó có thể giúp bạn khả năng mở rộng dữ liệu với hiệu suất nhanh hơn. Tuy nhiên, tại sao chúng tôi lại nói NoSql lại liên quan đến sử dụng MongoDB, các bạn hãy tìm hiểu tiếp nhé!

NoSql hiện nay đã được sử dụng ở rất nhiều công ty, tập đoàn lớn. Ngay cả Facebook cũng sử dụng điều này. Google cũng cần đến một dạng của NoSql để phát triển BigTable.

MongoDB là gì?

Theo những định nghĩa cho biết, MongoDB chính là một dạng cả NoSql. Hay nói một cách đơn giản MongoDB chính là một database hướng tài liệu. Nó chính là một hệ quản trị cơ sở dữ liệu mã nguồn mở. MongoDb cho phép bạn mở rộng tài liệu được lưu trữ trong Document kiểu JSON. Thay vì trước đó các bạn phải dùng dạng bảng như cơ sở dữ liệu quan hệ. Nếu không sử dụng MongoDB khi truy vấn dữ liệu sẽ rất lâu và phải thực hiện nhiều bước.

Cách sử dụng Mongodb như thế nào

Cách sử dụng Mongodb như thế nào

Với cơ sở dữ liệu chúng ta phải biết đến những khái niệm các bảng, các cơ sở dữ liệu quan hệ. Thậm chí, chúng ta còn phải dùng đến các bảng để lưu dữ liệu. Thì khi đến với Mongodb các bạn sẽ chỉ dùng khái niệm Collection thay vì bảng như trước. Nếu như RDBMS có collection ứng với table, document ứng với row. Thì khi sử dụng Mongo các bạn sẽ dùng các document thay cho row trong RDBMS.

Các collection trong MongoDB được cấu trúc linh hoạt. Các bạn có thể sử dụng nó để cho phép các dữ liệu lưu trữ. Mà các bạn không cần phải tuân theo một cấu trúc nhất định như ban đầu. Những thông tin liên quan đến nhau sẽ cùng được lưu trữ để truy vấn nhanh hơn. Nhờ có ngôn ngữ truy vấn MongoDB các bạn có thể thực hiện những điều này. Đây chính là lý do vì sao, nhiều người muốn tìm hiểu về cách sử dụng MongoDB.

Ưu điểm của MongoDB so với những loại khác

MongoDB có nhiều ưu điểm hơn so với những loại khác. Ưu điểm đầu tiên của MongoDB chính là sử dụng lưu trữ dữ liệu dưới dạng Document JSON. Nhờ có nó nên mỗi một collection đều sẽ có các kích cỡ và các Document khác nhau. Sự linh hoạt trong việc lưu trữ dữ liệu của MongoDB là rất hữu dụng. Chính vì vậy, các bạn hoàn toàn có thể sử dụng MongoDB để Insert dữ liệu bất cứ lúc nào.

Cách hoạt động của Mongodb

Cách hoạt động của Mongodb

Ưu điểm thứ hai của MongoDB đó chính là nó không có sự ràng buộc lẫn nhau trong dữ liệu. Các bạn sẽ không cần phải join như trong RDBMS. Nên khi sử dụng insert hay xóa, update sẽ không cần tốn nhiều thời gian. Các bạn cũng không cần phải chờ xem nó có thỏa mãn các ràng buộc dữ liệu hay không để tiến hành insert..

Sử dụng MongoDB các bạn có thể mở rộng dễ dàng hơn. Trong nền tảng này có một khái niệm cluster là cụm các node chứa dữ liệu giao tiếp với nhau. Khi bạn muốn mở rộng một hệ thống, các bạn chỉ cần thêm một node vào cluster. Đây chính là sự nhanh nhạy khi dùng MongoDB.

Trường dữ liệu “_id” luôn tự động đánh chỉ mục index ở MongoDB để tốc độ truy vấn thông tin nhanh nhất. Khi có một truy vấn dữ liệu, bản ghi của cached sẽ cho lên bộ nhớ Ram. Từ đó phục vụ lần lượt các truy vấn của người dùng, diễn ra nhanh hơn mà không cần đọc từ ổ cứng.

Ngoài ra, sử dụng MongoDB còn hỗ trợ hiệu năng cao cho người dùng. Ví dụ như tốc độ truy vấn find, update, insert hay delete. Tất cả đều được tối ưu nhanh hơn so với các hệ thống quản trị dữ liệu quan hệ khác. Từ những thử nghiệm cho thấy, tốc độ của MongoDb có thể nhanh gấp 100 lần so với MySQL.

Nhược điểm khi sử dụng MongoDB?

Mặc dù MongoDB có nhiều ưu điểm như vậy, tuy nhiên nó vẫn chưa phải hoàn hảo. Vẫn sẽ có những nhược điểm nhất định khi sử dụng. Đây cũng chính là lý do chúng tôi tổng hợp để các bạn hiểu hơn về MongoDB.

Ưu điểm đôi khi là nhược điểm. Điều này thực sự quá bất ngờ phải không nào? Mặc dù ưu điểm khi sử dụng MongoDB đó là không có quá nhiều ràng buộc như trong RDBMS. Tuy nhiên, chính điều này khiến cho nhiều người dùng lo lắng. Khi thao tác trên MongoDB các bạn cần phải cẩn thận hơn vì không có sự ràng buộc này.

Những ưu điểm của MongoDB

Những ưu điểm của MongoDB

MongoDB bị nhiều người dùng đánh giá là tốn bộ nhớ do lưu dữ liệu dưới dạng key – value, collection. Nền tảng này các dữ liệu chỉ khác nhau về value, do đó, key vẫn sẽ bị lặp lại nhiều lần. Vì không hỗ trợ Join nên dễ dẫn đến dư thừa dữ liệu.

Ngoài ra, nhược điểm khi sử dụng MongoDB chính là nguy cơ gây mất dữ liệu khi chưa hoàn thành bản lưu. Điều này hoàn toàn có thể xảy ra bởi quá trình insert hay update, remove bản ghi của MongoDB không cập nhật ngay xuống ổ cứng. Phải mất khoảng 60s nền tảng này mới thực hiện ghi toàn bộ dữ liệu thay đổi từ Ram vào ổ cứng. Nếu có sự cố như mất điện xảy ra trong trường hợp này, thì các bạn có thể bị mất dữ liệu.

Khi nào nên sử dụng MongoDb?

Sau khi tìm hiểu về ưu nhược điểm của MongoDB, các bạn cũng nên nhớ khi nào nên dùng nền tảng này. Đó chính là khi là hệ thống realtime yêu cầu phản hồi nhanh. Ngoài ra, khi các hệ thống Big Data với yêu cầu truy vấn nhanh thì các bạn cũng nên sử dụng MongoDB. Các hệ thống có lượng request lớn cũng là một trong những trường hợp cần dùng MongoDB.

Tùy theo dự án, trường hợp cụ thể khác nhau, mà các bạn đánh giá có cần dùng đến nền tảng này hay không? Sự lựa chọn MongoDB thay cho CSDL sẽ hữu dụng hơn trong nhiều trường hợp. Không phải tự nhiên, số lượng câu hỏi đặt cho MongoDB lại nhiều đến như vậy. Sự hữu ích chính là điều khiến cho MongoDb được quan tâm.

Trên đây chính là những điều cần biết về ưu nhược điểm khi sử dụng MongoDB. Các bạn nên cân nhắc về việc sử dụng nền tảng này. Những ưu điểm của nó thật sự đáng để cân nhắc. Hiểu về MongoDB và học cách sử dụng. các bạn sẽ thấy được hiệu quả mà nó đem lại. Bài viết này chúng tôi đã tổng hợp cho bạn rất nhiều thông tin. Hy vọng nó có thể đem đến sự bổ ích dành cho bạn. Cảm ơn các bạn đã đón đọc bài viết.

Các  bạn có thể đọc thêm bài viết về chủ đề Ruby On Rails là gì tại đây.

The post MongoDB là gì? Ưu nhược điểm khi sử dụng MongoDB? appeared first on TEKY - Học viện sáng tạo công nghệ.



source https://teky.edu.vn/blog/mongodb-la-gi/

Không có nhận xét nào:

Đăng nhận xét