Hvordan en MongoDB-database bedre kan organisere dine data

  • Gabriel Brooks
  • 0
  • 4340
  • 325
Reklame

Enhver, der nogensinde har arbejdet med databaser, der organiserer data i tabeller, også kaldet relationelle databaser, kan sandsynligvis tale indgående om dets mangler. Så godt et system til lagring af data, det kan være, det er ikke uden dets problemer og er ikke designet til fortolkning af mennesker, hvilket gør organisering med det viklet, overflødigt og med en stejl indlæringskurve.

Derfor er NoSQL-bevægelsen. SQL står for Structured Query Language, og det bruges til at kommunikere med databaser. Men det er ikke så godt i større skala. Når for eksempel apps går viralt, er der brug for support, så brugerne kan bruge appen uden at opleve nogen problemer. Men SQL bliver kompliceret på denne skala, mere end mange udviklere kan håndtere.

NoSQL gør det lettere at gemme og organisere data, fordi talsmænd for NoSQL tankegangen bestræbte sig på at gøre en database, der arbejdede med store datasæt, skaleret og var organiseret som den måde folk tænker og let kunne læses af mennesker. MongoDB er en sådan database, og det ændrer måden, hvorpå udviklere bygger websteder.

Hvad er MongoDB?

MongoDB (fra “humongous”) er en tværorienteret dokumentorienteret database, der bruges som et alternativ til MySQL. Men hvad betyder det? Nå, en database er et struktureret datasæt. Hvad er en database alligevel? [MakeUseOf Explains] Så hvad er en database alligevel? [MakeUseOf Explains] For en programmør eller en teknologientusiast er begrebet en database noget, der virkelig kan tages for givet. For mange mennesker er konceptet med en database i sig selv en smule fremmed ... men MongoDB adskiller sig imidlertid i, at det har en tendens til at være mindre streng omkring, hvordan disse data er struktureret. Information grupperes sammen snarere end opdeles i relaterede dokumenter og tabeller som MySQL, et populært RDBMS eller relationsdatabasestyringssystem, der bruger SQL.

Mange databaser, der bruger SQL, lagrer data i tabeller på sider. Tænk på noget som et Excel-regneark med kodestykker. Disse sider er de mindste stykker data på en server, og hver side er afsat til en tabel. Dette bliver viklet i stor skala, mens udvikleren med MongoDB kan beslutte, hvordan man strukturerer informationen til det, der passer til deres behov.

MongoDB bruger BSON til at gemme information. BSON (en kombination af “binær” og “JSON”, eller JavaScript Object Notation) kan betragtes som en binær eller numerisk repræsentation af JSON-dokumenter. JSON Hvad er JSON? En lægmandsoversigt Hvad er JSON? En laymans oversigt Uanset om du planlægger at være en webudvikler eller ej, er det en god ide at i det mindste vide, hvad der er JSON, hvorfor det er vigtigt, og hvorfor det bruges rundt omkring på nettet. er et åbent standardformat (som open source) til organisering af data.

Det tilføjer også support til bestemte datatyper, der ikke understøttes i JSON, som datatypen 'date', som normalt ikke understøttes og derfor ikke kunne bruges af udvikleren. I dette tilfælde ville udvikleren ikke være i stand til at medtage nogen form for dato som et stykke data.

Disse data er typisk organiseret i dokumenter. JSON overfører data ved hjælp af dokumenter, der let kan læses af mennesker, men dette er ikke tilfældet med BSON. JSON bruges også ofte til at transmittere data mellem en server og en applikation samt et generelt datalagringsmedium.

Dokumenter behøver ikke at være struktureret på en bestemt måde i henhold til samlingen eller en gruppe relaterede objekter, de er organiseret i, hvilket gør det meget let for en udvikler at komme i gang med MongoDB. Dette har ført til, at det er en af ​​de mest populære NoSQL-databaser derude.

Hvad der gør det anderledes end MySQL?

