MongoDB

MongoDB je postao popularan kako u akademskoj zajednici, tako i profesionalno. Korištenje ovog sustava baza podataka omogućuje pohranu nestrukturiranih podataka na vrlo jednostavan način. Općenito, ova vrsta baze podataka mora se nalaziti u lako dostupnom okruženju.
Cjelovit članak na MongoDB ...

Prikaži filtar
Hosting filtera
Host Me Host Filter

Operativni sustav

Prostor na disku

RAM memorija

Vrsta diska

CPU jezgre

Vrsta

Trust Pilot Dream VPS
Ocjena - 8.6
Dream VPS Logo
Dream VPS

San VPS

STARTER
$3.75 /Mjesečno

Recenzije 7


Lokacije poslužitelja


Dream VPS Servers in Hong KongHong Kong Dream VPS Servers in Santa Clara Dream VPS Servers in New YorkUjedinjene države Dream VPS Servers in LondonUjedinjeno Kraljevstvo Dream VPS Servers in AmsterdamNizozemska Dream VPS Servers in FrankfurtNjemačka Dream VPS Servers in IsraelIzrael
Usporedite
Ocjena - 0
Heroku Logo
Heroku

Heroku

Hobby
$7 /Mjesečno


Lokacije poslužitelja


Heroku Servers in United StatesUjedinjene države
Usporedite
Ocjena - 0
Infra Networking Logo
Infra Networking

Infra umrežavanje

ALFA
$4.19 /Mjesečno


Lokacije poslužitelja


Infra Networking Servers in JakartaIndonezija Infra Networking Servers in DallasUjedinjene države Infra Networking Servers in DublinIrska Infra Networking Servers in LondonUjedinjeno Kraljevstvo Infra Networking Servers in Frankfurt am MainNjemačka Infra Networking Servers in SingaporeSingapur Infra Networking Servers in AmsterdamNizozemska Infra Networking Servers in UruguayUrugvaj
Usporedite

Hostiranje baza podataka MongoDB

 

MongoDB

 

Posljednjih godina MongoDB je postao popularan kako u akademskoj zajednici tako i na profesionalnom. Korištenje ovog sustava baza podataka omogućuje pohranu nestrukturiranih podataka na vrlo jednostavan način.

 

Općenito, ova vrsta baze podataka mora se nalaziti u lako dostupnom okruženju, jer aplikacije koje koriste ovu bazu podataka to obično moraju raditi na fizički udaljenim mjestima. S obzirom na ovu potrebu, ovaj članak predstavlja način za pohranu i obavljanje osnovnih operacija u MongoDB-u pomoću usluge web hostinga. Rasprava o ovoj temi korisna je za one koji žele znati kako stvoriti i upravljati bazama podataka MongoDB u oblaku. Kako bi ponudio rješenja za upravljanje ovom vrstom baze podataka, članak također ukazuje na grafičke alate za njezino upravljanje. U cijelom članku naglasak će biti stavljen na tehnologije za razvoj web aplikacija koje koriste programski jezik Java.

 

Za pristup bazi podataka razvit će se web usluga koja će biti hostirana na besplatnom hostu. Za testiranje usluge razvit će se konzola na Java jeziku. Konačno, članak vam pokazuje kako testirati i nadgledati web uslugu i bazu podataka MongoDB.

 

Pojam NoSQL znači ne samo SQL, odnosno ne samo SQL. U početku su bila predložena druga značenja, ali zajednica je to najviše usvojila. NoSQL baze podataka pojavile su se kako bi olakšale pohranu i obradu podataka u velikim količinama, nudeći strukturu koja omogućuje visoku skalabilnost.

 

Trenutno postoji oko 150 različitih NoSQL baza podataka. MongoDB je stekao nove sljedbenike zbog svoje velike dokumentacije i uključene zajednice.

 

Pokret MongoDB započeo je početkom 2009. godine i od tada je u MongoDB dodano više značajki i značajki, poput podrške bez sheme, jednostavne replikacije, jednostavnog API-ja, pokretačkih programa za različite jezike, alata za manipulaciju, ažuriranja funkcija i još mnogo toga.

 

