MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Hướng dẫn về MongoDB cho người mới bắt đầu (Hướng dẫn đầy đủ) - Học MongoDB trong 15 phút

Một công nghệ đang thu hút sự chú ý của các nhà phát triển đó là MongoDB. MongoDB, là một cơ sở dữ liệu hướng tài liệu, mã nguồn mở, lưu trữ dữ liệu dưới dạng tài liệu.

Trong hướng dẫn MongoDB cho người mới bắt đầu này, chúng ta sẽ nghiên cứu mọi thứ về MongoDB là gì và cách hoạt động, điều kiện tiên quyết, ứng dụng, lợi ích, hạn chế, v.v. để học MongoDB như một chuyên gia.

Vì vậy, bạn có hào hứng xem Hướng dẫn về MongoDB cho người mới bắt đầu không?

MongoDB là gì và nó hoạt động như thế nào?

MongoDB là cơ sở dữ liệu NoSQL (Không chỉ Ngôn ngữ truy vấn có cấu trúc) chương trình hướng tới tài liệu đa nền tảng. Đây là một hệ quản trị cơ sở dữ liệu mã nguồn mở, hỗ trợ nhiều dạng dữ liệu khác nhau.

Nó trở nên phổ biến vào giữa những năm 2000 để sử dụng trong dữ liệu lớn ứng dụng và cả để xử lý dữ liệu phi cấu trúc.

Kiến trúc MongoDB được tạo thành từ các bộ sưu tập và các tài liệu. Nó sử dụng định dạng BSON để lưu trữ tài liệu, là một dạng nhị phân của tài liệu JSON. Máy chủ của nó không có bất kỳ thời gian chết nào khi bạn đang sửa đổi động các lược đồ.

Điều đó có nghĩa là người dùng có nhiều thời gian hơn để làm việc nhiều hơn trên dữ liệu hơn là lãng phí thời gian trong việc chuẩn bị dữ liệu cho cơ sở dữ liệu.

Điều kiện tiên quyết để học MongoDB

Hướng dẫn về MongoDB cho người mới bắt đầu này bao gồm các điều kiện tiên quyết mà bạn nên biết trước khi bắt đầu học MongoDB .

  • Kiến thức về bất kỳ ngôn ngữ lập trình nào.
  • Kiến thức về JavaScript
  • Biết JSON sẽ rất hữu ích
  • Một số kiến ​​thức về RDBMS
  • Kiến thức về bất kỳ trình soạn thảo văn bản nào

Hướng dẫn MongoDB cho người mới bắt đầu - Giới thiệu

Giới thiệu về Cơ sở dữ liệu NoSQL

Nhiều người trong số các bạn có thể đã nghe nói về NoSQL, nó là một loại cơ sở dữ liệu được sử dụng để quản lý dữ liệu phi cấu trúc, tức là dữ liệu đến từ nhiều địa điểm khác nhau như mạng xã hội, ngân hàng, thị trường chứng khoán, v.v. Về cơ bản, nó không có hàng hoặc cột nào trong đó.

NoSQL đang đóng một vai trò quan trọng trong việc xử lý lượng dữ liệu khổng lồ này, nó đang thay đổi và phát triển với tốc độ rất nhanh. Cơ sở dữ liệu quan hệ không phù hợp để xử lý loại dữ liệu luôn thay đổi nhanh chóng này.

Do đó, cơ sở dữ liệu NoSQL đang được thiết kế để khắc phục tất cả các nhược điểm của cơ sở dữ liệu quan hệ trong bối cảnh thế giới ngày nay.

MongoDB Vs RDBMS

