Big Data is de afgelopen jaren uitgegroeid tot een containerbegrip. Maar hoe zet men dit in de praktijk in. De grootste speler is momenteel ElasticSearch.
Om de kracht van ElasticSearch te laten zien hebben we een case opgezet op basis van een “openbare” dataset.
Wikipedia: Men spreekt van big data wanneer men werkt met een of meer datasets die te groot zijn om met reguliere databasemanagementsystemen onderhouden te worden. Big data spelen een steeds grotere rol. De hoeveelheid data die opgeslagen wordt, groeit exponentieel.
Bedrijven en overheidsinstellingen verzamelen steeds meer data van klanten / gebruikers. Met deze data willen ze trends kunnen zien en conclusies kunnen trekken om daar vervolgens op te kunnen sturen.
Nu blijft het in de praktijk vaak enkel bij het verzamelen van data. De data bestaat veelal uit verschillende bronnen en formaten, denk hierbij aan Excelsheets, PDFs, emails, gebruikersgegevens etc.
Er zijn 2 obstakels in Big Data. De informatiestromen (datasets) komen van verschillende bronnen, en dus verschillende formaten. En ten tweede, hoe wordt de data weergegeven om het te kunnen interpreteren. Hoe kom je immers tot conclusies.
Voor deze case hebben we gekozen voor ElasticSearch. Elasticsearch is een “document oriented” database. Het is kort samengevat een zeer flexibele database, geschikt voor grote datasets. ElasticSearch, gebaseerd op Lucene, is de populairste enterprise search engine op dit moment, gevolgd door Apache SOLR.
Voor deze case hebben we een dataset gekozen welke tot de verbeelding spreekt en waar we qua formaat althans ook veel mee te maken krijgen. We hebben de emails van Hillary Clinton van Wikileaks gebruikt voor deze case. De dataset bestaat uit 22300 emails. We gebruiken een enkele dataset in deze case.
Met enkele Python scripts hebben we de emails geconverteerd naar JSON en vervolgens hebben we via de REST-api de dataset ingelezen.
Om een visuele representatie van de data te maken hebben we gekozen voor Kibana. Kibana is net als ElasticSearch een open-source pakket. Met Kibana kun je eenvoudig een query testen en grafieken van plotten.
Op basis van de data uit de emails hebben we een aantal grafieken gemaakt.
Meteen valt bij deze grafieken op hoeveel mails er het keyword “trump” bevatten. Ook zien we “election” en “iraq” veel voorkomen. Ter vermaak hebben we ook onzinnige keywords toegevoegd zoals “funny” en “hair”.
Met Kibana kan men eenvoudig filteren op de dataset door te klikken op b.v. “trump”, “funny” en “hair”. Enkel de data die aan die 3 criteria matcht wordt gebruikt voor de nieuwe grafieken.
En met 3 klikken wordt in een fractie van een sec getoond dat er toch een aantal hits op deze opmerkelijke query zijn. Men kan vliegensvlug filteren / zoeken door deze grote berg mails.
Met ElasticSearch en Kibana kun je eenvoudig grote hoeveelheden data inzichtelijk maken. In deze case hebben we een statische dataset gebruikt. Bij meerdere realtime datasets komt het nog beter tot z’n recht.
Wil je meer weten over de mogelijkheden van ElasticSearch en Big Data in de praktijk? Neem dan contact met ons op.