MongoDB

MongoDB sa stal populárnym na akademickej i profesionálnej úrovni. Použitie tohto databázového systému umožňuje veľmi jednoduchým spôsobom ukladať neštruktúrované údaje. Všeobecne musí byť tento typ databázy umiestnený v ľahko prístupnom prostredí.
Celý článok nájdete na MongoDB ...

Zobraziť filter
Hostiteľské filtre
A2 Themes & Host Me Filter

Operačný systém

Miesto na disku

Pamäť RAM

Typ disku

Jadrá CPU

Triediť

Trust Pilot Dream VPS
Skóre - 8.6
Dream VPS Logo
Dream VPS

Vysnívané VPS

STARTER
$3.75 /Mesačne

Recenzie 7


Umiestnenia servera


Dream VPS Servers in Hong KongHongkong Dream VPS Servers in Santa Clara Dream VPS Servers in New YorkSpojené štáty Dream VPS Servers in LondonSpojene kralovstvo Dream VPS Servers in AmsterdamHolandsko Dream VPS Servers in FrankfurtNemecko Dream VPS Servers in IsraelIzrael
Porovnaj
Skóre - 0
Heroku Logo
Heroku

Heroku

Hobby
$7 /Mesačne


Umiestnenia servera


Heroku Servers in United StatesSpojené štáty
Porovnaj
Skóre - 0
Infra Networking Logo
Infra Networking

Infra siete

ALFA
$4.19 /Mesačne


Umiestnenia servera


Infra Networking Servers in JakartaIndonézia Infra Networking Servers in DallasSpojené štáty Infra Networking Servers in DublinÍrsko Infra Networking Servers in LondonSpojene kralovstvo Infra Networking Servers in Frankfurt am MainNemecko Infra Networking Servers in SingaporeSingapur Infra Networking Servers in AmsterdamHolandsko Infra Networking Servers in UruguayUruguaj
Porovnaj

Hosting databáz MongoDB

 

MongoDB

 

V posledných rokoch sa MongoDB stal populárnym na akademickej i profesionálnej úrovni. Použitie tohto databázového systému umožňuje veľmi jednoduchým spôsobom ukladať neštruktúrované údaje.

 

Všeobecne musí byť tento typ databázy umiestnený v ľahko prístupnom prostredí, pretože aplikácie, ktoré používajú túto databázu, to musia spravidla robiť vo fyzicky vzdialených lokalitách. Vzhľadom na túto potrebu tento článok predstavuje spôsob ukladania a vykonávania základných operácií v MongoDB pomocou webhostingovej služby. Diskusia o tejto téme je užitočná pre tých, ktorí chcú vedieť, ako vytvárať a spravovať databázy MongoDB v cloude. Aby bolo možné ponúknuť riešenia pre správu tohto typu databázy, v článku sú uvedené aj grafické nástroje na jej správu. V celom článku sa bude klásť dôraz na technológie pre vývoj webových aplikácií pomocou programovacieho jazyka Java.

 

Na prístup do databázy bude vyvinutá webová služba, ktorá bude hostená na bezplatnom hostiteľovi. Na vyskúšanie služby bude vyvinutá konzolová aplikácia v jazyku Java. Nakoniec vám článok ukáže, ako testovať a monitorovať webovú službu a databázu MongoDB.

 

Pojem NoSQL znamená nielen SQL, teda nielen SQL. Spočiatku boli navrhnuté iné významy, ale komunita si ich najviac osvojila. Na uľahčenie ukladania a spracovania dát vo veľkých objemoch sa vytvorili databázy NoSQL, ktoré ponúkajú štruktúru umožňujúcu veľkú škálovateľnosť.

 

V súčasnosti existuje okolo 150 rôznych databáz NoSQL. MongoDB si získava nových sledovateľov vďaka svojej rozsiahlej dokumentácii a zapojenej komunite.

 

Hnutie MongoDB sa začalo začiatkom roku 2009 a od tej doby boli do MongoDB pridané ďalšie funkcie, ako napríklad podpora bez schémy, ľahká replikácia, jednoduché API, ovládače pre rôzne jazyky, manipulačné nástroje, aktualizácie funkcií a oveľa viac.

 

