Video: Learning iOS: Create your own app with Objective-C! by Tianyu Liu 2025
NoSQL-databaser er ikke begrenset til en rad-og-kolonne-tilnærming. De er designet for å håndtere et stort utvalg av data, inkludert data hvis struktur endres over tid, og hvis sammenhenger ikke er kjent ennå.
NoSQL-databaser kommer i fire kjernetyper - en for hver datatype databasen forventes å administrere:
-
Columnar: Utvidelse til tradisjonelle bordstrukturer. Støtter variable sett med kolonner (kolonnefamilier) og er optimalisert for kolonnebrede operasjoner (for eksempel telling, sum og gjennomsnittlig gjennomsnitt).
-
Nøkkelverdi: En veldig enkel struktur. Sett med navngitte nøkler og deres verdi (er), vanligvis en ufortolket del av data. Noen ganger kan denne enkle verdien faktisk være et JSON- eller binært dokument.
-
Tredobbelt: Et enkelt faktum representert av tre elementer:
-
Emnet du beskriver
-
Navnet på egenskapen eller forholdet til et annet emne
-
Verdien - enten en egenverdi som et heltall) eller den unike IDen til et annet emne (hvis det er et forhold)
Adam liker for eksempel ost. Adam er emnet, liker er predikatet, og ost er objektet.
-
-
Dokument: XML, JSON, tekst eller binær blob. Enhver treelike struktur kan representeres som et XML- eller JSON-dokument, inkludert ting som en ordre som inneholder en leveringsadresse, faktureringsdetaljer og en liste over produkter og mengder.
Noen dokument NoSQL-databaser støtter lagring av en egen liste (eller dokument) av egenskaper om dokumentet også.
De fleste dataproblemer kan beskrives i forhold til de foregående datastrukturene. Faktisk, nesten alle dataprogrammer noensinne skrevet faller inn i disse kategoriene. Det er derfor viktig å forstå hvordan du best kan lagre, hente og spørre dataene.
Den gode nyheten er at det nå er et sett med databaser for å kunne administrere hver annen type data, slik at du ikke trenger å kutte data i et fast relasjonsskjema (shred betyr at konvertere komplekse datastrukturer til enkel utmerkelse som bordstrukturer med relasjoner, som alltid har virket som feil ting å gjøre).
I tillegg til de forrige NoSQL datatyper, er det to andre utviklinger som er verdt å nevne:
-
Søkemotorer: Hvis du lagrer informasjon som har en variabel struktur eller rikelig tekst, trenger du en felles måte over strukturer for å finne relevant informasjon, hvilke søkemotorer gir.
-
Hybrid NoSQL-databaser: Disse databasene gir en blanding av kjernegenskapene i flere NoSQL-databasetyper - for eksempel nøkkelverdier, dokumenter og trippelbutikker - alt i samme produkt.
Flere søkemotorer og hybriddatabaser gjelder generelle temaer som er tilstede i NoSQL-produkter, nemlig å tillate variabel datatyper og være horisontalt skalerbar på råvarehardware. Den interne utformingen av søkemotorer og hybrid NoSQL-databaser er like og komplementære.