Skupina baza podataka NoSQL sastoji se od aplikacijski orijentiranih baza podataka koje upravljaju velikim količinama podataka, usvajaju značajke skalabilnosti, REST protokol, MapReduce (čitaj OKVIR 1) i druge značajke visokih performansi.

 

OKVIR 1: MapReduce

 

MapReduce je programski model koji je Google uveo s ciljem podržavanja paralelne obrade na skupovima podataka raspoređenih na nekoliko računala (klaster). Rad ovog modela temelji se na dvije značajke: mapiranju i smanjenju. Da bi izvršio konsolidaciju pretraživanja čiji su podaci grupirani, podnositelj zahtjeva istovremeno šalje svoju pretragu na nekoliko računala.

 

U ovom se trenutku izrađuje preslikavanje (karta) između podnositelja zahtjeva i klastera, a zatim se podaci koji proizlaze iz pretraživanja grupiraju (smanjuju) generirajući rezultat pretraživanja koji će se dostaviti podnositelju zahtjeva.

 

Kratica REST kratica je od Reprezentativnog državnog prijenosa. To je tehnika koja se široko koristi u sustavima distribuiranih podataka (CRUD) koji koriste samo HTTP pozive. Ova vrsta poziva pojednostavljuje programiranje, apstrahirajući zadaće niske razine programeru, omogućujući provedbu različitih rutina u web uslugama. Upućeni pozivi su u osnovi za umetanje podataka (POST), upit podataka (GET), ažuriranje podataka (PUT) i brisanje podataka (DELETE).

 

MongoDB

 

Prvo na što treba razmisliti kad započnemo s NoSQL-om je usporedba. Kako nismo mogli ne razgovarati, idemo na usporedbu glavnih pojmova u odnosu na relacijske banke.

U MongoDB-u se svaki dokument može potpuno razlikovati od drugog dokumenta iz iste zbirke, što u relacijskom modelu nije točno. Podaci se obično zapisuju u BSON (Binary JSON) formatu.

 

Da biste slijedili korake predstavljene u sljedećem odjeljku, nije potrebno instalirati MongoDB na lokalno računalo.

 

Instalacija na lokalno računalo je samo u svrhu bržeg i jednostavnijeg testiranja. Ako čitatelj želi instalirati MongoDB na svoje računalo i njime manipulirati, evo nekoliko početnih naredbi koje mogu biti korisne. Da biste pokrenuli uslugu (demon), morate uzeti u obzir sljedeću naredbu: / mongo. S pokrenutom uslugom možemo pokrenuti interpretator naredbi: / mongo, osnovne naredbe za navođenje baza podataka su: show DBS ili show databases. Da biste odabrali upotrebu baze podataka (ako ne postoji, baza podataka će se stvoriti sqlMagazine): koristite sqlMagazine važno je biti svjestan činjenice da se velika i mala slova razlikuju, budite oprezni s ovim detaljima.

 

MongoDB alati

 

Nakon toliko naredbi, već imamo bazu za pomicanje naprijed. Poznavanje naredbi je neophodno za razvoj aplikacija, međutim, za administraciju postoje i drugi grafički alati koji su dobri saveznici. Na primjer, slike 1 i 2 snimljene su iz softvera MongoHub.

 

Postoje i drugi alati za pristup MongoDB-u, poput RockMongo i MongoVUE. Alat RockMongo treba druge usluge (PHP i Apache), uz aktiviranje MongoDB modula u PHP konfiguraciji. Ovaj je alat prihvaćen kao standard u OpenShiftu, pa je dobro imati znanje o njemu.

 

Alat MongoVUE namijenjen je samo računalima s operacijskim sustavima Microsoft Windows. Nudi dobre značajke.

 

Za korisnike operativnog sustava Apple (Mac OS 10.6.x ili noviji) postoji alat MongoHub. Iako postoji određeno web mjesto za ovaj alat.

 