Sau đây là một số điểm cho chúng ta biết sự khác biệt giữa MongoDB và RDBMS .

  • RDBMS đang có cơ sở dữ liệu quan hệ nhưng MongoDB có cơ sở dữ liệu không quan hệ.
  • Trong RDBMS, chúng tôi cần thiết kế bảng sau đó chỉ chúng tôi mới có thể bắt đầu viết mã nhưng trong MongoDB, chúng tôi có thể bắt đầu viết mã trực tiếp.
  • RDBMS hỗ trợ ngôn ngữ SQL và MongoDB hỗ trợ SQL cũng như ngôn ngữ truy vấn JSON.
  • RDBMS dựa trên bảng trong khi MongoDB dựa trên khóa-giá trị.
  • MongoDB dựa trên tài liệu trong khi RDBMS dựa trên hàng.
  • RDBMS dựa trên cột trong khi MongoDB dựa trên trường.
  • RDBMS không dễ thiết lập nhưng MongoDB tương đối dễ thiết lập.
  • MongoDB có thể mở rộng theo chiều ngang, mặt khác, RDBMS có thể mở rộng theo chiều dọc.
  • RDBMS xử lý dữ liệu rất chậm so với dữ liệu không có cấu trúc của MongoDB.
  • RDBMS làm nổi bật các thuộc tính ACID (Tính nguyên tử, Tính nhất quán, Tính cô lập, Độ bền). Mặt khác, MongoDB nhấn mạnh vào định lý CAP (Tính nhất quán, Tính khả dụng, Dung sai phân vùng).

Hướng dẫn MongoDB cho người mới bắt đầu - MongoDB VS RDBMS

Tại sao MongoDB được sử dụng?

MongoDB có nhiều tính năng với chính nó vì nó đang xử lý dữ liệu NoSQL, đang được tạo ngày nay trong TB’s trong vòng một phần nhỏ giây. Vì vậy, để xử lý lượng lớn dữ liệu này và cũng để lấy một số thông tin hữu ích từ nó, chúng tôi đang sử dụng MongoDB.

  • Truy vấn
  • Lập chỉ mục
  • Tải mất cân bằng
  • Xử lý Nhiều Máy chủ
  • Hệ thống lưu trữ tệp
  • Tổng hợp
  • Hiệu suất cao

i. Truy vấn

Nó hỗ trợ truy vấn phạm vi, biểu thức chính quy và nhiều loại tìm kiếm khác cho các truy vấn. MongoDB hỗ trợ các truy vấn đặc biệt và dựa trên tài liệu.

Các truy vấn bao gồm các hàm JavaScript do người dùng xác định và cũng có thể trả về loại dữ liệu cụ thể ra khỏi tài liệu. Nó cũng có thể trả về một mẫu dữ liệu ngẫu nhiên có kích thước cụ thể nhất định.

ii. Lập chỉ mục

Các trường trong tài liệu có thể được lập chỉ mục hoặc là chính hoặc phụ. MongoDB cũng có khả năng xử lý và đối phó với việc sao chép dữ liệu. Như chúng ta biết rằng các tập hợp bản sao chứa cùng một dữ liệu với nhiều hơn một bản sao của chính nó.

Mỗi bản sao sẽ cố gắng đưa chính nó vào chỉ mục chính hoặc chỉ mục phụ. Nói chung, tất cả quá trình đọc và ghi trên dữ liệu được thực hiện bằng cách sử dụng chỉ mục chính nhưng đôi khi có thể xảy ra trường hợp chỉ mục chính của bản sao bị lỗi do một số lý do.

Vì vậy, tại thời điểm đó, tập hợp bản sao sẽ trải qua quá trình bầu chọn chỉ mục thứ cấp nào của bản sao sẽ được chọn để xử lý thêm bằng thao tác đọc hoặc ghi. Hầu hết các trường hợp cái thứ cấp được sử dụng cho hoạt động ghi và nó hiếm khi được sử dụng cho hoạt động đọc.

iii. Tải mất cân bằng

Với sự trợ giúp của phân chia tỷ lệ MongoDB theo chiều ngang. Người dùng có cơ hội chọn khóa chia sẻ với sự trợ giúp của khóa chia sẻ này, giúp xác định cách dữ liệu trong bộ sưu tập sẽ được phân phối.

Ở đây, dữ liệu đang được chia thành các phạm vi dựa trên khóa phân đoạn và sau đó được phân phối trên nhiều phân đoạn. Ở đây, mảnh vỡ sẽ hoạt động như một chủ nhân với một hoặc nhiều nô lệ với chính nó. Điều này cũng có thể được thực hiện với sự trợ giúp của băm, điều này sẽ dẫn đến việc phân phối dữ liệu đồng đều.

