Indholdsfortegnelse:
Video: Chris watts documentary (FULL MOVIE) 2025
Du finder to slags dokumentdatabaser til store dataprojekter. Den ene er ofte beskrevet som et lager for fuld dokumentformat indhold. Den anden er en database til lagring af dokumentkomponenter til permanent lagring som en statisk enhed eller til dynamisk samling af dele af et dokument. Dokumenternes struktur og deres dele leveres af JavaScript Object Notation (JSON) og / eller Binary JSON (BSON).
Dokumentdatabaser er mest nyttige, når du skal producere mange rapporter, og de skal dynamisk samles fra elementer, der ændrer sig ofte.
JSON er et data-udvekslingsformat baseret på en delmængde af JavaScript-programmeringssproget. Selv om det er en del af et programmeringssprog, er det tekstmæssigt og meget nemt at læse og skrive. Det har også den fordel, at det er nemt at få computere til at håndtere. Der findes to grundlæggende strukturer i JSON, og de understøttes af mange, om ikke alle, moderne programmeringssprog.
Den første grundlæggende struktur er en samling af navn / værdi par, og de er repræsenteret programmatisk som objekter, optegnelser, nøgleord og så videre. Den anden grundlæggende struktur er en ordnet liste over værdier, og de er repræsenteret programmatisk som arrayer, lister eller sekvenser. BSON er en binær serialisering af JSON strukturer designet til at øge ydeevnen og skalerbarheden.
MongoDB for store data
MongoDB er projektnavnet til "hu (mongo) us database" -systemet. Det opretholdes af et firma kaldet 10gen som open source og er frit tilgængelig under GNU AGPL v3. 0 licens. Kommercielle licenser med fuld support er tilgængelige fra 10gen.
MongoDB består af databaser indeholdende "samlinger. "En samling består af" dokumenter ", og hvert dokument er sammensat af felter. Ligesom i relationelle databaser kan du indeksere en samling.
Hvis du gør det, øges dataudviklingen. I modsætning til andre databaser returnerer MongoDB imidlertid noget, der hedder en "markør", som tjener som en peger på dataene. Dette er en meget nyttig funktion, fordi den giver mulighed for at tælle eller klassificere dataene uden at udvinde det. MongoDB støtter indbygget BSON, den binære implementering af JSON-dokumenter.
MongoDB er også et økosystem bestående af følgende elementer:
-
Højtilgængelighed og replikeringstjenester til skalering på tværs af lokale og store netværk.
-
Et gitterbaseret filsystem, der gør det muligt at lagre store objekter ved at dele dem mellem flere dokumenter.
-
MapReduce for at understøtte analyser og aggregering af forskellige samlinger / dokumenter.
-
En sharding-tjeneste, der distribuerer en enkelt database på tværs af en klynge af servere i en enkelt eller i flere datacentre. Tjenesten drives af en shard-nøgle. Shard-tasten bruges til at distribuere dokumenter intelligent på tværs af flere forekomster.
-
En forespørgselsservice, der understøtter ad hoc-forespørgsler, distribuerede forespørgsler og fuldtekstsøgning.
Effektive MongoDB implementeringer omfatter
-
Styring af indhold i høj volumen
-
Social networking
-
Arkivering
-
Realtidsanalyse
CouchDB til store data
En anden meget populær ikke-relationel database er CouchDB. Som MongoDB er CouchDB open source. Den opretholdes af Apache Software Foundation og stilles til rådighed under Apache License v2. 0. I modsætning til MongoDB blev CouchDB designet til at efterligne nettet i alle henseender.
CouchDB er f.eks. Elastisk til netværksudfald og vil fortsætte med at fungere smukt i områder, hvor netværksforbindelsen er plettet. Det er også hjemme på en smartphone eller i et datacenter. Det hele kommer med et par trade-offs. På grund af den underliggende webmimicry er CouchDB høj latens, hvilket resulterer i en præference for lokal datalagring.
CouchDB er ikke velegnet til mindre implementeringer. Du skal afgøre, om disse afvejninger kan ignoreres, når du begynder din store dataimplementering.
CouchDB databaser består af dokumenter, der består af felter og vedhæftede filer samt en "beskrivelse" af dokumentet i form af metadata, som automatisk vedligeholdes af systemet. Den underliggende teknologi har alle ACID-muligheder. Fordelen i CouchDB over relational er, at dataene er pakket og klar til manipulation eller opbevaring i stedet for spredt over rækker og tabeller.
CouchDB er også et økosystem med følgende muligheder:
-
Komprimering: Databaserne komprimeres for at eliminere spildt plads, når et vist tomrum er nået. Dette hjælper ydeevne og effektivitet for vedholdenhed.
-
Vis model: En mekanisme til filtrering, organisering og rapportering af data ved hjælp af et sæt definitioner, der er gemt som dokumenter i databasen. Du finder et et-til-mange forhold mellem databaser til visninger, så du kan oprette mange forskellige måder at repræsentere de data, du har "skåret og krydset. "
-
Replikation og distribuerede tjenester: Dokumentlager er designet til at give tovejsreplikation. Delvise replikaer kan opretholdes for at understøtte kriteriebaseret distribution eller migration til enheder med begrænset tilslutning. Native replikation er peer-baseret, men du kan implementere Master / Slave, Master / Master og andre typer replikationsmodaliteter.
Effektive CouchDB implementeringer inkluderer
-
Styring af høj lydstyrke
-
Skalering fra smartphone til datacenter
-
Programmer med begrænset eller langsom netværkstilslutning