Hem Personliga finanser 10 Orsaker Utvecklare älskar NoSQL - dummies

10 Orsaker Utvecklare älskar NoSQL - dummies

Innehållsförteckning:

Video: The dawn of the age of holograms | Alex Kipman 2025

Video: The dawn of the age of holograms | Alex Kipman 2025
Anonim

Populariteten hos NoSQL-databaser härrör från det stora antalet utvecklare som är glada att använda dem. Utvecklare ser NoSQL som en möjlig och befriande teknik. Till skillnad från det traditionella relationella tillvägagångssättet ger NoSQL dig ett sätt att arbeta med data som ligger närmare applikationen än relationsdatamodellen.

Utvecklare antar NoSQL-teknik av många anledningar, varav några är markerade här:

Det går inte att skriva SQL

Skriva strukturerat fråge språk (SQL) - och göra det bra - är banan för många företagsutvecklare. Denna smärta beror på att det är inte lätt att skriva mycket komplexa frågor med flera anslag i relaterade tabeller. Dessutom, med tanke på regelbunden databasförändring över tid, är det ett jobb i sig själv att upprätthålla komplexa frågekoder.

Företagsutvecklare har uppfunnit ett antal sätt att undvika att skriva SQL. Ett av de mest populära sätten är genom användning av Objekt-Relational Mapping (ORM) biblioteket, Hibernate. Hibernate tar en konfigurationsfil och ett eller flera objekt och abstraherar bort den otäcka SQL så att utvecklare inte behöver använda den. Detta kommer till en kostnad i form av prestanda, och löser inte alla användningsfall för frågor. Ibland måste du komma tillbaka till SQL.

NoSQL-databaser ger sina egna fråge språk, som är anpassade till hur data hanteras av databasen och till de operationer som utvecklare oftast utför. Detta tillvägagångssätt ger en enklare sökmekanism än kapslade SQL-satser som gör.

Vissa NoSQL-databaser ger också ett SQL-gränssnitt för att fråga NoSQL-databaser, om utvecklare inte kan bryta SQL-vanan!

Behöver inte spendera månader utforma schema

Schema-agnosticism i NoSQL-databaser gör att du kan ladda data snabbt utan att behöva skapa ett relationsschema över en period av månader. Du behöver inte analysera framsidan varje enskild dataobjekt du behöver lagra i NoSQL, som du gör med en RDBMS.

Mindre datatransformationskod (ETL)

Ett vanligt problem med relationsdatabaser som kommer från att ha en schemaläggning på framsidan är att du måste tvinga icke-relationella data i rader och kolumner. Denna fragmenteringsmekanism, tillsammans med andra kodmetoder som förbehandlar information för lagring och efterprocess för återhämtning, kallas extrakt, transformera och ladda (ETL) .

Den här koden tvingar utvecklarna att ta sina snygga objekt och dokumentmodeller och skriva kod för att lagra varje sista element. Att göra det är otäckt och leder också till högkvalificerade utvecklare som skriver dåligt fungerande och ointressant VVS-kod.

Med NoSQL databaser kan du behålla de lagrade datastrukturerna mycket närmare sin ursprungliga form. Data som flyter in mellan system är vanligtvis i ett XML-format, medan det gäller webapplikationer formateras data i ett JSON-dokument. Att kunna lagra, hantera och söka Jons är en stor fördel för applikationsutvecklare.

Det är enklare att behålla koden

All kod som du skriver måste bibehållas. Genom att hålla databasstrukturer nära programkodens dataformat minimerar du mängden kod, som i sin tur minimerar underhållet av kod- och regressionstestning som du behöver göra över tiden.

När datastrukturer ändras på en RDBMS måste du granska all SQL-kod som kan använda de ändrade tabellerna. I NoSQL lägger du helt enkelt till stöd för de nya elementen, eller bara ignorerar dem! Mycket lättare att underhålla, tack vare schematisk agnostiska naturen hos NoSQL-databaser.

Kör koden nära data för bästa prestanda