Da MySQL måske er det mest udbredte RDBMS derude, selvom det er mangelfuldt som det kan være, er det kun naturligt, at alternativer ville dukke op. Da NoSQL er et alternativ til SQL, betragtes MongoDB som et alternativ til MySQL. MySQL bruger tabeller til at organisere sine data og er baseret på den klassiske relationelle datamodel fra det tyvende århundrede, selvom det ligesom MongoDB kan ændres for forbedret funktionalitet.

De to er dog meget forskellige. De er beregnet til forskellige formål til et. MongoDB er beregnet mere til den større (meget store) skala, mens der kun er så meget, som MySQL kan håndtere. Som nævnt tidligere bruger MySQL tabeller til at organisere data, der kan ende meget indviklet. Imidlertid er de begge meget gode systemer, og faktisk implementeres hybrider på visse websteder rundt omkring på nettet. Craigslist er kendt for at være et af de mere succesrige websteder, der implementerer en MongoDB / MySQL-hybrid.

Hvordan virker det?

MongoDB fungerer ved at gemme data i dokumenter, der ligner JSON. Disse dokumenter har et eller flere felter (objekter eller værdier indeholdt i en klasse eller struktur), der inkluderer arrays (en række objekter alle af samme størrelse og type) og underdokumenter (et dokument, der udgør en del af et større dokument). Disse felter kan indstilles, som udvikleren ønsker det, alt efter deres behov.

Selv om det normalt ville være en kompliceret affære at organisere dette, gør BSON det let ved blot at gruppere dokumenterne i henhold til type og størrelse snarere end at opdele dem i meget små stykker data som SQL gør og organisere dataene baseret på anden information. På grund af denne fleksibilitet er udviklere i stand til at udvikle indsamlingen af ​​data, også kaldet datamodellen, så de passer til deres behov.

Udviklere kan få adgang til dokumenterne via drivere, som de er i stand til at læse og forstå, og dokumenterne er tilgængelige på mest populære, moderne programmeringssprog. Med MongoDB kortlægges dokumenterne naturligt til objekterne, så der er ikke behov for et ORM-lag (objekt-relationel mapping), der manuelt kortlægger dokumenter til deres respektive objekter. Kort sagt er dokumenterne naturligt forbundet med objekterne, så der er ikke behov for en separat kommando eller program for at forbinde dem.

MongoDB bruger et JavaScript-baseret shell og understøtter udviklere, der skriver tilpasset kode ved hjælp af JavaScript-funktioner, og vil sandsynligvis blive mere udbredt, når JavaScript fortsætter med at blomstre. Hvad er JavaScript, og kan Internettet eksistere uden det? Hvad er JavaScript, og kan Internettet eksistere uden det? JavaScript er en af ​​de ting, mange tager for givet. Alle bruger det. i popularitet.

Hvem bruger det?

Selvom den stadig er relativt ung, bruges MongoDB på en række populære websteder. Disse inkluderer forretningsblade Forbes samt gif-tastic Buzzfeed.

Forbes drage fordel af MongoDB til hurtigt at udvikle en ny web- og mobilportefølje. MongoDBs hastighed og magt gjorde det muligt for dem at oprette et websted om to måneder og en mobilapp på en måned. Dette havde en drastisk indflydelse på læsernes engagement og trafik. Ifølge MongoDB-udviklerne:

Over natten sprang mobiltrafik fra 5% til 15% af Forbes.com's samlede trafik og gik hurtigt til 50%.

Buzzfeed lider under de udfordringer, som enhver stor medieorganisation står overfor. Deres distribuerede skrivende medarbejdere udgiver en så vidunderlig mængde indhold 5 websteder til at tjekke de seneste buzz og virale videoer 5 websteder til at tjekke de seneste buzz og virale videoer til et stort publikum. MongoDB giver Buzzfeed mulighed for hurtigt at skalere i henhold til den trafik, de modtager, samt bestemme, hvilke typer indhold der resonerer med deres læsere.

Hvordan bruger du det?

MongoDB er et fantastisk værktøj til web-, spil- og softwareudviklere. Vi ved, at det er hurtigt og skalerbart. Og vi ved, at det er let at læse og lære. Men hvordan bruger du det faktisk??

