MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Integracje i usługi dostępne w MongoDB dla chmury

MongoDB to magazyn danych dokumentów, który istnieje od ponad dekady. W ciągu ostatnich kilku lat MongoDB przekształciło się w dojrzały produkt, który oferuje opcje klasy korporacyjnej, takie jak skalowalność, bezpieczeństwo i odporność. Jednak z powodu wymagającego ruchu w chmurze, który nie był wystarczająco dobry.

Zasoby w chmurze, takie jak maszyny wirtualne, kontenery, bezserwerowe zasoby obliczeniowe i bazy danych, są obecnie bardzo poszukiwane. W dzisiejszych czasach wiele rozwiązań programowych można uruchomić w ułamku czasu potrzebnego na wdrożenie na własnym sprzęcie. Zapoczątkował trend i jednocześnie zmienił oczekiwania rynku.

Jednak jakość usługi online nie ogranicza się do samego wdrożenia. Często użytkownicy potrzebują dodatkowych usług, integracji lub dodatkowych funkcji, które pomogą im wykonywać swoją pracę. Oferty w chmurze mogą być nadal bardzo ograniczone i mogą powodować więcej problemów niż to, co można zyskać dzięki automatyzacji i zdalnej infrastrukturze.

Więc jakie jest podejście MongoDB Inc. do tego powszechnego problemu?

Odpowiedzią był MongoDB Atlas, który wprowadza wewnętrzne rozszerzenia jako część większej platformy chmury/automatyzacji. Dzięki dodaniu komponentów innych firm MongoDB rozkwitło. Na dzisiejszym blogu zobaczymy, co mają programista i jak może pomóc Ci zaspokoić Twoje potrzeby w zakresie przetwarzania danych.

Elementy, które dzisiaj zbadamy to...

  • Wykresy MongoDB
  • Ścieg MongoDB
  • Integracja MongoDB Kubernetes z Ops Managerem
  • Migracja do chmury MongoDB
  • Wyszukiwanie pełnotekstowe
  • MongoDB Data Lake (beta)

Wykresy MongoDB

Wykresy MongoDB to jedna z usług dostępnych za pośrednictwem platformy MongoDB Atlas. Po prostu zapewnia łatwy sposób wizualizacji danych znajdujących się w MongoDB. Nie musisz przenosić swoich danych do innego repozytorium ani pisać własnego kodu, ponieważ wykresy MongoDB zostały zaprojektowane do pracy z dokumentami danych i ułatwiają wizualizację danych.

Wykresy MongoDB sprawiają, że przekazywanie danych jest prostym procesem dzięki wbudowanym narzędziom do łatwego udostępniania i współpracy nad wizualizacjami. Wizualizacja danych jest kluczowym elementem zapewniającym jasne zrozumienie danych, podkreślając korelacje między zmiennymi i ułatwiając rozróżnianie wzorców i trendów w zestawie danych.

Oto kilka kluczowych funkcji, których możesz użyć na wykresach.

Agregacja

Szkielet agregacji to proces operacyjny, który manipuluje dokumentami na różnych etapach, przetwarza je zgodnie z podanymi kryteriami, a następnie zwraca obliczone wyniki. Wartości z wielu dokumentów są grupowane razem, na których można wykonać więcej operacji, aby zwrócić pasujące wyniki.

MongoDB Charts udostępnia wbudowaną funkcję agregacji. Agregacja umożliwia przetwarzanie danych z kolekcji za pomocą różnych metryk i wykonywanie obliczeń, takich jak średnia i odchylenie standardowe.

Wykresy zapewniają bezproblemową integrację z MongoDB Atlas. Możesz połączyć wykresy MongoDB z projektami Atlas i szybko rozpocząć wizualizację danych klastra Atlas.

Obsługa danych dokumentów

Wykresy MongoDB natywnie rozumieją zalety modelu danych dokumentu. Zarządza danymi opartymi na dokumentach, w tym obiektami stałymi i tablicami. Korzystanie z zagnieżdżonej struktury danych zapewnia elastyczność w kształtowaniu danych zgodnie z Twoją aplikacją, przy jednoczesnym zachowaniu możliwości wizualizacji.