Skupinu databáz NoSQL tvoria aplikačne orientované databázy, ktoré spravujú veľké objemy dát, využívajú funkcie škálovateľnosti, protokol REST, MapReduce (čítaj BOX 1) a ďalšie vysoko výkonné funkcie.

 

RÁMČEK 1: MapReduce

 

MapReduce je programovací model zavedený spoločnosťou Google s cieľom podpory paralelného spracovania súborov údajov rozložených na niekoľkých počítačoch (klastroch). Fungovanie tohto modelu je založené na dvoch vlastnostiach: mapovať a zmenšovať. Za účelom vykonania konsolidácie vyhľadávania, ktorej dáta sú zoskupené, žiadateľ odošle svoje vyhľadávanie na niekoľko počítačov súčasne.

 

V tomto okamihu sa mapovanie (mapa) uskutoční medzi žiadateľom a klastrom, potom sa dáta vyplývajúce z vyhľadávania zoskupia (zmenšia), čím sa generuje výsledok vyhľadávania, ktorý sa má doručiť žiadateľovi.

 

Skratka REST znamená Reprezentačný prenos stavu. Je to technika široko používaná v systémoch manipulácie s distribuovanými dátami (CRUD), ktorá využíva iba volania HTTP. Tento typ hovoru zjednodušuje programovanie, abstrahuje úlohy na nízkej úrovni od programátora a umožňuje implementáciu rôznych rutín do webových služieb. Uskutočnené hovory sú v zásade zamerané na vkladanie údajov (POST), dopytovanie údajov (GET), aktualizáciu údajov (PUT) a mazanie údajov (DELETE).

 

MongoDB

 

Prvá vec, na ktorú treba myslieť, keď začínate s NoSQL, je porovnávacia. Pretože sme nemohli nehovoriť, prejdeme k porovnaniu hlavných pojmov vo vzťahu k relačným bankám.

V MongoDB môže byť každý dokument úplne odlišný od iného dokumentu v rovnakej kolekcii, čo v relačnom modeli neplatí. Údaje sa zvyčajne zapisujú vo formáte BSON (Binary JSON).

 

Ak chcete postupovať podľa krokov uvedených v nasledujúcej časti, nie je potrebné mať v miestnom počítači nainštalovanú aplikáciu MongoDB.

 

Inštalácia na lokálny počítač slúži iba na rýchlejšie a jednoduchšie testovanie. Ak chce čitateľ nainštalovať MongoDB na svoj počítač a manipulovať s ním, tu je niekoľko úvodných príkazov, ktoré môžu byť užitočné. Ak chcete spustiť službu (démon), musíte zvážiť nasledujúci príkaz: / mongo. Pri spustenej službe môžeme spustiť príkazový tlmočník: / mongo, základné príkazy pre výpis databáz sú: show DBS alebo show databases. Ak chcete zvoliť použitie databázy (ak neexistuje, vytvorí sa databáza sqlMagazine): použite sqlMagazine, je dôležité si uvedomiť skutočnosť, že veľké a malé písmená sa líšia, buďte pri tomto detaile opatrní.

 

Nástroje MongoDB

 

Po toľkých príkazoch už máme základňu na posun vpred. Znalosť príkazov je pre vývoj aplikácií nevyhnutná, pre správu však existujú aj ďalšie grafické nástroje, ktoré sú dobrými spojencami. Napríklad obrázky 1 a 2 boli zachytené zo softvéru MongoHub.

 

Na prístup k MongoDB existujú ďalšie nástroje, napríklad RockMongo a MongoVUE. Nástroj RockMongo potrebuje okrem aktivácie modulu MongoDB v konfigurácii PHP aj ďalšie služby (PHP a Apache). Tento nástroj je v OpenShifte prijatý ako štandard, takže je dobré mať o ňom vedomosti.

 

Nástroj MongoVUE je iba pre počítače s operačnými systémami Microsoft Windows. Ponúka dobré vlastnosti.

 

Pre používateľov operačného systému Apple (Mac OS 10.6.x alebo novší) existuje nástroj MongoHub. Aj keď pre tento nástroj existuje konkrétna webová stránka.

 