En RDBMS tillhandahåller lagrade procedurer för körning av kod på en databasserver. Denna kod utförs på ett ställe. Denna användbara metod är grunden för många analytiska och komplexa datahanteringsapplikationer.

Många NoSQL-databaser tillåter att denna typ av kod distribueras över alla servrar som lagrar relevant data, vilket möjliggör en större parallellisering av arbetsbelastningen. Detta tillvägagångssätt är särskilt viktigt för stora intag av data som behöver bearbetning och för komplex aggregeringsanalys vid förfrågningstid.

Användardefinierade funktioner (UDF) och skript på serversidan i en mängd olika NoSQL-databaser ger denna distribuerade kapacitet. UDF: s liknar Hadops MapReduce-kapacitet, förutom att UDF kan hända i realtid i stället för i batch-läge och kräver inte samma utlägg i infrastruktur som Hadoop plus en databas skulle kräva.

Massor av öppna källalternativ

I många företagsprogramvaror saknas valet av en solid öppen källkodslösning. Endast en eller två utbredda alternativ kan finnas. Tillgängligheten av kompetens och lokalt stöd i landet är ännu större problem.

Det finns dock en myriad av NoSQL-databaser med öppen källkod. Många av dessa har fullfjädrada kommersiella företag som erbjuder stöd och har kontor globalt. Så om du behöver support eller fler funktioner kan du flytta till dessa versioner så småningom.

Detta minskar kostnaden för att anta NoSQL-teknik och låter dig "försöka innan du köper. "Denna tillgänglighet av open source-alternativ har lett till att kommersiella företag i NoSQL-rymden erbjuder gratis men välfungerade versioner av deras programvara eller att erbjuda speciella startlicenser till små organisationer.

Lätt att skala

Du behöver inte få en dyr DBA för att spendera dagar som refactoring SQL och skapa materialiserade visningar för att eeka varje tum av prestanda ur NoSQL-system.

Viktiga butiker kan hantera hundratusentals operationer per server. Alla typer av NoSQL kan skala horisontellt över relativt billiga råvararservrar.Så det är mycket lättare att skala din databaskluster med NoSQL än med traditionella relationsdatabaser.

Dessutom, på grund av sin förmåga att skala, passar NoSQL-databaser också bra in i offentliga och privata moln. NoSQL databaser är utformade för att vara flexibla och expandera och kontrakt som användningen för din ansökan förändring. Denna egenskap kallas ofta elasticitet .

Eventuell konsistensdatamodell

Även om missionskritiska fall kräver ACID-överensstämmelse, behöver inte varje applikation göra det. Att kunna slappna av konsistens över mycket stora kluster kan vara användbart för vissa applikationer.

Med NoSQL databaser kan du slappna av dessa hinder eller blanda och matcha stark konsistens och svag konsistens i samma databas, för olika skivtyper.

Esoteriskt språkstöd

Nästan alla databaser stöder de viktigaste programmeringsspråken som Java och C #. NETTO. Många databaser stöder liknande som PHP, Python och Ruby on Rails.

NoSQL har en blomstrande uppsättning språkdrivrutiner för ett ännu större utbud av programmeringsspråk. Om din organisation har ett domänspecifik språk kan du få stöd för det i en NoSQL-databas.

End-to-end-JavaScript för JavaScript

Användning av JavaScript har exploderat de senaste åren. Det är ett bekvämt skriptspråk både på webben och tack vare nod. js, på serverns sida.

Många NoSQL-databaser stöder nu fullständig end-to-end-JavaScript-utveckling. Det innebär att din organisation nu kan använda samma pool av programmeringsspråksförmåga för att skapa webbapplikationer och API-datorer för mellanslagsdata och affärslogik, samt hantera backend-databasutlösare och MapReduce-baserad analytisk bearbetning bredvid data.

Som ett resultat är den totala kostnaden för ägande (TCO) för NoSQL i jämförelse med andra databassteknologier lägre.

10 Orsaker Utvecklare älskar NoSQL - dummies

Redaktörens val

Vad är en Java-karta? - dummies

Vad är en Java-karta? - dummies

