Är du och din verksamhet redo för Big Data?

2012-12-11 Artikelbanken Kravhantering Läst 10678 gånger

Big Data är ett nytt begrepp som man hör talas om i alla möjliga sammanhang inom vår bransch för tillfället. I denna artikel skall vi försöka reda ut begreppet och klargöra vad Big Data egentligen handlar om:

  • vad er verksamhet behöver fundera på
  • vilka användningsområden finns det för Big Data
  • teknikerna bakom Big Data
  • relationen till molnet
  • hur påverkas kravhantering och test
  • ge exempel på företag som hanterar Big Data i sin verksamhet

Man estimerar att volymen av verksamhetsdata världen över dubbleras ungefär varje år i dagsläget. Industrin kring Big Data i sig själv är värd mer än 100 miljarder dollar och växer med cirka 10 % per år, vilket är nästan dubbelt så snabbt som mjukvaruindustrin i helhet. Detta har medfört att bland annat Oracle, IBM, Microsoft, SAP och HP har spenderat mer än 15 miljarder dollar i mjukvaruföretag som endast specialiserar sig på datahantering och analys.

 

Data produceras idag i mycket stora volymer inte minst ifrån exempelvis smartphones, tablets, digitalkameror och videokameror. Men data produceras även av digitala sensorer, som finns inbäddade i bilar (RFID), oljeledningar, elledningar, vägar, trafikljus, vattenledningar, sjukhusinstrument, skogsindustrin med mera. Extremt stora datamängder produceras genom sociala medier som Twitter, Facebook, LinkedIn och vanliga Googlesökningar. Big Data skiljer sig från den traditionella datahanteringen genom att det mesta av informationen bearbetas i realtid. Man brukar säga att begreppet Big Data är tredelad och består av Volym, Variation och Hastighet:

  • Volym - Det är många faktorer som bidrar till att öka mängden datavolym. Det handlar om transaktionsbaserad data som ett företag lagrar under många år, men även textbaserad data som konstant strömmar in från bland annat social media. För några år sedan skapade en överdriven datamängd lagringsproblem för företag. Men i och med att lagringskostnader blir billigare dyker andra problem upp. Exempelvis hur företag ska kunna besluta om vad som är relevant och inte, samt hur ett värde skapas av den informationen.

  • Variation - Data består idag av alla typer av format. Strukturerad, ostrukturerad så som textdokument, e-post, video, musik, finansiella transaktioner och spårning av personers positioner. Oavsett typ av information så behöver den ändå inkluderas i analysarbetet för att kunna användas som beslutsunderlag.

  • Hastighet - både hur snabbt informationen kan produceras och hur snabbt data måste bearbetas för att möta efterfrågan. Tekniker som RFID och "Smart Mätning" driver behovet av att hantera data nästintill i realtid. Att reagera tillräckligt snabbt är idag en stor utmaning för de flesta företag.

 

Vad er verksamhet behöver fundera på

Många organisationer är oroliga eftersom mängden insamlad information börjar bli så stor att det är svårt att hitta vilka delmängder av informationen som faktiskt är viktig. Vad händer när mängden information blivit så stor och varierad att verksamheten faktiskt inte längre vet vad man skall göra med den? Ska vi verkligen lagra all information? Analyserar vi egentligen all information? Hur ska vi göra för att använda informationen på rätt sätt?

De verksamheter som hanterar Big Data internt, har fram tills helt nyligen varit begränsade eftersom volymen på informationen inte kunnat hanteras på ett bra sätt av verksamhetens hård- eller mjukvara. De har därför fått välja på att använda endast delmängder av data eller enklare former av analyser.

Man kan då fråga sig vad det är för poäng med att spara extrema mängder data om det inte går att analysera dess innehåll? Eller måste vänta i timmar, kanske dagar för att få ett resultat? Det finns två val att göra när det gäller den nya tekniken:

  • Inkludera all tillgänglig data i analysarbetet, om det är vad som behövs för att få bättre svar till verksamhetens beslut. Det är idag inget problem att analysera all data, tekniken och kunnandet för att hantera och plocka ut informationsvärdet av Big Data finns redan tillgänglig. Det finns även möjlighet att lägga ut hanteringen till en extern molntjänst, hos företag som är specialiserade inom Big Data och därmed behöver inte verksamheten hantera det i egen regi.

 

  • Inkludera endast relevant information. Det är egentligen först när man efterfrågar informationen som det upptäcks ifall informationen är relevant eller inte. Det finns idag verktyg man kan använda som analyserar data ni har, baserat på innehållet. Resultatet av denna analys kan sedan användas för att fatta beslut för att endast spara och lagra data som anses betydelsefull för verksamheten.