Vytvorenie účtu na hosťovanie aplikácie

 

Cieľom je sprístupniť databázu na webe a umožniť k nej prístup pomocou aplikácie, ktorá je tiež na webe, alebo pomocou aplikácie nainštalovanej na inom počítači. Na hosťovanie databázy bola vybraná služba OpenShift. V tomto môže užívateľ vytvoriť až tri aplikácie a v každej z nich je možné vytvoriť niekoľko služieb, okrem iných napríklad aplikácie Java, PHP, Phyton, Ruby.

 

Ak chcete na rovnakom účte vytvoriť viac aplikácií alebo si dokonca najať ďalšie služby a zdroje škálovateľnosti, musíte si vytvoriť platený účet. OpenShift ponúka platformu ako službu identifikovanú pod skratkou PaaS. Prejdime si potrebné kroky na vytvorenie účtu.

 

Spočiatku musí používateľ prejsť na adresu portu OpenShift: a zvoliť túto možnosť. Zobrazí sa registračná obrazovka, ako je to znázornené na obrázku.

 

mongodb

 

Stačí zadať údaje a kliknúť na & ldquo; Zaregistrovať sa & rdquo ;. Bude odoslaný e-mail s potvrdením registrácie. Je potrebné kliknúť na odkaz v tomto e-maile, aby ste aktivovali registráciu, a vytvoriť aplikáciu.

 

Pri prístupe k vášmu účtu OpenShift je možné vytvoriť požadované služby, taktiež sa ponúkajú pokyny pre prístup k aplikáciám pomocou príkazového riadku, použite JBossDeveloper Studio IDE a množstvo ďalších zdrojov. Aby sme to krok za krokom uľahčili, aplikáciu vytvoríme automaticky po jej lokálnom vývoji.

Niektoré nastavenia je potrebné vykonať v našom účte OpenShift. Po prístupe k účtu musíme prejsť do & ldquo; Nastavenia & rdquo; časť, ako je to znázornené na obrázku.

 

mongodb

 

V textovom poli & ldquo; Názov domény & rdquo; musíme napísať názov požadovanej domény, v tomto teste napíšeme & ldquo; SQL magazine & rdquo ;. Tento názov (maximálny počet znakov je 16) si môžete slobodne zvoliť, je však dôležitý, pretože sa použije v našom projekte Java. Potom kliknite na & ldquo; Uložiť & rdquo; možnosť.

 

Po dokončení tohto kroku sa môžeme vrátiť k & ldquo; Aplikáciám & rdquo; kartu a kliknite na & ldquo; Vytvorte teraz svoju prvú aplikáciu & rdquo; možnosť. Zobrazí sa zoznam s rôznymi službami, ktoré môžeme vytvoriť. Vyberme & ldquo; JBoss Application Server 7 & rdquo ;. Potom sa zobrazí okno pre výber názvu aplikácie

 

Tento názov si tiež môžeme slobodne zvoliť, malo by si ho však ľahko zapamätať, pretože ho budeme hneď potrebovať. Pre tento test napíšeme & ldquo; MongoDB & rdquo ;.

 

Ďalším krokom je kliknutie na položku & ldquo; Vytvoriť aplikáciu & rdquo ;. Tento proces môže trvať niekoľko sekúnd alebo dokonca minút, počkajte, kým sa proces nedokončí. Teraz sa môžeme vrátiť k & ldquo; Aplikáciám & rdquo; kartu a kliknite na vytvorenú aplikáciu.

 

V tejto chvíli pridáme do našej aplikácie MongoDB. Stačí kliknúť na aplikáciu, v tomto príklade & ldquo; mongodb & rdquo; a potom kliknite na položku & ldquo; Pridať MongoDB 2.4 & rdquo;. Ak otvoríte okno s informáciami a pokynmi, odkaz & ldquo; Pokračovať na stránku s prehľadom aplikácie & rdquo; sa zobrazí, na ktoré je potrebné kliknúť, potom bude možné kliknúť na & ldquo; Pridať MongoDB 2.4 & rdquo ;.

 