Izrada računa za hostiranje aplikacije

 

Cilj je učiniti bazu podataka dostupnom na webu i omogućiti joj pristup aplikacijom koja je također na webu ili aplikacijom koja je instalirana na drugom računalu. Usluga odabrana za hosting baze podataka bila je OpenShift. U tome korisnik može stvoriti do tri aplikacije i u svakoj od njih moguće je stvoriti nekoliko usluga, poput Java, PHP, Phyton, Ruby aplikacija, između ostalih.

 

Ako želite stvoriti više aplikacija na istom računu ili čak unajmiti druge usluge i resurse skalabilnosti, morate stvoriti račun koji se plaća. OpenShift nudi platformu kao uslugu identificiranu kraticom PaaS. Prođimo potrebne korake za stvaranje računa.

 

U početku korisnik mora otići na adresu porta OpenShift: i odabrati opciju. Pojavit će se zaslon za registraciju, kao što je prikazano na slici.

 

mongodb

 

Samo unesite podatke i kliknite na & ldquo; Prijavi se & rdquo ;. Poslat će se e-mail za potvrdu registracije, potrebno je kliknuti na vezu u ovoj e-pošti da biste aktivirali registraciju i omogućili izradu aplikacija.

 

Kada pristupate svom OpenShift računu, moguće je stvoriti željene usluge, nude se i upute za pristup aplikacijama putem naredbenog retka, koristite JBossDeveloper Studio IDE i mnoštvo drugih resursa. Kako bismo olakšali ovaj korak po korak, automatski ćemo stvoriti aplikaciju nakon što smo je lokalno razvili.

Neke postavke moraju se izvršiti na našem OpenShift računu. Nakon pristupa računu, moramo otići na & ldquo; Postavke & rdquo; odjeljak, kao što je prikazano na slici.

 

mongodb

 

U tekstualnom okviru & ldquo; Ime domene & rdquo; moramo upisati ime željene domene, u ovom testu upišemo & ldquo; SQL časopis & rdquo ;. Ovo ime (maksimalni broj znakova je 16) slobodno je odabrati, ali je važno jer će se koristiti u našem Java projektu. Zatim kliknite na & ldquo; Spremi & rdquo; opcija.

 

Nakon dovršetka ovog koraka možemo se vratiti na & ldquo; Aplikacije & rdquo; i kliknite na & ldquo; Kreirajte svoju prvu aplikaciju sada & rdquo; opcija. Pojavit će se popis s raznim uslugama koje možemo stvoriti. Odaberimo & ldquo; JBoss Application Server 7 & rdquo ;. Zatim se prikazuje prozor za odabir naziva aplikacije

 

Ovo je ime također slobodno odabrati, ali trebalo bi ga biti lako upamtiti, jer će nam trebati odmah. Za ovaj test upisujemo & ldquo; MongoDB & rdquo ;.

 

Sljedeći je korak kliknuti na & ldquo; Izradi aplikaciju & rdquo ;. Ovaj postupak može potrajati nekoliko sekundi ili čak minuta, pričekajte dok se postupak ne dovrši. Sada se možemo vratiti na & ldquo; Aplikacije & rdquo; karticu i kliknite na stvorenu aplikaciju.

 

U ovom ćemo trenutku dodati MongoDB u našu aplikaciju. Da biste to učinili, samo kliknite aplikaciju, u ovom primjeru & ldquo; mongodb & rdquo; a zatim kliknite na & ldquo; Dodaj MongoDB 2.4 & rdquo;,. Ako otvorite prozor s informacijama i uputama, veza & ldquo; Nastavite na stranicu s pregledom aplikacije & rdquo; bit će prikazan, na koji se mora kliknuti, tada će biti moguće kliknuti na & ldquo; Dodaj MongoDB 2.4 & rdquo ;.

 