Arrays och specialiserade listor gör det möjligt att utföra en fantastisk uppsättning uppgifter med Java. Det finns dock situationer där en Java-applikation behöver något som är mer relaterat till en databas, utan att egentligen ha allt databasbagage (som att behöva köpa en separat applikation). Till exempel kanske du vill kunna ...

Några få saker om Java Math - dummies

Några få saker om Java Math - dummies

Tro det eller inte, datorer - även de mest kraftfulla - Ha vissa begränsningar när det gäller att utföra matematiska beräkningar. Dessa begränsningar är vanligtvis obetydliga, men ibland slår de sig och biter på dig. Här är de saker du behöver se upp för när du gör matte i Java. Helhetsflöde Det grundläggande problemet ...

Vad är recursion i Java Programmering? - dummies

Vad är recursion i Java Programmering? - dummies

Rekursion är en grundläggande programmeringsteknik som du kan använda i Java, där en metod kallar sig för att lösa ett problem. En metod som använder denna teknik är rekursiv. Många programmeringsproblem kan lösas endast genom rekursion, och vissa problem som kan lösas med andra tekniker löses bättre genom rekursion. En av ...

Redaktörens val

4 Måste-inkludera i din blogg sidobardesign - dummies

4 Måste-inkludera i din blogg sidobardesign - dummies

Din bloggens sidofält är viktig fastighet som bör innehålla de element du vill ha mest. När du utformar din blogg sidofält kan du dra från en nästan oändlig lista över sidospårelement. Genom att välja noggrant vad som ska inkluderas (och vad som inte ska inkluderas) kan du ställa in din blogg från andra.

5 Användbara Wordpress Plugins - dummies

5 Användbara Wordpress Plugins - dummies

Om du bloggar på en självhävd plattform med WordPress-programvara, är det dags att anpassa din blogg med plug-ins - programvara som kan "anslutas" till din befintliga WordPress bloggprogramvara. Plug-ins gör det möjligt för dig att göra allt från funktionsbildspel i dina blogginlägg för att ansluta sociala medier till din webbplats. Här är fem användbara ...

7 Sätt att erövra Writer's Block som en Blogger - dummies

7 Sätt att erövra Writer's Block som en Blogger - dummies

Varje bloggare möter författarens block i ett tid eller annan. Om du är den typ av bloggare som sköter innehåll varje dag, kan författarens block vara stäverande. Kan du inte ta en paus för att få ditt skrivande mojo tillbaka? Prova en (eller flera) av dessa sju sätt att slå författarens block för att få dig tillbaka ...

Redaktörens val

10 Stora elektronikkomponentkällor - dummies

10 Stora elektronikkomponentkällor - dummies

Letar du efter några bra källor till dina elektroniska delar? Denna lista ger dig några fleråriga favoriter, både inom och utanför Nordamerika. Denna lista är inte uttömmande. Du hittar bokstavligen tusentals specialutbud för ny och begagnad elektronik. Plus, Amazon och eBay ger virtuella marknadsplatser för alla sorters säljare - ...

Elektronik Basics: Resistance - dummies

Elektronik Basics: Resistance - dummies

I elektronikvärlden är motståndet inte meningslöst. Faktum är att motstånd kan vara mycket användbart. Utan motstånd skulle elektronik inte vara möjligt. Elektronik handlar om att manipulera strömmen av ström, och ett av de mest grundläggande sätten att manipulera strömmen är att minska det genom resistans. Utan motstånd strömmar strömmen oreglerad och där ...

Digital elektronik: Så här installerar du BASIC Stamp Editor och Anslut till Stämpeldummorna

Digital elektronik: Så här installerar du BASIC Stamp Editor och Anslut till Stämpeldummorna

För att berätta för BASIC Stamp vad du vill göra i ditt digitala elektronikprojekt måste du programmera det. BASIC Stamp Windows Editor är den programvara som du använder på din dator för att skapa program som kan laddas ner till en BASIC Stamp-mikrokontroller. Denna programvara är tillgänglig gratis från Parallax webbplats. ...