iv. Xử lý nhiều máy chủ

MongoDB có thể chạy trên nhiều máy chủ cùng lúc trong khi xử lý dữ liệu trùng lặp và cũng có thể cân bằng tải dữ liệu ngay cả trong các trường hợp có thể xảy ra lỗi phần cứng.

v. Hệ thống lưu trữ tệp

Cơ chế lưu trữ dữ liệu này trong khi xử lý tải và cũng kiểm tra mọi bản sao của cùng một dữ liệu tại nhiều trang web được gọi là GridFS (Hệ thống tệp lưới) . Chức năng này đang được thêm vào với trình điều khiển MongoDB.

GridFS có thể được truy cập với sự trợ giúp của tiện ích mongofiles hoặc các loại plugin khác nhau. GridFS chia tệp thành các phần nhỏ hơn và lưu trữ từng phần như một tài liệu riêng biệt.

vi. Tổng hợp

Nó có ba cách khác nhau để thực hiện tổng hợp và chúng như sau:

  • Quy trình tổng hợp
  • Chức năng Map-Reduce
  • Các phương pháp tổng hợp mục đích duy nhất.

Trong đường ống tổng hợp, họ sử dụng pipelining để bộ xử lý không phải là trạng thái lý tưởng và mỗi quá trình đều liên quan đến đầu ra của quá trình trước đó trong đường ống.

Map-Reduce có thể được sử dụng để xử lý hàng loạt dữ liệu và hoạt động tổng hợp. Nhưng điều này có thể được xử lý tốt với sự trợ giúp của đường ống tổng hợp.

vii. Hiệu suất cao

Ở đây, các hoạt động đầu vào / đầu ra mất ít thời gian hơn để thực thi so với cơ sở dữ liệu quan hệ. Các truy vấn cũng đang được thực thi với tốc độ nhanh so với cơ sở dữ liệu quan hệ.

Ưu điểm của MongoDB

Dưới đây là một số lợi ích của MongoDB:

  • Rất dễ cài đặt và thiết lập MongoDB.
  • Đây là một cơ sở dữ liệu không có giản đồ.
  • Rất dễ mở rộng quy mô.
  • Vì đây là cơ sở dữ liệu NoSQL nên nó được bảo mật khỏi bất kỳ loại chèn sql nào.
  • Không cần ánh xạ các đối tượng ứng dụng với các đối tượng dữ liệu.
  • Nó có thể được sử dụng như một hệ thống lưu trữ tệp.
  • Nó cũng hỗ trợ tìm kiếm theo regex và các trường.
  • Có sẵn tài liệu dành cho người khuyết tật.

Nhược điểm của MongoDB

Như chúng ta đều biết rằng đồng xu có hai mặt, vì vậy với những ưu điểm tuyệt vời như vậy, có một số nhược điểm với MongoDB. Chúng như sau:

  • Nó không hỗ trợ giao dịch
  • MongoDB không hỗ trợ các phép nối.
  • Hạn chế về RAM.

Các thuật ngữ phổ biến được sử dụng trong MongoDB

Hướng dẫn MongoDB cho người mới bắt đầu này bao gồm hầu hết tất cả các chủ đề, sẽ bổ sung vào việc học cho người mới bắt đầu. Ở đây, chúng ta sẽ thảo luận về một số thuật ngữ được sử dụng nhiều nhất trong MongoDB.

Hướng dẫn MongoDB cho người mới bắt đầu - Thuật ngữ

i. Tài liệu

Đây là đơn vị cơ bản để lưu trữ thông tin ở đây. Nó là một tập hợp có thứ tự của một cặp khóa-giá trị, trong đó đối với mỗi khóa đều tồn tại một giá trị được liên kết với nó.

ví dụ. {“Đầu tiên”:“Hello, world!”}

Đầu tiên là chìa khóa và Xin chào, thế giới là giá trị.

ii. Bộ sưu tập

Nó là một nhóm các tài liệu. Về mặt RDBMS, nó là một bảng chứa các hàng trong đó.

