MongoDB

MongoDB se stal populárním jak na akademické půdě, tak i profesionálně. Použití tohoto databázového systému umožňuje velmi jednoduchým způsobem ukládat nestrukturovaná data. Obecně musí být tento typ databáze umístěn ve snadno přístupném prostředí.
Celý článek na MongoDB ...

Zobrazit filtr
Hostitelské filtry
Host Me Host Filter

Operační systém

Místo na disku

Paměť RAM

Typ disku

CPU jádra

Třídit

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

Dream VPS

STARTER
$3.75 /Měsíční

Recenze 7


Umístění serveru


Dream VPS Servers in Hong KongHongkong Dream VPS Servers in Santa Clara Dream VPS Servers in New YorkSpojené státy Dream VPS Servers in LondonSpojené království Dream VPS Servers in AmsterdamHolandsko Dream VPS Servers in FrankfurtNěmecko Dream VPS Servers in IsraelIzrael
Porovnat
Skóre - 0
Heroku Logo
Heroku

Heroku

Hobby
$7 /Měsíční


Umístění serveru


Heroku Servers in United StatesSpojené státy
Porovnat
Skóre - 0
Infra Networking Logo
Infra Networking

Infra sítě

ALFA
$4.19 /Měsíční


Umístění serveru


Infra Networking Servers in JakartaIndonésie Infra Networking Servers in DallasSpojené státy Infra Networking Servers in DublinIrsko Infra Networking Servers in LondonSpojené království Infra Networking Servers in Frankfurt am MainNěmecko Infra Networking Servers in SingaporeSingapur Infra Networking Servers in AmsterdamHolandsko Infra Networking Servers in UruguayUruguay
Porovnat

Hostování databází MongoDB

 

MongoDB

 

V posledních letech se MongoDB stal populárním jak na akademické půdě, tak i profesionálně. Použití tohoto databázového systému umožňuje velmi jednoduchým způsobem ukládat nestrukturovaná data.

 

Obecně platí, že tento typ databáze musí být umístěn ve snadno přístupném prostředí, protože aplikace, které tuto databázi používají, to obvykle musí dělat ve fyzicky vzdálených umístěních. Vzhledem k této potřebě tento článek představuje způsob, jak ukládat a provádět základní operace v MongoDB pomocí webhostingové služby. Diskuse o tomto tématu je užitečná pro ty, kteří chtějí vědět, jak vytvářet a spravovat databáze MongoDB v cloudu. Aby bylo možné nabídnout řešení pro správu tohoto typu databáze, článek také uvádí grafické nástroje pro její správu. V celém článku bude kladen důraz na technologie pro vývoj webových aplikací využívajících programovací jazyk Java.

 

Pro přístup do databáze bude vyvinuta webová služba, která bude hostována na bezplatném hostiteli. Pro otestování služby bude vyvinuta konzolová aplikace v jazyce Java. Nakonec článek ukazuje, jak testovat a sledovat webovou službu a databázi MongoDB.

 

Termín NoSQL znamená nejen SQL, tedy nejen SQL. Byly původně navrženy jiné významy, ale komunita si to osvojila nejvíce. Pro usnadnění ukládání a zpracování dat ve velkých objemech se objevily databáze NoSQL, které nabízejí strukturu umožňující vysokou škálovatelnost.

 

V současné době existuje přibližně 150 různých NoSQL databází. MongoDB získává nové sledovatele díky své rozsáhlé dokumentaci a zapojené komunitě.

 

Pohyb MongoDB byl zahájen počátkem roku 2009 a od té doby byly do MongoDB přidány další funkce a funkce, jako je podpora bez schématu, snadná replikace, jednoduché API, ovladače pro různé jazyky, manipulační nástroje, aktualizace funkcí a mnoho dalšího.

 

Skupinu databází NoSQL tvoří aplikačně orientované databáze, které spravují velké objemy dat, využívají funkce škálovatelnosti, protokol REST, MapReduce (číst BOX 1) a další vysoce výkonné funkce.

 

RÁMEČEK 1: MapReduce

 

MapReduce je programovací model zavedený společností Google s cílem podpory paralelního zpracování na souborech dat rozložených na několik počítačů (cluster). Provoz tohoto modelu je založen na dvou funkcích: mapovat a zmenšovat. Za účelem provedení konsolidace vyhledávání, jejíž data jsou seskupena, odešle žadatel své vyhledávání do několika počítačů současně.

 

V tomto okamžiku je mapování (mapa) provedeno mezi žadatelem a klastrem, poté jsou data vyplývající z vyhledávání seskupena (zmenšena) a generují výsledek hledání, který má být doručen žadateli.

 