Potom kliknite na & ldquo; Pridať kazetu & rdquo ;. Tento proces môže trvať aj niekoľko sekúnd. Potom sa zobrazí obrazovka s dôležitými informáciami pre prístup do databázy. Je dôležité tieto informácie zaznamenať, pretože sa použijú v ďalších krokoch. Tieto informácie sú používateľské meno, heslo a názov databázy.

 

V tejto chvíli už máme k dispozícii server (JBoss Application Server) a databázu NoSQL (MongoDB). Teraz stačí vytvoriť webovú službu na prístup k tejto banke a projekt na prístup k tejto webovej službe.

 

Vývoj aplikácií

 

V zásade budeme mať dve aplikácie a databázu. Prvá aplikácia bude zodpovedná za zadávanie žiadostí o databázu. Táto aplikácia bude slúžiť ako veľmi jednoduchý príklad iba na otestovanie fungovania webovej služby. Druhá aplikácia (webová služba) bude zodpovedná za prijímanie žiadostí od prvej a prístup k databáze.

 

Poďme k prvej aplikácii. Jeho predpokladmi sú Eclipse Kepler a dve knižnice API (Application Program Interface) Jersey (dres-klient a dres-jadro). Aby sme uľahčili a zjednodušili postup, ktorý je tu popísaný, vytvoríme aplikáciu Java v aplikácii Eclipse Kepler.

 

Obrázky na ilustráciu jednotlivých krokov boli získané pomocou operačného systému Mac OS 10.9.3, čitateľ však môže používať systém Microsoft Windows alebo dokonca Linux.

 

V rámci prístupu Eclipse: Súbor, Nové, Projekt. V ďalšom okne vyberte & ldquo; Java projekt & rdquo; a kliknite na tlačidlo & ldquo; Ďalej & rdquo ;. Potom zadajte názov projektu a vyberte možnosť & ldquo; Dokončiť & rdquo ;.

Teraz musíme v projekte vytvoriť triedu. Stačí kliknúť pravým tlačidlom myši na & ldquo; src & rdquo ;, & ldquo; Nová & rdquo ;, & ldquo; trieda & rdquo ;.

 

Na ďalšej obrazovke musíme napísať názov triedy a skontrolovať možnosť & ldquo; Vytvoriť hlavnú metódu & rdquo; & ldquo; public static void main (String [] args) & rdquo ;, a kliknite na & ldquo; Dokončiť & rdquo ;,

Cieľom tohto projektu Java je zaznamenávať informácie do databázy MongoDB, ktorá bude hostená na webe. Použitý typ hostenia umožňuje externý prístup k databáze, to znamená, že aplikácie odkiaľkoľvek majú prístup k databázovému serveru, je však potrebné presmerovať porty na lokálnom počítači.

 

Pretože to môže byť veľmi zložité, čo sa týka počítačov mimo našu kontrolu alebo dokonca počítačov, ktoré musia naďalej pristupovať k miestnym portom, alebo dokonca, pokiaľ ide o mobilné zariadenia, presmerovanie portov nie je najlepší spôsob. Týmto spôsobom bude náš projekt Java pristupovať k databáze prostredníctvom webovej služby.

 

Pred zadaním kódov pridajme dve knižnice na prácu s webovými službami. Dve knižnice, ktoré budeme používať, sú z rozhrania Jersey 1.18 API. Ak ich chcete pridať do projektu, po stiahnutí ich jednoducho skopírujte do priečinka projektu, kliknite pravým tlačidlom myši na názov projektu a vyberte vlastnosti.

 

V okne „Vlastnosti“ vyberte možnosť „Cesta Java Build“ a potom „Knižnice“. Potom kliknite na položku & ldquo; Pridať externú nádobu & rdquo ;.

 

Teraz, keď sme do nášho projektu pridali Jersey API, môžeme trochu kódovať.

 

V tomto počiatočnom útržku kódu práve vytvárame klienta URL. V prvých riadkoch (3 a 4) máme import, aby sme mohli použiť metódy & ldquo; Jersey & rdquo; knižnica. V riadkoch 9 a 10 vytvárame objekt na pripojenie k adrese URL webovej služby. Upozorňujeme, že webová adresa webovej služby je tvorená celým menom nášho účtu OpenShift spolu so slovom rest and post, čo naznačuje, že webová služba má umiestnenie metód, ktoré sa nazývajú rest a metóda zvaná post. Ďalej vytvorme niekoľko informácií na odoslanie do databázy

 