Utvecklingen mot Big Data har skapat ett behov för olika verksamheter att införskaffa mjukvara som kan analysera och manipulera stora datamängder snabbt. Eftersom det ger möjlighet att förbättra beslutsunderlagen och därmed skapa nya insikter om marknaden och kunder och på så vis kunna optimera sin egen verksamhet. Med andra ord är alltså Big Data en informationstillgång som kräver nya former av bearbetning för att kunna användas på rätt sätt.

 

Vilka användningsområden finns det för Big Data

Problemet handlar inte längre om hur man kan samla och lagra extremt stora mängder av data, eftersom både kunskap och teknik finns för detta. Det handlar istället om vad verksamheten gör med Big Data. Det är det som betyder något idag. Det man önskar är att utifrån den samlade datamängden ska det vara möjligt att plocka ut relevant data och använda sig av detta för att fatta de bästa besluten. Genom analys av Big Data är det exempelvis möjligt att:

  • Utvinna kunddata för att få insikter som kan driva fram nya strategier i arbete med att skaffa nya kunder, uppgifter, riktad reklam eller kampanjoptimering.
  • Snabbt identifiera vilka kunder som är de mest värdefulla.
  • Generera merförsäljning vid ett onlineköp, baserat på kundens pågående köp och tidigare köp.
  • Skicka skräddarsydda erbjudanden till mobiler som befinner sig inom ett visst område, i precis rätt ögonblick. Exempelvis när en möjlig kund befinner sig 100 meter från en restaurang så kan det skickas ett erbjudande om att äta en rabatterad lunch där.
  • Analysera data från social media för att bättre följa marknadstrender och förändringar i vad människor vill ha.

 

Vilka tekniker behöver man behärska för att hantera Big Data?

För att verkligen kunna förstå hur Big Data fungerar, behöver man förstå teknologin bakom. Det handlar om att stora datamängder lagras distribuerat i ett koppel av noder. De tekniker som är av störst vikt är MapReduce och NoSQL. Vi kommer inte gå på djupet utan hålla oss till en generell förklaring över vad det är som gör att det numera går att analysera extremt stora datamängder.

  • MapReduce är en programmeringsmodell utvecklad av Google med syftet att processa stora mängder data. Om du exempelvis vill utföra beräkningar på stora datamängder kommer du troligtvis behöva använda dig av MapReduce. Funktionen är att den bryter ner arbetet i delmängder, där samtliga delmängder kan hanteras individuellt och oberoende. Delmängdernas svar slås ihop och tillsammans utgör de resultatet. Individuellt och oberoende är det som gör MapReduce speciellt. Arbetsuppgifter kan då fördelas över flera maskiner, vilket ger möjligheten att använda sig av dynamiska datamoln för att skala upp eller ner beroende på mängden data.

  • NoSQL (Not Only SQL) refererar till en mängd databastekniker som skiljer sig från det traditionella sättet att lagra data på ett strukturerat vis. I NoSQL-databaser lägger man tonvikten på att snabbt lagra och läsa extrema mängder data. Som kompromiss så tappar de en del i överenstämmelse i datatillgängligheten eftersom det tar lite tid för data att landa i samtliga servrar. I verksamheten bör man därför fundera på om det är viktigt att kunna efterfråga ny data i samma ögonblick som den är tillagd i databasen.

 

Big Data i Molnet

En stor möjlighet med Big Data är att man kan använda sig av en molnbaserad hantering. Vilket medför att man enkelt kan utnyttja skalbara resurser, exempelvis processorkraft, lagring och funktioner antingen i den egna verksamheten men även som tjänster som tillhandahålls externt av företag specialiserade på tekniken, vilket medför att verksamheten i sig inte behöver ha den tekniska kunskapen eller kontrollen över infrastrukturen för att kunna utnyttja Big Data. Det finns redan ett stort antal företag som erbjuder Big Data-lösningar i molnet till kunder.

Vissa molntjänstleverantörer riktar sig mot den tekniska delen genom att erbjuda hantering och analysverktyg medan andra riktar sig mer mot servicesidan som kan inkludera dataförberedelse, lagring och sammanslagning av olika datakällor. Den största fördelen med en sådan inriktning är att man frigör resurser. Datalagring blir allt svårare att hantera och kan vara en enorm utmaning för verksamheten. En extern molnbaserad hantering erbjuder en lösning på detta. Många organisationer kommer framöver, välja att jobba med hybridlösningar med både molnbaserad lagring och lokalt sparad data. Framförallt är det viktigt att bygga Big Data-lösningar som är tillräckligt flexibla för att möta kundernas krav.