Zkratka REST znamená Reprezentativní přenos stavu. Jedná se o techniku ​​široce používanou v systémech manipulace s distribuovanými daty (CRUD), která používá pouze volání HTTP. Tento typ volání zjednodušuje programování, abstrahuje úkoly na nízké úrovni programátorovi a umožňuje implementaci různých rutin ve webových službách. Uskutečněná volání jsou v zásadě pro vkládání dat (POST), dotaz na data (GET), aktualizaci dat (PUT) a mazání dat (DELETE).

 

MongoDB

 

První věc, na kterou byste měli myslet, když začínáte s NoSQL, je srovnávací. Protože jsme nemohli nepromluvit, přejdeme k porovnání hlavních pojmů ve vztahu k relačním bankám.

V MongoDB může být každý dokument zcela odlišný od jiného dokumentu ve stejné kolekci, což v relačním modelu není pravda. Data jsou obvykle zapsána ve formátu BSON (Binary JSON).

 

Chcete-li postupovat podle kroků uvedených v následující části, není nutné mít v místním počítači nainstalovanou MongoDB.

 

Instalace na místním počítači slouží pouze pro rychlejší a jednodušší testování. Pokud si chce čtenář nainstalovat MongoDB na svůj počítač a manipulovat s ním, je zde několik počátečních příkazů, které mohou být užitečné. Chcete-li spustit službu (démon), musíte zvážit následující příkaz: / mongo. Když je služba spuštěna, můžeme spustit tlumočník příkazů: / mongo, základní příkazy pro výpis databází jsou: zobrazit DBS nebo zobrazit databáze. Chcete-li zvolit použití databáze (pokud neexistuje, bude databáze vytvořena sqlMagazine): use sqlMagazine je důležité si uvědomit skutečnost, že velká a malá písmena se liší, buďte při tomto detailu opatrní.

 

Nástroje MongoDB

 

Po tolika příkazech už máme základnu, abychom se posunuli vpřed. Znalost příkazů je nezbytná pro vývoj aplikací, pro správu však existují i ​​jiné grafické nástroje, které jsou dobrými spojenci. Například obrázky 1 a 2 byly pořízeny ze softwaru MongoHub.

 

K přístupu na MongoDB existují další nástroje, například RockMongo a MongoVUE. Nástroj RockMongo potřebuje kromě aktivace modulu MongoDB v konfiguraci PHP i další služby (PHP a Apache). Tento nástroj je v OpenShiftu přijat jako standard, takže je dobré mít o něm znalosti.

 

Nástroj MongoVUE je pouze pro počítače s operačními systémy Microsoft Windows. Nabízí dobré vlastnosti.

 

Pro uživatele operačního systému Apple (Mac OS 10.6.x nebo vyšší) existuje nástroj MongoHub. I když pro tento nástroj existuje konkrétní web.

 

Vytvoření účtu pro hostování aplikace

 

Cílem je zpřístupnit databázi na webu a umožnit k ní přístup aplikací, která je také na webu, nebo aplikací nainstalovanou na jiném počítači. Pro hostování databáze byla vybrána služba OpenShift. V tomto může uživatel vytvořit až tři aplikace a v každé z nich je možné vytvořit několik služeb, například aplikace Java, PHP, Phyton, Ruby.

 

Pokud chcete na stejném účtu vytvořit více aplikací nebo dokonce najmout jiné služby a prostředky škálovatelnosti, musíte si vytvořit placený účet. OpenShift nabízí platformu jako službu označenou zkratkou PaaS. Pojďme projít nezbytnými kroky k vytvoření účtu.

 

Zpočátku musí uživatel přejít na adresu portu OpenShift: a zvolit tuto možnost. Zobrazí se registrační obrazovka, jak je znázorněno na obrázku.

 

mongodb

 

Jednoduše zadejte údaje a klikněte na & ldquo; Zaregistrovat se & rdquo ;. Bude zaslán e-mail s potvrzením registrace, je nutné kliknout na odkaz v tomto e-mailu k aktivaci registrace a být k vytvoření aplikace.

 

Při přístupu k vašemu účtu OpenShift je možné vytvořit požadované služby, jsou také nabízeny pokyny pro přístup k aplikacím pomocí příkazového řádku, použijte JBossDeveloper Studio IDE a mnoho dalších zdrojů. Abychom to krok za krokem usnadnili, vytvoříme aplikaci automaticky po místním vývoji.

Některá nastavení musí být provedena v našem účtu OpenShift. Po přístupu k účtu musíme přejít do & ldquo; Nastavení & rdquo; část, jak je znázorněno na obrázku.

 

mongodb

 

V textovém poli & ldquo; Název domény & rdquo; musíme zadat název požadované domény, v tomto testu zadáme & ldquo; SQL magazine & rdquo ;. Toto jméno (maximální počet znaků je 16) si můžete libovolně zvolit, je však důležité, protože bude použito v našem projektu Java. Poté klikněte na & ldquo; Uložit & rdquo; volba.

 