iii. Toán tử ngày

Chúng ta có thể sử dụng nó để xem ngày tháng. Lệnh mà chúng ta sử dụng để viết ngày tháng như sau:

  • Ngày () - trả về ngày hiện tại dưới dạng chuỗi.
  • Ngày Mới () - trả về ngày hiện tại dưới dạng đối tượng dữ liệu.

iv. Xóa lệnh

Chúng tôi có thể sử dụng nó để xóa bất kỳ thứ gì khỏi MongoDB. Một lệnh tương tự như sau:

  • collection.remove () - Xóa một tài liệu phù hợp với một bộ lọc.
  • db.collection.deletemany () - Xóa tất cả các tài liệu được chỉ định phù hợp với bộ lọc.

Phiên bản MongoDB

MongoDB có hai loại phiên bản và chúng như sau:

  • Máy chủ cộng đồng - hoàn toàn miễn phí và chúng tôi có thể sử dụng nó cho Windows, Linux và OS x.
  • Máy chủ doanh nghiệp là phiên bản thương mại của MongoDB, có sẵn với đăng ký MongoDB Enterprise Advanced.

Ở đâu &Ai đang sử dụng MongoDB?

Chúng tôi có thể sử dụng MongoDB cho các dự án quy mô lớn nơi dữ liệu thay đổi động. Tất cả các ứng dụng hiện đại yêu cầu xử lý dữ liệu lớn, phát triển tính năng nhanh, truy cập dễ dàng và nhiều tính năng khác đang được cung cấp bởi MongoDB. Dưới đây là một số khu vực mà MongoDB không phải là phần mềm:

  • Dữ liệu lớn
  • Trung tâm dữ liệu
  • Cơ sở hạ tầng di động và xã hội
  • Quản lý dữ liệu người dùng

Có nhiều tổ chức lớn đang sử dụng cơ sở dữ liệu MongoDB cho các ứng dụng kinh doanh của họ và chúng như sau:

  • Adobe
  • LinkedIn
  • SAP
  • eBay
  • McAfee, v.v.

Phạm vi tương lai của MongoDB

Tương lai của MongoDB phía trước là rất tươi sáng. Chúng ta không nên để MongoDB là một kho dữ liệu nhưng chúng ta nên củng cố nó bằng cách mở rộng các ứng dụng hoạt động vốn có trên nền tảng này để sử dụng thêm.

Nó cũng có thể được sử dụng cho Hadoop và dữ liệu lớn mục đích để xử lý dữ liệu một cách rất nhanh chóng. Điều này sẽ giúp chúng tôi có được thông tin hữu ích trong một khoảng thời gian rất ngắn. Điều này sẽ dẫn đến sự xuất hiện của nhiều ứng dụng hơn giúp con người tiết kiệm thời gian và tiền bạc.

Vì vậy, đây là tất cả về Hướng dẫn MongoDB cho người mới bắt đầu. Hy vọng bạn thích lời giải thích của chúng tôi.

Tóm tắt Hướng dẫn về MongoDB cho người mới bắt đầu

Do đó, trong MongoDB này hướng dẫn cho người mới bắt đầu, chúng tôi đã biết MongoDB được sử dụng để làm gì, một số tính năng liên quan đến nó, ưu và nhược điểm của MongoDB và các phiên bản khác nhau của MongoDB mà mọi người có thể sử dụng. Vì vậy, hãy bắt đầu học MongoDB và tạo một bước khởi đầu cho sự nghiệp của bạn.

Hơn nữa, nếu bạn có bất kỳ thắc mắc hoặc nghi ngờ nào, vui lòng liên hệ với chúng tôi!


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:Làm thế nào để cập nhật nhiều tài liệu với một lệnh duy nhất?

  2. Thiết kế lược đồ cơ sở dữ liệu MongoDB

  3. Chỉ trả về các phần tử tài liệu con đã khớp trong một mảng lồng nhau

  4. GridFS có đủ nhanh và đáng tin cậy để sản xuất không?

  5. MongooseError [MongooseServerSelectionError]:kết nối <monitor> với 52.6.250.237:27017 đã đóng