Det man bör veta innan man gör valet mellan ett internt alternativ och en extern molnbaserad lösning är att Big Data kräver en mängd avancerade teknologier, kunskap och investeringar. Därför bör man ställa sig frågan om man verkligen vill hantera detta inom den egna verksamheten.

 

Kravhantering och Test av Big Data

Kravhanteringen är i stort sett oförändrad. Kravhanteringen kommer att behöva lägga mycket fokus på skalbarhet och andra typer av icke-funktionella krav. När det gäller test krävs det att testaren är extremt teknisk. Förutom kunskap i tekniken så är det en stor fördel att ha kunskap i hur man skriver sina egna MapReduce-program och behärskar något scriptspråk. Det viktigaste kravet inom Big Data är skalbarhet, då detta krav påverkar hela lösningens arkitektur. Då volymen på informationsmängden är ständigt växande behöver lösningen vara skalbar. Oavsett datamängd ska det vara möjligt att hantera detta genom att lägga till nya noder. Big Data-volymer är resistenta på så vis att det inte får existera någon form av ”single point of failure”. Ifall en nod i molnet går ner tar de andra noderna över arbetet från den fallerade noden.

Analys och bearbetning sker parallellt över alla noder och man behöver ställa krav på hur lösningen ska hantera strömmande data, i realtid eller med några minuters fördröjning. Krav behöver också ställas över hur analyserna ska användas, till förutbestämda frågor eller om tillgänglig data ska utforskas och därför vara enkelt att konfigurera för nya analyser.

Man behöver även ha möjlighet att slå samman data över tid. Big Data är för stort för hanteras i en backup. Flytt av data ska hållas till ett minimum och förändringar bör versionshanteras istället för att man tar backup på hela volymen data vid varje förändring. Som testare av Big Data kommer man mestadels att arbeta med ostrukturerad och semi-strukturerad data. Testaren behöver söka fram olika möjliga indata och härleda detta till given datakälla där sökning görs dynamiskt. När det kommer till validering av den faktiska informationen har man möjlighet att använda sig av stickprover manuellt eller automatiserat. Men då det handlar om sådana stora volymer av data kan även stickprover bli svåra att kontrollera. När det gäller verktyg för att stödja testaren ligger branschen fortfarande i sin linda och det finns fortfarande mycket som behöver göras.

Big Data är med andra ord en enorm utmaning för testaren. Kunskap inom data warehouse på en grundläggande nivå kommer att korta ner inlärningstiden.

 

Exempel på företag som hanterar Big Data

  • Wallmart hanterar mer än 1 miljon kundtransaktioner varje timme, vilket importeras in i databaser som man estimerar innehåller mer än 2.5 petabytes (1 petabyte = 1000 terabyte) data.
  • Facebook hanterar mer än 40 miljarder foton från deras användare
  • FICO skyddar mer än 2.1 miljarder aktiva konton världen över
  • Twitters användare skickar 340 miljoner tweets varje dag. Det är närmare 4000 tweets per sekund.

 

Sammanfattning

Big Data har blivit en populär term som används för att beskriva den exceptionellt snabba tillväxten, tillgängligheten och användandet av information, både strukturerad och ostrukturerad.

Det är svårt att hantera Big Data i traditionella relationsdatabaser med enkel statistik och enkla visualiseringssystem. Big Data kräver mjukvara som kan köras parallellt på ibland tusentals servrar, med arbetsuppgifter som är individuella, oberoende och skalbara. Vad man betraktar som Big Data beror mycket på vilken kapacitet som verksamheten har att hantera stora datamängder. Vissa verksamheter kan behöva ompröva sin informationshantering första gången redan vid ett par 100 gigabytes. För andra krävs det kanske flera hundra terabytes innan mängden information blir ett problem.

Big Data är även en stor utmaning för kravhantering och framförallt test, då verktyg för att hantera och analysera Big Data fortfarande är i sin linda. Man behöver behärska de olika teknikerna och förstå innebörden med olika förändringar. För testaren krävs det en extremt teknisk kompetens då det ännu inte existerar lätthanterliga testverktyg. Förutom kunskap kring begreppen och teknikerna som sådana, är det en stor fördel om testaren även har en förståelse för både scriptning, programmering och data warehouse.

KONTAKTA OSS

Har du frågor? Vill du ha hjälp med områden inom kravhantering och test?
Hör av dig till oss! Vi hjälper dig gärna. 

Kontakt 

Dela artikeln