Từ 'Đường ống tổng hợp' được đặt ra từ từ 'Tập hợp' và Tập hợp đơn giản có nghĩa là sự hình thành của một số thứ thành một cụm Show
Nói một cách đơn giản, Tập hợp trong MongoDB có thể xử lý dữ liệu trong Bộ sưu tập MongoDB và tạo ra kết quả Bài viết này sẽ cung cấp cho Node. js một lời giải thích chi tiết với các ví dụ về Đường ống tổng hợp trong MongoDB, cùng với các hình minh họa cho thấy Đường ống tổng hợp hoạt động như thế nào
Dòng thời gian tổng hợp là gì?Bạn cần hiểu Aggregation Framework trong MongoDB là gì trước khi nhảy vào Aggregation Pipeline. Aggregation Framework chỉ đơn giản là một framework giống như bất kỳ framework nào khác như React và Vue. js framework cho các ứng dụng JavaScript. Mặc dù, Aggregation Framework có mục đích duy nhất của nó, đó là nó được sử dụng để làm gì.
Nhìn vào hình minh họa dưới đây, cho thấy một đại diện điển hình của Aggregation Pipeline Từ hình minh họa ở trên, bạn có thể thấy rằng Đường ống tổng hợp hoạt động với Bộ sưu tập MongoDB bằng cách chấp nhận một Bộ sưu tập MongoDB duy nhất và chuyển Bộ sưu tập này qua một số hoặc nhiều giai đoạn. Với các giai đoạn này, bạn có thể thực hiện các thao tác trên Bộ sưu tập. Như tên Đường ống ngụ ý, tài liệu từ bộ sưu tập được lấy làm đầu vào từ một giai đoạn và được chuyển sang giai đoạn tiếp theo trong Đường ống dưới dạng đầu vào.
Một trong những chức năng của Đường ống tổng hợp là khả năng xử lý dữ liệu từ Bộ sưu tập MongoDB nhất định và không nhất thiết phải lưu kết quả trong Bộ sưu tập nhưng thực hiện nhiều quy trình/phân tích hơn trên dữ liệu và trả về kết quả mong muốn (Dữ liệu tổng hợp) Các trường hợp sử dụng trong thế giới thực của đường ống tổng hợpCó nhiều lĩnh vực có thể áp dụng Aggregation Pipeline. Những lĩnh vực ứng dụng này là những gì tôi gọi là trường hợp sử dụng của Đường ống tổng hợp. Khu vực ứng dụng hoặc trường hợp sử dụng của Đường ống tổng hợp nằm trong ứng dụng trong thế giới thực liên quan đến Giao dịch của người dùng.
Chẳng hạn, ứng dụng này được xây dựng với cơ sở dữ liệu và giả sử MongoDB là cơ sở dữ liệu được sử dụng để lưu trữ dữ liệu cho ứng dụng này. MongoDB xử lý các Bộ sưu tập và vì vậy đối với ứng dụng này, chúng tôi có hai Bộ sưu tập. Một Bộ sưu tập dành cho Người dùng và Bộ sưu tập thứ hai dành cho các Giao dịch được Người dùng thực hiện trên ứng dụng.
Tiếp theo, bạn có Bộ sưu tập người dùng trong cơ sở dữ liệu của ứng dụng, đây là một Bộ sưu tập độc lập. Sau đó, bạn có Bộ sưu tập giao dịch là Bộ sưu tập phụ thuộc vào Bộ sưu tập người dùng Nếu bạn có chế độ xem trên giao diện người dùng của ứng dụng sẽ hiển thị Giao dịch cũng như Người dùng đã thực hiện Giao dịch, với thông tin của Người dùng chứ không chỉ ID của Người dùng, bạn sẽ cần có thể kéo Giao dịch. Sau đó, các Giao dịch đó sẽ lấy thông tin của Người dùng
Đầu tiên, bạn sẽ tạo một Đường ống tổng hợp kéo Giao dịch. Sau đó, Đường ống tổng hợp được tạo sẽ kéo Người dùng đã thực hiện các Giao dịch đó trong khi nối thêm thông tin chi tiết của Người dùng vào Bộ sưu tập giao dịch
Hãy thực tế hơn và viết một số mã Cú pháp của Aggregation PipelineTrong phần này, bạn sẽ học cách làm việc với Aggregation Pipeline; . Để làm theo hướng dẫn này, hãy đảm bảo bạn có những thứ sau
Hãy bắt đầu nào
Thiết lập cấu trúc tệpHãy bắt đầu với việc thiết lập thư mục làm việc cho ứng dụng này
Cửa sổ sau sẽ được mở ra như hình bên dưới
Sau khi chạy lệnh này, bạn sẽ được nhắc nhập thông tin cơ bản cho ứng dụng của mình, như thế này Tại dấu nhắc, nhập 5 làm tên ứng dụng của bạn. Sau đó, nhấp vào nhập cho các lời nhắc khác, nhưng khi bạn được nhắc nhập tên tác giả, hãy nhập tên của bạn với tư cách là chủ sở hữu của ứng dụng. Sau đó, nhấp vào 'Enter' và gói của bạn. tệp json sẽ được tạo như sau
Sau đó, bạn có thể kiểm tra việc sử dụng các gói này bằng cách nhấp vào các liên kết này. express, cầy mangut, morgan, trình phân tích cú pháp cơ thể
Khi cửa sổ đó được mở, hãy nhấp vào phương thức kết nối 7, cửa sổ sau sẽ được mởĐảm bảo rằng bạn đã cài đặt MongoDB Compass, sau đó chọn tùy chọn 8 màu xanh lá cây được đánh dấu. Trong 9 nơi bạn có thể thấy 0, bên dưới bạn sẽ thấy chuỗi kết nối cơ sở dữ liệu của mình. Sao chép chuỗi kết nối đó vào khay nhớ tạm của bạn, vì bạn sẽ sử dụng nó trong ứng dụng của mình.
Dán chuỗi kết nối và đảm bảo bạn đặt đúng mật khẩu mà bạn có thể đặt tại đây và nhấp vào nút màu xanh lá cây 2. Cửa sổ này sẽ được mở hiển thị danh sách Cơ sở dữ liệu của bạn
7Replacing ‘ 8
9
0Khi bạn chạy lệnh, bạn sẽ thấy đầu ra sau trong thiết bị đầu cuối của mình
0Sau khi cài đặt, hãy kiểm tra gói của bạn. json để xác nhận rằng mô-đun gật đầu đã được cài đặt.
1Xem ảnh chụp màn hình sau của tập lệnh bắt đầu trong gói. tệp json bên dưới
Bây giờ bạn đã thiết lập thành công ứng dụng của mình để chạy trên PORT 3000 và đã kết nối ứng dụng của bạn với cơ sở dữ liệu của bạn thông qua mongoose với MongoDB Compass, chúng ta có thể tiếp tục viết một số mã để ứng dụng hoạt động đầy đủ Thiết lập Bộ điều khiển, Mô hình và Tuyến đường cho Ứng dụngỞ đây, chúng tôi sẽ xây dựng các tuyến đường, bộ điều khiển và mô hình cho ứng dụng với các bước sau
2'Dữ liệu của bạn. js sẽ trông như thế này trong trình chỉnh sửa mã của bạn
3'Bộ điều khiển người dùng của bạn. js sẽ trông giống như mã trong các ảnh chụp màn hình bên dưới trong trình chỉnh sửa mã của bạn
4'người dùng của bạn. js sẽ trông như thế này trong trình chỉnh sửa mã của bạn
5Tuy nhiên, trong ‘máy chủ. js’, sau dòng mã lắng nghe PORT mà ứng dụng đang chạy, hãy nhập mã sau 6Máy chủ của bạn. js sẽ trông giống như mã trong các ảnh chụp màn hình bên dưới trong trình chỉnh sửa mã của bạn Bây giờ, hãy chạy ứng dụng của bạn và đảm bảo rằng ứng dụng của bạn được kết nối với cơ sở dữ liệu bằng cách nhập lệnh sau vào thiết bị đầu cuối của bạn 7Bạn sẽ thấy đầu ra sau trong thiết bị đầu cuối của mình Kiểm tra các tuyến và điểm cuối của ứng dụngỞ đây, chúng tôi sẽ sử dụng công cụ postman để kiểm tra ứng dụng. Để đảm bảo rằng các tuyến đường và điểm cuối hoạt động, hãy làm như sau
8
9
Lặp lại quy trình và thêm nhiều Người dùng có tên khác như sau _______20____21____22____23
Hãy kiểm tra một điểm cuối khác để nhận tất cả người dùng trong ứng dụng đã được lưu vào cơ sở dữ liệu bằng cách tạo một yêu cầu khác trong bộ sưu tập 'Hướng dẫn tổng hợp'.
4Bạn sẽ nhận được phản hồi sau Bây giờ chúng ta đã xây dựng thành công ứng dụng đơn giản của mình với nodejs, express và MongoDB, tôi sẽ sử dụng ứng dụng này để chứng minh cách Đường ống tổng hợp hoạt động trong MongoDB Sử dụng ứng dụng để minh họa cách thức hoạt động của đường ống tổng hợpTrong cơ sở dữ liệu, chúng tôi muốn truy cập bộ sưu tập 'người dùng' và tổng hợp dữ liệu. Chúng tôi sẽ sử dụng các giai đoạn trong quy trình tổng hợp, chúng tôi sẽ khớp tất cả các tài liệu trong bộ sưu tập 'người dùng' với 'chỉ định' được đặt thành 'Kỹ sư cơ khí' làm giai đoạn đầu tiên.
Vì vậy, chúng tôi đang tạo một quy trình tổng hợp sử dụng các giai đoạn sau
5Tại đây, bạn đang tạo một chức năng mới trong tệp trình điều khiển của mình để sử dụng để xử lý tuyến đường cho dữ liệu Tổng hợp sẽ được tạo.
6Đường ống tổng hợp là một tính năng của MongoDB nhưng cầy mangut cho phép chúng tôi truy cập vào nó.
3. Để xác định các giai đoạn này, chúng ta sẽ chuyển vào một mảng các giai đoạn trong phương thức tổng hợp () như sau 7Trong Quy trình tổng hợp của chúng tôi, chúng tôi đã sử dụng các giai đoạn $match, $sort và $project như sau
Tài liệu trong Bộ sưu tập MongoDB của bạn sẽ đi qua các Giai đoạn tổng hợp này theo trình tự đã xác định và mỗi giai đoạn là một đối tượng chứa tên của Giai đoạn. Có nhiều giai đoạn tổng hợp bạn có thể chọn. Kiểm tra Tài liệu MongoDB để xem Toán tử truy vấn mà MongoDB đã cung cấp cho bạn sử dụng. Tài liệu là một cách dễ dàng cho bất kỳ giai đoạn nào bạn quyết định sử dụng để thao tác với bất kỳ dữ liệu nào trong ứng dụng của mình 4. Tiếp theo, bạn cần trả về Dữ liệu tổng hợp bằng cách sử dụng phương thức 9 để xử lý lời hứa và phản hồi bằng Dữ liệu tổng hợp JSON (Ký hiệu đối tượng JavaScript). Sau đó, chúng ta cũng cần xử lý các lỗi bằng cách sử dụng phương thức 0 phản hồi bằng thông báo JSON như sau 8Hãy xem mã hoàn chỉnh trong Đường ống tổng hợp tại đây 95. Bây giờ bạn đã có hàm Dữ liệu tổng hợp trong tệp Trình điều khiển của mình, bạn cần thêm hàm 1 vào danh sách các hàm bạn đang xuất từ 'UserController' này. js' như sau 06. Bạn cần tạo một tuyến đường sẽ xử lý chức năng Bộ điều khiển này. Vì vậy, hãy mở ‘Người dùng của bạn. js’ và thêm dòng mã sau 27. Tiếp theo, mở terminal của bạn và gõ lệnh sau để chạy ứng dụng 0Khi bạn chạy lệnh này, hãy đảm bảo rằng bạn có thể thấy máy chủ đang chạy trên PORT 3000 và Kết nối cơ sở dữ liệu được thiết lập như sau Kiểm tra đường ống tổng hợp của chúng tôi với PostmanBây giờ bạn đã thiết lập và chạy ứng dụng của mình, điều tiếp theo bạn cần làm là kiểm tra nó với Postman như sau
2
Phần kết luậnĐường ống tổng hợp là một công cụ tuyệt vời để xử lý và phân tích dữ liệu trong Bộ sưu tập MongoDB và với phần tham chiếu và tài liệu dễ truy cập để làm việc với các Giai đoạn đường ống tổng hợp và Toán tử đường ống tổng hợp trong ứng dụng của bạn.
Đây là những gì bạn nên đọc tiếp theo nếu bạn quan tâm đến việc mở rộng kiến thức của mình
Chúng tôi đang tuyển dụngNếu bạn đam mê Node. js, hãy đến và tham gia cùng chúng tôi tại Adeva. Chúng tôi luôn tìm kiếm những tài năng mới để tham gia vào mạng lưới của chúng tôi Các giai đoạn tổng hợp MongoDB là gì?Trong MongoDB, phương thức tổng hợp thực hiện các giai đoạn hoạt động theo trình tự . Trong đó, dữ liệu trải qua nhiều giai đoạn và trả về kết quả đầu ra. Có nhiều loại giai đoạn khác nhau trong MongoDB được gọi là giai đoạn đường ống tổng hợp. Một đường ống là một chuỗi các hoạt động và giai đoạn tổng hợp.
Các loại tập hợp trong MongoDB là gì?$match. Nó được sử dụng để lọc các tài liệu có thể làm giảm số lượng tài liệu được cung cấp làm đầu vào cho giai đoạn tiếp theo. dự án $. Nó được sử dụng để chọn một số trường cụ thể từ một bộ sưu tập. nhóm $. Nó được sử dụng để nhóm các tài liệu dựa trên một số giá trị. $sắp xếp. Nó được sử dụng để sắp xếp tài liệu đang sắp xếp lại chúng
Một đường ống tổng hợp là gì Một số giai đoạn được sử dụng trong đó là gì?Một quy trình tổng hợp bao gồm một hoặc nhiều giai đoạn xử lý tài liệu . Mỗi khâu thực hiện một thao tác trên chứng từ đầu vào. Ví dụ: một giai đoạn có thể lọc tài liệu, nhóm tài liệu và tính toán giá trị. Các tài liệu được xuất ra từ một giai đoạn được chuyển sang giai đoạn tiếp theo.
Phương pháp nào sau đây được hỗ trợ trong MongoDB để thực hiện các thao tác tổng hợp?Tuy nhiên, trong cơ sở dữ liệu hướng tài liệu như MongoDB, cơ sở dữ liệu sẽ lấy dữ liệu từ nhiều tài liệu trong cùng một bộ sưu tập. MongoDB cho phép bạn thực hiện các thao tác tổng hợp thông qua cơ chế có tên là đường dẫn tổng hợp . |