Det officielle MongoDB-websted giver brugerne mulighed for at prøve et MongoDB-shell i deres browsere. TutorialsPoint tilbyder flere meget detaljerede tutorials til brug af MongoDB, lige fra begyndere til avanceret. Der er også projekter på GitHub, ikke kun for kodere: 9 måder at bruge GitHub til kreativt arbejde ikke kun for kodere: 9 måder at bruge GitHub til kreativt arbejde GitHub er kendt for de gode funktioner, det kan tilbyde programmerere, men det er ikke kun for dem . Der er masser af andre kreative anvendelser til GitHub. Her er ni, du kan udforske. relateret til MongoDB, inklusive Den Lille MongoDB-bog af Karl Seguin, for næsten alt hvad du har brug for at vide om MongoDB.

Hvis du bare vil lære at installere MongoDB, skal du huske at tjekke denne tutorial fra det officielle MongoDB-websted.

Skal du bruge det?

Det afhænger af din individuelle situation.

Så stor som MongoDB er, er det ikke uden dets mangler. Det er ikke ACID-kompatibelt. ACID, der står for Atomicitet, konsistens, isolering og holdbarhed, er et sæt egenskaber, der sikrer, at databasetransaktioner, eller arbejde, der udføres i en database, behandles og udføres korrekt. NoSQL-databaser er undertiden ikke ACID-kompatible, hvilket begrænser deres produktivitet og pålidelighed.

MongoDB bruger også al tilgængelig hukommelse som en systemcache. Som et resultat er der ydelsesproblemer på computere, der kører på 32-bit-systemer, som kun kan adressere maksimalt 4 GB hukommelse. Hvis du vil lære mere om, hvordan du bruger RAM på din computer, skal du huske at tjekke denne artikel af Brad Jones, hvor meget RAM har du virkelig brug for? Hvor meget RAM har du virkelig brug for? RAM er som korttidshukommelse. Jo mere du multitasker, desto mere har du brug for. Find ud af, hvor meget din computer har, hvordan man får mest muligt ud af det, eller hvordan man får mere. .

Da der ikke er behov for tabeller med denne database, er der en stor risiko for, at udviklere er doven og skriver slurvet kode, men denne risiko gælder næsten alt. Du ender med duplikatdata, fordi der ikke er nogen mulighed for tilslutninger i systemet.

Ikke desto mindre er MongoDB et flammende hurtigt, effektivt system, der absolut kan hjælpe med at øge udviklerens produktivitet

MongoDB er også brugervenligt, idet det ikke kræver en samlet datastruktur for alle objekter, selvom det anbefales at indstille en, så den er nem at bruge. Strukturen af ​​dataene behøver ikke at være den samme i hele systemet, så en enestående stemme er ikke helt nødvendig.

Endelig, ifølge MakeUseOf-forfatter Matthew Hughes, skal din opstart have en blog. Her er, hvorfor din opstart skal have en blog. Her er hvorfor Her er nogle mere overbevisende grunde til, at din opstart ikke kan leve uden en blog. , MongoDB-teamet kører en fremragende blog med høj kvalitet, velskrevet teknisk indhold rettet mod et teknisk publikum.

Konklusion

Hvis du ikke har et system med en god mængde RAM, der ikke kan understøtte en stor database, eller du ikke rigtig ønsker at have en stor database overhovedet, er MongoDB ikke noget for dig. Det har en tendens til kun at sælge sig selv i stor skala. For mindre projekter er det sandsynligvis lettere at bruge RDBMS. Hvis du dog har brug for hastighed og lethed og kan understøtte systemet, er det måske værd at undersøge.

Har du nogen erfaring med MongoDB? Er du nysgerrig efter at prøve det? Efterlad en kommentar nedenfor, så taler vi!

Billedkreditter: “Forbindelse til MongoDB Shell” af Ularugeanina via Wikimedia Commons, “Mysql-skærmbillede” af Stephantom via Wikimedia Commons




Endnu ingen kommentarer

Om moderne teknologi, enkel og overkommelig.
Din guide i en verden af moderne teknologi. Lær hvordan du bruger de teknologier og gadgets, der omgiver os hver dag, og lær, hvordan du finder interessante ting på Internettet.