Zatim kliknite na & ldquo; Dodaj uložak & rdquo ;. Ovaj postupak može potrajati i nekoliko sekundi. Tada će se pojaviti zaslon s važnim informacijama za pristup bazi podataka, važno je zabilježiti te podatke jer će se koristiti u sljedećim koracima. Podaci su korisničko ime, lozinka i ime baze podataka.

 

Trenutno imamo na raspolaganju poslužitelj (JBoss Application Server) i NoSQL bazu podataka (MongoDB). Sada samo stvorite web uslugu za pristup ovoj banci i projekt za pristup ovoj web usluzi.

 

Razvoj aplikacija

 

U osnovi, imat ćemo dvije aplikacije i bazu podataka. Prva aplikacija bit će odgovorna za podnošenje zahtjeva za bazu podataka. Ova aplikacija poslužit će kao vrlo jednostavan primjer samo za testiranje funkcioniranja web usluge. Druga aplikacija (web usluga) bit će odgovorna za primanje zahtjeva od prve i pristup bazi podataka.

 

Idemo na prvu prijavu. Preduvjeti su mu Eclipse Kepler i dvije API knjižnice (sučelje aplikacijskog programa) Jersey (jersey-client i jersey-core). Kako bismo olakšali i pojednostavili ovdje opisani korak-po-korak, napravit ćemo Java aplikaciju u Eclipse Kepler.

 

Slike koje ilustriraju korak po korak dobivene su pomoću operativnog sustava Mac OS 10.9.3, međutim čitač može koristiti Microsoft Windows ili čak Linux distribuciju.

 

Unutar pristupa Eclipse: File, New, Project. U sljedećem prozoru odaberite & ldquo; Java projekt & rdquo; i kliknite & ldquo; Dalje & rdquo ;. Zatim unesite naziv projekta i odaberite opciju & ldquo; Završi & rdquo ;.

Sada u projektu moramo stvoriti razred. Da biste to učinili, samo desnom tipkom miša kliknite & ldquo; src & rdquo ;, & ldquo; Novo & rdquo ;, & ldquo; Razred & rdquo ;.

 

Na sljedećem zaslonu moramo upisati naziv klase i označiti opciju & ldquo; Stvori glavnu metodu & rdquo; & ldquo; javna statička void glavna (String [] args) & rdquo ;, i kliknite na & ldquo; Završi & rdquo ;,

Cilj ovog Java projekta je bilježenje podataka u MongoDB bazu podataka koja će biti hostirana na webu. Vrsta hostinga koji se koristi omogućuje vanjski pristup bazi podataka, odnosno aplikacije s bilo kojeg mjesta mogu pristupiti poslužitelju baze podataka, međutim, potrebno je preusmjeriti portove na lokalnom računalu.

 

Budući da ovo može postati vrlo složena stvar kada je riječ o računalima izvan naše kontrole ili čak računalima koja trebaju nastaviti pristup lokalnim lukama, ili čak kada su u pitanju mobilni uređaji, preusmjeravanje luka nije najbolji način. Na taj će način naš Java projekt pristupiti bazi podataka putem web usluge.

 

Prije unosa kodova, dodajte dvije knjižnice za rad s web uslugama. Dvije knjižnice koje ćemo koristiti koristit će se iz API-ja Jersey 1.18. Da biste ih dodali u projekt, nakon preuzimanja, samo ih kopirajte u mapu projekta i desnom tipkom miša kliknite naziv projekta i odaberite svojstva.

 

U prozoru "Svojstva" odaberite opciju "Java Build Path", a zatim "Knjižnice". Zatim kliknite & ldquo; Dodaj vanjsku posudu & rdquo ;.

 

Sad kad smo našem projektu dodali Jersey API, možemo malo kodirati.

 

U ovom početnom isječku koda, mi samo izrađujemo URL klijenta. U prvim redovima (3 i 4) imamo uvoz kako bismo koristili metode & ldquo; Jersey & rdquo; knjižnica. U retcima 9 i 10 stvaramo objekt za povezivanje s URL-om web usluge. Imajte na umu da se url web usluge sastoji od punog naziva našeg OpenShift računa zajedno s riječju odmor i pošta, što ukazuje da web usluga ima mjesto za metode, koje se nazivaju rest i metodu koja se naziva post. Dalje, kreirajmo neke informacije koje ćemo poslati u bazu podataka

 