Účelom útržku kódu uvedeného v tomto zozname je zhromaždiť reťazec znakov vyhovujúcich štandardu JSON, ktoré sa majú odoslať do databázy MongoDB. Nakoniec bude súbor odoslaný na server. Teraz poďme k poslednému fragmentu kódu projektu Java.

 

Tento útržok kódu bude vyžadovať ďalší import pre náš projekt.

 

Odosiela sa do cloudu

 

Teraz môžeme poslať našu webovú službu na OpenShift. V Eclipse zvoľte perspektívu JBoss a kliknite na OpenShift Application.

 

Budú požadované identifikačné údaje účtu (e-mail a heslo) definované v registrácii. Stačí zadať údaje o svojom účte a kliknúť na tlačidlo „Ďalej“. Pri prvom pripojení sa zobrazí výzva na vytvorenie kľúčov SSH.

 

musíme zaškrtnúť možnosť & ldquo; Použiť existujúcu aplikáciu & rdquo ;. Zaškrtnutím tejto možnosti sa zobrazí obrazovka s výberom predtým vytvorenej aplikácie. Vyberte aplikáciu a kliknite na tlačidlo „Ďalej“.

 

Na ďalšej obrazovke sa zobrazí otázka, či chceme vytvoriť projekt na odoslanie na náš server alebo použiť existujúci projekt. Použijeme existujúci projekt, v tomto prípade našu novo vyvinutú webovú službu. Za týmto účelom zrušte výber možnosti & ldquo; Vytvoriť nový projekt & rdquo ;, kliknite na & ldquo; Preskúmať & rdquo; a vyberte si projekt jboss-as-helloworld-rs.

 

Dokončiť proces. Zobrazí sa výzva na potvrdenie použitia kľúča SSH, kliknutia na tlačidlo & ldquo; Áno & rdquo ;. Opäť & ldquo; Áno & rdquo; na potvrdenie odoslania webovej služby. Po tomto kroku môžeme zverejniť našu webovú službu. Ak to chcete urobiť, choďte na Eclipse a otvorte kartu „Servery“, kliknutím rozbaľte kartu servera, v tomto prípade „mongodb at OpenShift“. Zobrazí sa názov našej webovej služby jboss-as-helloworld-rs, kliknite na ňu pravým tlačidlom myši a vyberte možnosť & ldquo; Úplné zverejnenie & rdquo; alebo & ldquo; Full Publish & rdquo ;.

 

Skontrolujte, či je aplikácia už zabudovaná na serveri OpenShift. Ak to chcete urobiť, prejdite do prehľadávača a v aplikácii & ldquo; Aplikácie & rdquo; otvorte svoj účet OpenShift; kartu a kliknite na aplikáciu. V príklade v tomto tutoriáli & ldquo; mongodb & rdquo; potvrďte, že už bol zostavený.

 

Ak to trvá príliš dlho (viac ako tri minúty), bude možno potrebné aplikáciu reštartovať. Použite na to príslušnú ikonu napravo od obrazovky.

 

Záverečné testy

 

Teraz, keď máme k dispozícii server s MongoDB, projekt na odosielanie údajov na server a webovú službu na ich spojenie, môžeme začať testovať.

 

Dôležitým spojencom na kontrolu fungovania je Rock Mongo. Dá sa to aktivovať v OpenShifte veľmi jednoducho, stačí kliknúť na & ldquo; Pridať Rock Mongo 1.1 & rdquo; v & ldquo; Aplikácia s & rdquo; tab.

 

Ďalšou dôležitou funkciou sú súbory & ldquo; Tail & rdquo ;, ktoré je možné aktivovať na konzole. Prejdite na konzolu Eclipse a kliknite na OpenShift Explorer, rozbaľte všetky možnosti, kým sa nedostanete k aplikácii, v našom prípade & ldquo; mongodb & rdquo ;. Kliknite pravým tlačidlom myši a vyberte & ldquo; Súbory na chvoste & rdquo; možnosť.