Web Developmentpokročilý

Čo je MongoDB?

MongoDB je najpopulárnejšia dokumentová NoSQL databáza, ktorá ukladá dáta vo formáte BSON (binárny JSON). Vyniká flexibilnou schémou, horizontálnym škálovaním a jednoduchým vývojom. Je obľúbená najmä v Node.js ekosystéme a pre aplikácie s rýchlo sa meniacimi dátovými požiadavkami.

Definícia MongoDB

Čo je MongoDB

MongoDB je open-source dokumentová databáza vyvinutá spoločnosťou MongoDB Inc. (predtým 10gen). Namiesto tabuliek a riadkov používa kolekcie a dokumenty vo formáte BSON (Binary JSON). Vznikla v roku 2009 a rýchlo sa stala najpopulárnejšou NoSQL databázou na svete.

Kľúčové vlastnosti

  • Flexibilná schéma — dokumenty v rovnakej kolekcii môžu mať rôznu štruktúru. Nie je potrebné definovať stĺpce vopred
  • Vnorené dokumenty — súvisiace dáta sa ukladajú v jednom dokumente, čím sa eliminujú JOINy
  • Horizontálne škálovanie — natívna podpora shardingu pre distribúciu dát na viacero serverov
  • Agregačný framework — výkonný pipeline systém na spracovanie a analýzu dát priamo v databáze

MongoDB Atlas

MongoDB Atlas je plne spravovaná cloudová služba, ktorá beží na AWS, Google Cloud a Azure. Ponúka automatické zálohovanie, škálovanie, monitoring a bezplatný tier (512 MB) na testovanie a menšie projekty. Pre moderné webové aplikácie je Atlas často najjednoduchší spôsob, ako začať s MongoDB.

Praktický príklad

Príklad: Vyvíjate blog platformu. Každý článok má iný počet tagov, komentárov a metadát.

S SQL: Potrebujete tabuľku článkov, tabuľku tagov, väzobnú tabuľku, tabuľku komentárov — a JOINy pri každom zobrazení.

S MongoDB: Celý článok vrátane tagov a komentárov uložíte ako jeden dokument: { title: "Ako na SEO", tags: ["seo", "marketing"], comments: [{author: "Jan", text: "Super článok"}] }. Jedno čítanie, žiadne JOINy.

Často kladené otázky

Čo je MongoDB?

MongoDB je dokumentová NoSQL databáza, ktorá ukladá dáta ako JSON dokumenty v kolekciách. Je populárna pre svoju flexibilitu, výkon a jednoduché horizontálne škálovanie.

Kedy použiť MongoDB namiesto SQL databázy?

MongoDB je vhodné pre aplikácie s flexibilnou alebo často sa meniacou schémou, prototypovanie, real-time aplikácie a situácie, kde sa dáta prirodzene reprezentujú ako dokumenty. Pre transakčné systémy s komplexnými vzťahmi je SQL databáza vhodnejšia.

Je MongoDB zadarmo?

MongoDB Community Edition je plne open-source a zadarmo. MongoDB Atlas (cloudová služba) ponúka bezplatný tier s 512 MB úložiska, platené plány začínajú od cca 57 USD/mesiac.

Ako sa MongoDB používa s Node.js?

Najpoužívanejšou knižnicou je Mongoose — ORM pre MongoDB a Node.js, ktorý poskytuje schéma validáciu, middleware a jednoduchú syntax. Alternatívne sa dá použiť oficiálny MongoDB Node.js driver.

Súvisiace pojmy

Potrebujete pomôcť s webom?

Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.