Search

Home

OUTPUT MONGODB

OUTPUT MONGODB

Operator OUTPUT MONGODB umożliwia zapis danych do bazy danych MongoDB. Na wejściu operatora znajduje się strumień danych w postaci magistrali, z którego dane są przekształcane na dokumenty zgodne z modelem kolekcji MongoDB. Operator pozwala na skuteczne zapisanie przetworzonych rekordów do wskazanej kolekcji w bazie MongoDB.

Operator obsługuje różne typy danych i konwersję formatów zgodnie ze strukturą dokumentów MongoDB.

Zastosowania operatora OUTPUT MONGODB:

  • trwałe przechowywanie wyników przetwarzania danych w formie dokumentów,
  • integracja systemu GRAVITY z bazami MongoDB,
  • umożliwienie dalszego wykorzystania danych przez aplikacje korzystające z MongoDB,
  • elastyczne mapowanie bitów magistrali na pola dokumentów w kolekcji.

Operator jest niezbędny wszędzie tam, gdzie dane pochodzące z procesów przetwarzania w GRAVITY mają być trwale zapisane i udostępnione w środowisku NoSQL MongoDB.

Przykład projektu GRAVITY z użyciem operatora OUTPUT MONGODB.

image

WYBÓR I TWORZENIE POŁĄCZENIA MONGODB

Operator OUTPUT MONGODB wymaga połączenia do bazy danych MongoDB. Jeśli masz już utworzone połączenie, możesz je wybrać z połączeń na zakładce Connection, w polu Connection.

image

Po wybraniu połączenia pola definicji połączenia zostaną uzupełnione zgodnie z definicją wybranego połączenia.

image

Możesz zmienić dane połączenia za pomocą przycisku Edit.

image
icon
Pamiętaj, że jeśli połączenie jest już wykorzystane na innym operatorze, to on również będzie działał na zmodyfikowanym połączeniu.

Jeśli nie masz jeszcze zdefiniowanego Twojego połączenia do bazy MongoDB w systemie, możesz je dodać za pomocą przycisku Add.

image

Po uzupełnieniu danych nowego połączenia możesz je przetestować przyciskiem Test connection i zapisać w systemie.

image

Po zapisaniu połączenie będzie dostępne w systemie pod nazwą podaną w polu Name.

icon
Szczegółowy opis tworzenia połączenia znajdziesz tutaj.

KONFIGURACJA OPERATORA

W pierwszym kroku należy zdefiniować strukturę dokumentu, który będzie zapisywany w bazie danych MongoDB.

W tym celu wybierz opcję DEFINE BSON SCHEME na zakładce Document format. Umożliwia ona przejrzyste zbudowanie struktury dokumentu na podstawie magistrali danych.

image

Strukturę formatu tworzysz, przeciągając elementy (drag and drop) z obszaru Busbar do obszaru BSON nodes w wybrane miejsce, a także przenosząc je w przeciwnym kierunku lub korzystając z przycisków nawigacyjnych.

icon
Edytor formatu BSON jest zbliżony do edytora formatu JSON. Zapoznaj się z rozdziałem Edytor formatu JSONEdytor formatu JSON.

Konfigurując obiekt BSON należy zaznaczyć bit magistrali, który jest kluczem głównym w danych wejściowych do operatora OUTPUT MONGODB (w opcji Action for document = Always add new document oznaczenie klucza głównego nie jest wymagane).

Bit magistrali danych będący kluczem głównym musi znajdować się w tworzonym obiekcie BSON. Klikając myszką na bit możesz określić pole Is PK w obszarze Element properties.

image
icon
Klucz główny jest wykorzystywany w trakcie dodawania danych do kolekcji w trybie Action for document = Add new document or update existing.
icon
Istnieje szczególny przypadek dotyczący klucza głównego tworzonego dokumentu, gdy jego nazwa jest taka sama jak pole wykorzystywane przez MongoDB jako unikalny identyfikator dokumentu (_id), przechowujące wartość typu ObjectId. Jeżeli pole dokumentu zostanie nazwane _id, ale nie zostanie oznaczone jako klucz główny, zostanie ono pominięte i nie trafi do zapisywanego dokumentu. Jeżeli natomiast pole _id zostanie oznaczone jako klucz główny i będzie zawierać poprawną wartość typu ObjectId, wartość ta zostanie użyta jako identyfikator dokumentu i serwer MongoDB nie wygeneruje nowego klucza. W przypadku, gdy pole _id zawiera dane niezgodne z typem ObjectId, operacja zakończy się błędem.

Kolejnym krokiem jest określenie miejsca i sposobu zapisu danych do bazy MongoDB (zakładka Properties).

image
  • Collection name → Wybór kolekcji, do której będą zapisywane dokumenty. Możesz dodać nową kolekcję do bazy, wpisując jej nazwę w pole ręcznie.
  • Action for document → Sposób zapisu danych do bazy. Masz do wyboru dwie opcje, i od tego, którą opcję wybierzesz, zależeć sposób postępowania z duplikatem dokumentu:
    • Always add new document
    • icon
      Używaj, gdy chcesz zapisać każdy dokument stworzony przez operator jako nowy dokument w bazie MongoDB.

      Operator zapisuje do bazy docelowej każdy dokument wygenerowany na podstawie konfiguracji formatu BSON. Konfiguracja PK w edytorze BSON nie jest wymagana.

    • Add new document or update existing
    • icon
      Używaj, gdy chcesz modyfikować istniejące dokumenty lub dodawać dokumenty, które nie istnieją jeszcze w bazie MongoDB.

      Operator rozpoznaje po bitach wchodzących w skład klucza głównego tworzonego dokumentu, czy dokument jest już w wybranej kolekcji bazy MongoDB.

      → Jeśli tak, modyfikuje istniejący dokument.

      → Jeśli nie, dodaje nowy dokument do bazy.

  • Action for the same document → Opcja dostępna tylko dla Add new document or update existing. W ten sposób możesz określić, czy modyfikacja już istniejących dokumentów ma być dozwolona - wybierając opcję Pass - czy zablokowana, poprzez wybór opcji Skip.
    • Pass → Operator przekazuje do wykonania operację na bazie wszystkich dokumentów.
    • Skip → Operator przekazuje do wykonania operację zapisu tylko dla dokumentów, które jeszcze nie istnieją w bazie danych (na podstawie pól PK).
  • Bit for result object id → Bit z magistrali, na którą zostanie wyprowadzony wygenerowany przez bazę danych MongoDB klucz ObjectId (pole _id w dokumencie).