Po dokončení tohoto kroku se můžeme vrátit k & ldquo; aplikacím & rdquo; kartu a klikněte na & ldquo; Vytvořte nyní svou první aplikaci & rdquo; volba. Zobrazí se seznam s různými službami, které můžeme vytvořit. Vyberme si & ldquo; JBoss Application Server 7 & rdquo ;. Poté se zobrazí okno pro výběr názvu aplikace

 

Toto jméno si také můžeme svobodně vybrat, mělo by však být snadno zapamatovatelné, protože ho hned budeme potřebovat. Pro tento test zadáme & ldquo; MongoDB & rdquo ;.

 

Dalším krokem je kliknutí na & ldquo; Vytvořit aplikaci & rdquo ;. Tento proces může trvat několik sekund nebo dokonce minut, počkejte, až bude proces dokončen. Nyní se můžeme vrátit k & ldquo; aplikacím & rdquo; kartu a klikněte na vytvořenou aplikaci.

 

V tomto okamžiku přidáme MongoDB do naší aplikace. Chcete-li to provést, stačí kliknout na aplikaci, v tomto příkladu & ldquo; mongodb & rdquo; a poté klikněte na & ldquo; Přidat MongoDB 2.4 & rdquo;,. Pokud otevřete okno s informacemi a pokyny, odkaz & ldquo; Pokračovat na stránku s přehledem aplikace & rdquo; zobrazí se, na které je třeba kliknout, poté bude možné kliknout na & ldquo; Přidat MongoDB 2.4 & rdquo ;.

 

Poté klikněte na & ldquo; Přidat kazetu & rdquo ;. Tento proces může také trvat několik sekund. Poté se zobrazí obrazovka s důležitými informacemi pro přístup do databáze, je důležité tyto informace zaznamenat, protože budou použity v dalších krocích. Jedná se o uživatelské jméno, heslo a název databáze.

 

V tuto chvíli již máme k dispozici server (JBoss Application Server) a databázi NoSQL (MongoDB). Nyní stačí vytvořit webovou službu pro přístup k této bance a projekt pro přístup k této webové službě.

 

Vývoj aplikací

 

V zásadě budeme mít dvě aplikace a databázi. První aplikace bude odpovědná za vytváření požadavků na databázi. Tato aplikace bude sloužit jako velmi jednoduchý příklad, jen k otestování fungování webové služby. Druhá aplikace (webová služba) bude odpovědná za přijímání požadavků od první a přístup k databázi.

 

Pojďme k první aplikaci. Jeho předpoklady jsou Eclipse Kepler a dvě knihovny API (Application Program Interface) Jersey (dres-klient a dres-jádro). Abychom usnadnili a zjednodušili zde popsané podrobné kroky, vytvoříme aplikaci Java v Eclipse Kepler.

 

Obrázky ilustrující krok za krokem byly získány pomocí operačního systému Mac OS 10.9.3, čtenář však může používat Microsoft Windows nebo dokonce distribuci Linux.

 

V rámci přístupu Eclipse: Soubor, Nový, Projekt. V dalším okně vyberte & ldquo; Projekt Java & rdquo; a klikněte na & ldquo; Další & rdquo ;. Poté zadejte název projektu a vyberte možnost & ldquo; Dokončit & rdquo ;.

Nyní musíme v projektu vytvořit třídu. Stačí kliknout pravým tlačítkem na & ldquo; src & rdquo ;, & ldquo; New & rdquo ;, & ldquo; Class & rdquo ;.

 

Na další obrazovce musíme zadat název třídy a zaškrtnout možnost & ldquo; Vytvořit hlavní metodu & rdquo; & ldquo; public static void main (String [] args) & rdquo ;, a klikněte na & ldquo; Dokončit & rdquo ;,

Cílem tohoto projektu Java je zaznamenávat informace do databáze MongoDB, která bude hostována na webu. Použitý typ hostování umožňuje externí přístup k databázi, to znamená, že aplikace odkudkoli mohou přistupovat k databázovému serveru, je však nutné přesměrovat porty na místním počítači.

 

Jelikož se to může stát velmi složitou věcí, pokud jde o počítače mimo naši kontrolu, nebo dokonce o počítače, které potřebují pokračovat v přístupu k místním portům, nebo dokonce, když jde o mobilní zařízení, přesměrování portů není nejlepší způsob. Tímto způsobem bude náš projekt Java přistupovat k databázi prostřednictvím webové služby.

 