Wykresy MongoDB zapewniają wbudowaną funkcję agregacji, która umożliwia przetwarzanie danych kolekcji przy użyciu różnych metryk. Jest na tyle intuicyjny, że mogą z niego korzystać osoby niebędące programistami, co pozwala na samoobsługową analizę danych, co czyni go doskonałym narzędziem dla zespołów zajmujących się analizą danych.

MongoDB Stitch

Czy słyszałeś o architekturze bezserwerowej?

Dzięki Bezserwerowemu składasz swoją aplikację z indywidualnych, autonomicznych funkcji. Każda funkcja jest obsługiwana przez dostawcę bezserwerowego i może być skalowana automatycznie wraz ze wzrostem lub spadkiem częstotliwości wywoływania funkcji. Okazuje się to bardzo opłacalnym sposobem płacenia za zasoby obliczeniowe. Płacisz tylko za czasy wywoływania Twoich funkcji, zamiast płacić za to, aby Twoja aplikacja była zawsze włączona i czekała na żądania w tak wielu różnych instancjach.

MongoDB Stitch to inny rodzaj usługi MongoDB, przyjmujący tylko to, co jest najbardziej przydatne w środowiska infrastruktury chmurowej. Jest to platforma bezserwerowa, która umożliwia programistom tworzenie aplikacji bez konieczności konfigurowania infrastruktury serwerowej. Stitch jest tworzony na bazie MongoDB Atlas, automatycznie integrując połączenie z bazą danych. Możesz połączyć się ze Stitch za pomocą pakietów SDK klienta Stitch, które są otwarte dla wielu rozwijanych przez Ciebie platform.

Integracja MongoDB Kubernetes z Ops Managerem

Ops Manager to platforma do zarządzania klastrami MongoDB, którą uruchamiasz we własnej infrastrukturze. Możliwości Ops Managera obejmują monitorowanie, ostrzeganie, odzyskiwanie po awarii, skalowanie, wdrażanie i aktualizowanie zestawów replik i klastrów sharded oraz innych produktów MongoDB. W 2018 roku MongoDB wprowadził integrację beta z Kubernetes.

MongoDB Enterprise Operator jest zgodny z Kubernetes v1.11 i nowszymi. Został przetestowany pod kątem Openshift 3.11. Ten operator wymaga Ops Managera lub Cloud Managera. W tym dokumencie, kiedy odnosimy się do „Ops Manager”, możesz zastąpić „Cloud Manager”. Funkcjonalność jest taka sama.

Instalacja jest dość prosta i wymaga

  • Instalacja operatora MongoDB Enterprise. Można to zrobić za pomocą steru lub pliku YAML.
  • Zbierz właściwości Menedżera operacji.
  • Utwórz i zastosuj plik Kubernetes ConfigMap
  • Utwórz tajny obiekt Kubernetes, który będzie przechowywać klucz Ops Manager API

W tym podstawowym przykładzie użyjemy pliku YAML:

kubectl apply -f crds.yaml
kubectl apply -f https://raw.githubusercontent.com/mongodb/mongodb-enterprise-kubernetes/master/mongodb-enterprise.yaml

Następnym krokiem jest uzyskanie następujących informacji, których będziemy używać w pliku ConfigMap. Wszystko, co można znaleźć w menedżerze operacji.

  • Podstawowy adres URL. Podstawowy URL to adres URL Twojego Ops Managera lub Cloud Managera.
  • Identyfikator projektu. Identyfikator projektu Ops Manager, w którym wdroży Kubernetes Operator.
  • Użytkownik. Istniejąca nazwa użytkownika Ops Managera
  • Publiczny klucz API. Używany przez operatora Kubernetes do łączenia się z punktem końcowym Ops Manager REST API

Po zdobyciu niezbędnych informacji o konfiguracji Ops Managera musimy utworzyć plik Kubernetes ConfigMap dla Kubernetes. W celach ćwiczeniowych możemy nazwać ten plik project.yaml.

apiVersion: v1

kind: ConfigMap

metadata:

  name:<<Name>>

  namespace: mongodb

data:

  projectId:<<Project ID>>

  baseUrl: <<OpsManager URL>>

Kolejnym krokiem jest utworzenie ConfigMap do Kubernetes i tajnego pliku

kubectl apply -f my-project.yaml

