Xóa thuộc tính đối tượng mongodb
|
Một số định nghĩa trước khi đi sâu về MongoDB. Đây là một tài liệu đa nền tảng, hướng DB với hiệu suất cao, có thể trả lời câu hỏi cho đa dạng các hệ thống và dễ dàng mở rộng quy mô. Tưởng tượng của MongoDB là thông qua bộ sưu tập khái niệm và tài liệu. Vì không tìm được từ tiếng việt hay ho hơn nên tạm thời cho phép mình giữ nguyên các khái niệm tiếng anh của 2 thuật ngữ này
Show
cơ sở dữ liệuCơ sở dữ liệu là vật chứa vật lý cho các bộ sưu tập. Mỗi DB được thiết lập cho riêng nó một danh sách các tệp hệ thống tệp. Một máy chủ MongoDB đơn thường có nhiều DB Bộ sưu tậpBộ sưu tập là một nhóm các tài liệu của MongoDB. Nó tương đương với một bảng trong RDBMS. Một bộ sưu tập tồn tại trong một cơ sở dữ liệu duy nhất. Các bộ sưu tập không được tạo nên một lược đồ. Tài liệu trong bộ sưu tập có thể có các lĩnh vực khác nhau. Thông thường, tất cả các tài liệu trong bộ sưu tập có mục đích tương tự nhau hoặc liên quan đến nhau Tài liệuMột tài liệu là một tập hợp các cặp khóa-giá trị. Tài liệu có lược đồ động. Lược đồ động có nghĩa là các tài liệu trong cùng một bộ sưu tập không nhất thiết phải có cùng một nhóm các trường hoặc cấu trúc giống nhau, và các trường phổ biến trong các tài liệu của bộ sưu tập có thể chứa các loại dữ liệu khác nhau. Bảng dưới đây cho thấy mối quan hệ của các thuật ngữ RDBMS với MongoDB Một số điều cần cân nhắc khi thiết kế lược đồ trong MongoDB
Ví dụ Giả sử là một khách hàng cần DB thiết kế cho blog của anh ta và cân nhắc sự khác biệt giữa lược đồ RDMS và MongoDB. Web will have the following request
Trong lược đồ thiết kế của RDBMS, chúng ta sẽ có như sau về bài đăng, nhận xét và thẻ Trong khi thiết kế lược đồ MongoDB sẽ có một bài đăng bộ sưu tập và có cấu trúc sau Trong khi đó ở MongoDB schema, chúng ta sẽ thiết kế một collection post và có cấu trúc như sau
Để hiển thị 1 bài đăng RDBMS cần phải tham gia 3 bảng trong khi MongoDB chỉ cần lấy ra từ một bộ sưu tập. Nói đến đây nhiều bạn chú ý đừng thần tượng MongoDB quá nhé. Tháng sau mình sẽ viết 1 bài về so sánh hiệu năng với hàng triệu bản ghi giữa MySQL và NoSQL MongoDB - Tạo/xóa cơ sở dữ liệuMột số lệnh liên quan đến Cơ sở dữ liệu
Ví dụ
Kiểm tra đang sử dụng DB nào
hiển thị danh sách các DB trong máy chủ
DB của bạn vừa tạo mới ko có ở đây. bạn phải chèn một tài liệu về nó vào danh sách
Thả DB
MongoDB - Tạo/Xóa bộ sưu tậpDưới đây là cú pháp để tạo một Bộ sưu tập
0 thì yêu cầu phải là một chuỗi. Trong khi đó mục
1 thì chứa khá nhiều thông số về. ________ 82, ________ 83, ________ 84 , ________ 85
2 là một tập hợp các bộ sưu tập có kích thước cố định và tự động viết tiêu đề lên các mục cũ của nó khi chạm đến kích thước tối đa. Nếu bạn cho nó đúng, thì bạn phải điền
4 với lại
5
3 sẽ tự động tạo một chỉ mục trên biến
80 Mặc định giá trị này là sai
và cú pháp để loại bỏ một bộ sưu tập ________số 8Ví dụ nhé 8
Trong MongoDB, bạn không nhất thiết phải tạo bộ sưu tập. This thing will tự động tạo bộ sưu tập cho bạn khi bạn chèn tài liệu 0
Đây là ví dụ drop 1
Data Type
MongoDB - Tài liệuChèn một tài liệu2
Ví dụ 3
Nếu bạn muốn chèn nhiều tài liệu trong một lệnh, bạn cần chọn mảng trong lệnh 81
4
Lệnh tìm kiếm 5
To current results better. You can use more method 82
6
Cách sử dụng tìm AND trong MongoDB 7
Cách sử dụng find OR trong MongoDB 8
Dưới đây là một ví dụ sử dụng cả AND và OR trong MongoDB 9
Next to the command UPDATE0
Giá sử dụng ban đầu của bạn dữ liệu ban đầu là như thế này 1
Sau khi chạy 2
Bạn sẽ nhận được kết quả như sau 3
Bạn có thể cập nhật nhiều tài liệu bằng cách truyền một thông số 'đa' cho nó đúng 4
Lệnh LƯUCú pháp của lệnh này như sau 5
Dưới đây là ví du 6
when you run this phase, data section of documents has ID 83 will be instead of after
7
Lệnh XÓACommand this other menu. Các bạn tự tìm hiểu thêm nhé MongoDB - Phép chiếuTrong mongodb, projection có nghĩa là bạn chỉ cần chọn những dữ liệu cần hthieets thay vì chọn hết mọi dữ liệu của tài liệu. Nó khác find trong find Collection at place is find thì tìm tài liệu tìm kiếm dữ liệu trong bộ sưu tập. Còn lại, khái niệm này sẽ tìm kiếm các trường kết quả trong tài liệu. ví dụ bạn cần hiển thị 3 trường kết quả trong 5 trường của một tài liệu cú pháp của lệnh tìm kiếm này sẽ là 8
Ví dụ dữ liệu hiện tại của bạn như sau 1
Bạn chỉ cần muốn hiển thị từng tiêu đề thôi. Please do as after 0
It's menu must ko MongoDB - Bản ghi giới hạnĐể giới hạn số lượng bản ghi trong MongoDB, bạn sẽ sử dụng phương thức limit(). Limit() sẽ chấp nhận số lượng bản ghi giới hạn thông qua đối số mà bạn truyền vào. Nó sẽ hiển thị số lượng tài liệu mà bạn muốn hiển thị 1
Use ví dụ ở Projection at on them ta có ví dụ sau 2
Ngoài ra, lệnh skip() cho phép bạn bỏ qua 1 giá trị tài liệu 3
MongoDB - Sắp xếp bản ghiĐể sắp xếp các tài liệu trong MongoDB, bạn phải sử dụng sort(). sort() cho pehsp một tài liệu trong chứa các trường theo thứ tự thứ tự. có 2 loại thứ tự, 1 sẽ tương đương với tăng dần và -1 sẽ tương đương với giảm dần 4
MongoDB - Lập chỉ mụcIndex hỗ trợ phân tích một cách hiệu quả các truy vấn. Nếu không có mục duy nhất, MongoDB sẽ phải quét tất cả các tài liệu của bộ sưu tập để chọn ra những tài liệu phù hợp với câu hỏi. Quá trình quét này không hiệu quả và yêu cầu MongoDB xử lý một khối dữ liệu lớn Chỉ mục là những cấu trúc dữ liệu đặc biệt, được sử dụng để chứa một phần nhỏ của các tập tin dữ liệu một cách dễ dàng để quét. Chỉ số lưu trữ giá trị của một trường cụ thể hoặc thiết lập các trường, sắp xếp theo giá trị của các trường này 5
Để có thể đánh số nhiều trường, bạn hãy sử dụng 84
6
At here value 1 and -1 is could show the sorting index. 84 có khá nhiều tham số để bạn có thể tùy chỉnh
MongoDB - Tập hợpTổng hợp xử lý các bản ghi dữ liệu và trả về kết quả tính toán rồi. Tập hợp sẽ nhóm các giá trị từ nhiều tài liệu khác nhau và có thể tiến hành xử lý rất nhiều nhóm dư liệu để trả về một kết quả đơn lẻ. Xử lý này tương đương với đếm(*) trong SQL 7
Ví dụ chúng ta có dữ liệu như thế này 8
Nếu bạn muốn hiển thị có bao nhiêu hướng dẫn được viết bởi mỗi người dùng, bạn sẽ sử dụng 86 như sau
9
Tương ứng với câu truy vấn trên trong SQL sẽ có kết quả là 87. Trong ví dụ ở trên, chúng ta đã nhóm các tài liệu trả trường
88 và sau đó trên mỗi lần xả by_user giá trị tổng được tăng lên
Khái niệm về PIPELINETrong lệnh shell UNIX, đường dẫn có nghĩa là khả năng thực hiện một xử lý trên một vài đầu vào và sử dụng các đầu ra như đầu vào cho lệnh toeeps theo. MongoDB cũng hỗ trợ khái niệm tương tự trong tập hợp khung. Sẽ có một tập hợp các giai đoạn có thể xảy ra và mỗi giai đoạn được đánh dấu bằng một nhóm tài liệu như đầu vào và tính toán ra kết quả của nhóm tài liệu đó. Kết quả này có thể sẽ được chuyển thành đầu vào sử dụng cho giai đoạn tiếp theo Bài viết sau mình sẽ viết tiếp về những vấn đề nâng cao hơn của MongoDB MongoDB - Sao chépBản sao là khái niệm đồng bộ hóa dữ liệu trên nhiều máy chủ. REplication sẽ cung cấp rất nhiều và tăng tính khả dụng của dữ liệu với nhiều bản sao dữ liệu trên nhiều máy chủ DB, các bản sao bảo đảm cho DB khỏi việc mất dữ liệu trên 1 máy chủ đơn lẻ. Bản sao cũng cho phép bạn có thể khôi phục dữ liệu từ ổ cứng bị lỗi và dịch vụ bị lỗi hoặc gặp sự cố. Với rất nhiều bản sao dữ liệu, bạn có thể tinh chỉnh một bản để phục hồi, báo cáo hoặc sao lưu In sao lại cần REPLICATION
REPILCATION hoạt động như thế nào trong MongoDBMongoDB sao lưu bản sao bằng cách sử dụng bản sao tập hợp. Một bản sao chính của tập tin hơp là một nhóm các trường hợp 89 mà có máy chủ cung cấp tập hợp dữ liệu chung. Tất cả các trường hợp khác, thứ 2 sẽ được áp dụng xử lý từ trường hợp chính cho nên nó sẽ có tập hợp dữ liệu chung. Bản sao chỉ có một nút chính duy nhất
MongoDB - Phân mảnhSharding là quá trình xử lý lưu bản ghi dữ liệu trên nhiều máy và đây là cách tiếp cận của MongoDB để có thể đáp ứng các yêu cầu về dữ liệu lớn. Khi kích thước của dữ liệu tăng lên, một máy tính đơn lẻ không thể đủ để lưu dữ liệu cũng như cung cấp các xử lý đọc và ghi thông thường. Sharding giải bài toán này bằng cách phóng to theo chiều ngang. Với sharding, bạn có thể sẽ bổ sung thêm máy để hỗ trợ lưu trữ dữ liệu cũng như các yêu cầu về đọc và viết |