Před zadáním kódů přidejme dvě knihovny pro práci s webovými službami. Dvě knihovny, které budeme používat, pocházejí z rozhraní API Jersey 1.18. Chcete-li je přidat do projektu, po stažení je jednoduše zkopírujte do složky projektu a klikněte pravým tlačítkem na název projektu a vyberte vlastnosti.

 

V okně „Vlastnosti“ vyberte možnost „Cesta sestavení Java“ a poté „Knihovny“. Poté klikněte na & ldquo; Přidat externí nádobu & rdquo ;.

 

Nyní, když jsme do našeho projektu přidali Jersey API, můžeme trochu kódovat.

 

V tomto počátečním fragmentu kódu právě vytváříme klienta URL. V prvních řádcích (3 a 4) máme import, abychom použili metody & ldquo; Jersey & rdquo; knihovna. V řádcích 9 a 10 vytváříme objekt pro připojení k adrese URL webové služby. Všimněte si, že adresa URL webové služby je tvořena celým názvem našeho účtu OpenShift spolu se slovem odpočinek a příspěvek, což naznačuje, že webová služba má umístění pro metody zvané odpočinek a metoda zvaná příspěvek. Dále vytvořme nějaké informace k odeslání do databáze

 

Účelem fragmentu kódu uvedeného v tomto seznamu je shromáždění řetězce znaků, které se řídí standardem JSON, které se mají odeslat do databáze MongoDB. Nakonec bude soubor odeslán na server. Nyní pojďme k poslednímu fragmentu kódu projektu Java.

 

Tento fragment kódu bude pro náš projekt potřebovat další import.

 

Odesílání do cloudu

 

Nyní můžeme poslat naši webovou službu do OpenShift. V Eclipse zvolte perspektivu JBoss a klikněte na OpenShift Application.

 

Budou požadovány přihlašovací údaje k účtu (e-mail a heslo) definované v registraci. Jednoduše zadejte údaje o svém účtu a klikněte na „Další“. Při prvním připojení budete vyzváni k vytvoření klíčů SSH.

 

musíme zaškrtnout možnost & ldquo; Použít existující aplikaci & rdquo ;. Zaškrtnutím této možnosti se zobrazí obrazovka pro výběr dříve vytvořené aplikace. Vyberte aplikaci a klikněte na „Další“.

 

Na další obrazovce budete dotázáni, zda chceme vytvořit projekt pro odeslání na náš server nebo použít existující projekt. Použijeme stávající projekt, v tomto případě naši nově vyvinutou webovou službu. Chcete-li to provést, zrušte výběr možnosti & ldquo; Vytvořit nový projekt & rdquo; klikněte na & ldquo; Prozkoumat & rdquo; a vyberte projekt jboss-as-helloworld-rs.

 

Dokončete proces. Budete požádáni o potvrzení použití klíče SSH, klikněte na & ldquo; Ano & rdquo ;. Znovu & ldquo; Ano & rdquo; k potvrzení odeslání webové služby. Po tomto kroku můžeme publikovat naši webovou službu. Chcete-li to provést, přejděte do Eclipse a otevřete kartu „Servery“, kliknutím rozbalte kartu serveru, v tomto případě „mongodb at OpenShift“. Zobrazí se název naší webové služby jboss-as-helloworld-rs, klikněte na ni pravým tlačítkem myši a vyberte možnost & ldquo; Úplné zveřejnění & rdquo; nebo & ldquo; úplné publikování & rdquo ;.

 

Zkontrolujte, zda aplikace již byla vytvořena na serveru OpenShift. Chcete-li to provést, přejděte do prohlížeče a přejděte do svého účtu OpenShift v & ldquo; Aplikace & rdquo; kartu a klikněte na aplikaci. V příkladu v tomto kurzu & ldquo; mongodb & rdquo; a potvrďte, že již byl vytvořen.

 

Pokud to trvá příliš dlouho (více než tři minuty), může být nutné aplikaci restartovat. K tomu použijte příslušnou ikonu napravo od obrazovky.

 

Závěrečné testy

 

Teď, když máme k dispozici server s MongoDB, projekt pro odesílání dat na server a webovou službu, která je spojuje, můžeme začít testovat.

 

Důležitým spojencem pro kontrolu fungování je Rock Mongo. Lze jej aktivovat v OpenShiftu velmi jednoduše, stačí kliknout na & ldquo; Přidat Rock Mongo 1.1 & rdquo; v & ldquo; Aplikace s & rdquo; záložka.

 

Další důležitou funkcí jsou & ldquo; soubory ocasu & rdquo; které lze aktivovat na konzole. Přejděte na konzolu Eclipse a klikněte na Průzkumník OpenShift, rozbalte všechny možnosti, dokud se nedostanete k aplikaci, v našem případě & ldquo; mongodb & rdquo ;. Klikněte pravým tlačítkem a vyberte & ldquo; Soubory ocasu & rdquo; volba.