Innehållsförteckning:
Video: Web Programming - Computer Science for Business Leaders 2016 2024
Tid för värde är den tid som krävs från att starta ett IT-projekt för att kunna uppnå affärsförmåner. Det kan vara konkreta fördelar med kostnadsminskning eller förmågan att handla om nya affärer eller immateriella fördelar som att tillhandahålla bättre kundservice eller produkter.
Viktiga butiker är de enklaste NoSQL-databaserna med avseende på datamodell. Så du kan snabbt bygga applikationer, speciellt om du tillämpar några nyckelprinciper, bland annat genom att granska hur du hanterar datastrukturer.
Använda enkla strukturer
Nyckelfärdiga butiker är mer flexibla än relationella databaser när det gäller formatet av data. Använd denna flexibilitet till din fördel för att maximera hastigheten på din applikations genomströmning. Om du till exempel lagrar kartor, lagrar du dem i hex-format så att de kan visas omedelbart i en webbläsare.
I din ansökan, lagra lättanvända strukturer som inte kräver många behandlingstider. Dessa strukturer kan vara enkla inneboende typer som heltal, strängar och datum eller mer sofistikerade strukturer som listor, sorterade uppsättningar eller till och med JSON-dokument som lagras som en sträng.
Eftersom det kan tolkas direkt av en JavaScript-webbapplikation, använder du JSON för enkel webappstatus eller preferenslagring. Om du lagrar loggdata, lagra den i det format som är mest lämpat för hämtning och analys.
Använd den lämpligaste strukturen för din ansökan, inte din databasadministratör. Tänk också på effekterna av tid på din databas. Vill du ändra datastrukturer i framtiden för att stödja nya funktioner?
Datastrukturer förändras över tiden. Ett flexibelt JSON-dokument är bättre än en CSV-datafil eller datafil med fast bredd eftersom JSON-strukturer enkelt kan variera över tiden utan att behöva överväga nya eller borttagna egenskaper. Ändra en kolumn i en CSV-fil som är lagrad i en nyckelvärdesbutik, och du måste uppdatera all programmets kod! Det här är inte fallet med ett JSON-dokument, där äldre kod helt enkelt ignorerar nya egenskaper.
Komplex strukturhantering
Om du har komplexa sammankopplade datasatser, var noga med att tänka på datastrukturerna i din viktiga butik. Spara dataset på ett sätt som möjliggör enkel hämtning. Snarare än att lagra åtta objekt separat för att behöva åtta läser, deformalisera data - skriv data till samma post vid intagstid - så att endast en läs behövs senare.
Det betyder att vissa data kommer att lagras flera gånger. Ett exempel är att lagra kundnamnet i ett orderdokument.Även om detta lagrar kundnamnet över många beställningar betyder det när du visar en sammanfattning av den order du inte behöver upptäcka att värdet customer_number = 12 betyder Mr A Fowler - förebyggande en ytterligare läsförfrågan.
Denormalisering förbrukar mer diskutrymme än relationella databaser normal form , men ökar avsevärt genomströmning. Det är NoSQL som motsvarar en materialiserad vy i en relationsdatabas. Du offrar lagringsutrymme för hastighet - den klassiska datorvetenskapliga avhandlingen.
För datavetenskapare av en viss generation anses det som kätteri att hålla flera kopior av samma data. Det är helt enkelt ineffektivt. Relationella databasföreläsare skulle äta dig till frukost!
Men med den nuvarande låga lagringsutrymmet och de ökande kraven i moderna applikationer är det mycket bättre att offra lagring för snabbhet vid läsning av data. Så, överväga denormalisering som en vän.