kubectl -n mongodb create secret generic <<Name of credentials>> --from-literal="user=<<User>>" --from-literal="publicApiKey=<<public-api-key>>"

Gdy już będziemy mogli wdrożyć nasz pierwszy klaster

apiVersion: mongodb.com/v1

kind: MongoDbReplicaSet

metadata:

  name: <<Replica set name>>

  namespace: mongodb

spec:

  members: 3

  version: 4.2.0



  persistent: false



  project: <<Name value specified in metadata.name of ConfigMap file>>

  credentials: <<Name of credentials secret>>

Więcej szczegółowych instrukcji można znaleźć w dokumentacji MongoDB.

Migracja do chmury MongoDB

Usługa migracji na żywo Atlas umożliwia migrację danych z istniejącego środowiska, niezależnie od tego, czy są to AWS, Azure, GCP, czy lokalnie do MongoDB Atlas, globalnej bazy danych w chmurze dla MongoDB.

Migracja odbywa się za pośrednictwem dedykowanej usługi replikacji. Proces Atlas Live Migration przesyła dane przez serwer aplikacji kontrolowany przez MongoDB.

Migracja na żywo polega na utrzymywaniu synchronizacji klastra w MongoDB Atlas ze źródłową bazą danych. Podczas tego procesu aplikacja może kontynuować odczytywanie i zapisywanie ze źródłowej bazy danych. Ponieważ proces obserwuje nadchodzące zmiany, wszystko zostanie zreplikowane, a migrację można przeprowadzić online. Ty decydujesz, kiedy zmienić ustawienia połączenia aplikacji i dokonać przełączenia. Aby wykonać ten proces mniej podatny, Atlas udostępnia opcję Walidacji, która sprawdza dostęp do białej listy IP, konfigurację SSL, CA itp.

Wyszukiwanie pełnotekstowe

Wyszukiwanie pełnotekstowe to kolejna usługa w chmurze świadczona przez MongoDB i jest dostępna tylko w MongoDB Atlas. Wdrożenia MongoDB innych niż Atlas mogą korzystać z indeksowania tekstu. Wyszukiwanie pełnotekstowe Atlas jest oparte na Open Source Apache Lucene. Lucene to potężna biblioteka wyszukiwania tekstu. Lucene ma niestandardową składnię zapytań do sprawdzania swoich indeksów. To podstawa popularnych systemów, takich jak Elasticsearch czy Apache Solr. Umożliwia tworzenie indeksu do wyszukiwania pełnotekstowego, czyli wyszukiwania, zapisywania i czytania. Jest w pełni zintegrowany z Atlas MongoDB, więc nie ma żadnych dodatkowych systemów ani infrastruktury do udostępniania lub zarządzania.

MongoDB Data Lake (beta)

Ostatnia funkcja chmury MongoDB, o której chcielibyśmy wspomnieć w MongoDB Data Lake. Jest to dość nowa usługa adresująca popularną koncepcję jezior danych. Jezioro danych to ogromna pula nieprzetworzonych danych, której cel nie został jeszcze zdefiniowany. Zamiast umieszczać dane w specjalnie zaprojektowanym magazynie danych, przenosisz je do jeziora danych w oryginalnym formacie. Eliminuje to początkowe koszty pozyskiwania danych, takie jak transformacja. Po umieszczeniu danych w.

Używanie Atlas Data Lake do pozyskiwania danych S3 do klastrów Atlas pozwala na wyszukiwanie danych przechowywanych w zasobnikach AWS S3 za pomocą Mongo Shell, MongoDB Compass i dowolnego sterownika MongoDB.

Istnieją jednak pewne ograniczenia. Następujące funkcje jeszcze nie działają, takie jak monitorowanie Data Lakes za pomocą narzędzi monitorujących Atlas, obsługa pojedynczego konta S3 AWS, biała lista adresów IP i konta AWS oraz ograniczenia grup zabezpieczeń AWS lub brak możliwości dodawania indeksów.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongo:jak sortować według wagi zewnętrznej

  2. Usuń styl kaskadowy w Mongoose

  3. Grupuj według wartości i warunków

  4. Mongo Query z Regexem w węźle JS działającym NA ZMIENNEJ

  5. Wybierz długość ciągu w mongodb