Svrha isječka koda predstavljenog na ovom popisu je okupiti niz znakova koji poštuju JSON standard za slanje u bazu podataka MongoDB. Konačno, datoteka koju treba poslati poslužitelju. Sada idemo na zadnji isječak koda Java projekta.

 

Ovaj isječak koda trebat će još jedan uvoz za naš projekt.

 

Slanje u oblak

 

Sada našu web uslugu možemo poslati na OpenShift. Unutar Eclipsea odaberite perspektivu JBoss i kliknite OpenShift Application.

 

Tražit će se vjerodajnice računa (e-pošta i lozinka) definirane u registraciji. Samo unesite podatke o svom računu i kliknite "Dalje". Kad se prvi put povežete, od vas će se zatražiti da stvorite SSH ključeve.

 

moramo provjeriti opciju & ldquo; Upotrijebi postojeću aplikaciju & rdquo ;. Označavanjem ove opcije prikazat će se zaslon za odabir prethodno kreirane aplikacije. Odaberite aplikaciju i kliknite "Dalje".

 

Na sljedećem zaslonu bit ćete upitani želimo li stvoriti projekt za slanje na naš poslužitelj ili koristiti postojeći projekt. Koristit ćemo postojeći projekt, u ovom slučaju, našu novo razvijenu web uslugu. Da biste to učinili, poništite odabir opcije & ldquo; Stvori novi projekt & rdquo;, klikni na & ldquo; Istražite & rdquo; i odaberite projekt jboss-as-helloworld-rs.

 

Dovršite postupak. Od vas će se zatražiti potvrda za upotrebu SSH ključa, kliknite & ldquo; Da & rdquo ;. Opet & ldquo; Da & rdquo; da biste potvrdili slanje web usluge. Nakon ovog koraka možemo objaviti našu web uslugu. Da biste to učinili, idite na Eclipse i otvorite karticu "Poslužitelji", kliknite da biste proširili karticu poslužitelja, u ovom slučaju "mongodb na OpenShift". Pojavit će se naziv naše web usluge jboss-as-helloworld-rs, kliknite je desnom tipkom miša i odaberite opciju & ldquo; Puna publikacija & rdquo; ili & ldquo; Cijela objava & rdquo ;.

 

Provjerite je li aplikacija već izgrađena na poslužitelju OpenShift. Da biste to učinili, idite u preglednik i pristupite svom OpenShift računu na & ldquo; Applications & rdquo; karticu i kliknite na aplikaciju. U primjeru iz ovog vodiča, & ldquo; mongodb & rdquo ;, i potvrdite da je već izgrađen.

 

Ako traje predugo (više od tri minute), možda će biti potrebno ponovno pokrenuti aplikaciju. Da biste to učinili, upotrijebite odgovarajuću ikonu s desne strane zaslona.

 

Završni testovi

 

Sad kad imamo na raspolaganju poslužitelj s MongoDB-om, projekt za slanje podataka na poslužitelj i web uslugu za njihovo spajanje, možemo započeti testiranje.

 

Važan saveznik za provjeru funkcioniranja je Rock Mongo. Može se aktivirati u OpenShiftu vrlo jednostavno, samo kliknite na & ldquo; Dodaj Rock Mongo 1.1 & rdquo; u & ldquo; Prijava s & rdquo; tab.

 

Još jedna važna značajka su & ldquo; Rep datoteke & rdquo ;, koje se mogu aktivirati na konzoli. Dođite do konzole Eclipse i kliknite OpenShift Explorer, proširite sve mogućnosti dok ne dođete do aplikacije, u našem slučaju & ldquo; mongodb & rdquo ;. Desnom tipkom miša kliknite i odaberite & ldquo; Turpijske repove & rdquo; opcija.