2013
Organisatie: Aorta Business Intelligence Auteur: Stefan van Iersel Versie: 1.0 Datum: 27-3-2013
[BIJLAGEN BUNDEL]
De kracht van Endeca met ongestructureerde Data
Bijlage bundel De kracht van Endeca met ongestructureerde Data
Student: Stefan van Iersel
Studentnummer: 2030592
Email: [email protected]
Organisatie: Aorta Business Intelligence te Waalwijk
Bedrijfsbegeleider: Marco Snels
Docentbegeleider: Jelle Alkema
Datum: 27-3-2013
School: Avans Hogeschool te Breda
Academie: Academie voor ICT en Business
Opleiding: Business IT & Management
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 1
INHOUDSOPGAVE
Bijlage 1 Literatuuronderzoek ................................................................................................................................. 2
Bijlage 2 Handleiding Opnemen twitter met DataSift ........................................................................................... 12
Bijlage 3 Handleiding Content Acquisition System(CAS) ....................................................................................... 24
Bijlage 4 ETL Graphs .............................................................................................................................................. 37
Bijlage 5 Gebruikte QUERY’S ................................................................................................................................. 42
Bijlage 6 Gestructureerde data ............................................................................................................................. 46
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 2
BIJLAGE 1 LITERATUURONDERZOEK
Voordat er een begin wordt gemaakt met het technische aspect, vindt er eerst een literatuuronderzoek plaats
om meer informatie te verzamelen over wat alles inhoudt en hoe het in zijn werk gaat. Dit onderzoek heeft als
doel meer kennis op te doen over de verschillende onderdelen die betrekking hebben tot de opdracht. Door
deze voor informatie is het makkelijker om het technisch onderzoek uit te voeren omdat verschillende termen
en functionaliteiten uitgelegd zijn. Dit onderzoek geeft de afstudeerder meer informatie om het vervolg sneller
en makkelijker te laten verlopen. Tevens dient dit onderzoek om het bedrijf meer informatie te geven over de
gekozen software die, voor de uitvoering van de opdracht, verreist zijn.
ORACLE ENDECA INFORMATION DISCOVERY (OEID)
Om meer over het Endeca product te weten te komen en hoe het in de praktijk toegepast kan worden, is er
een indeling gemaakt van vier hoofdstukken.
Wat is Oracle Endeca?
Wat houdt de Endeca MDEX Engine in?
Hoe kan Oracle Endeca toegepast worden met Oracle Business Intelligence en datawarehousing?
Hoe ontwikkel je een dashboard met Endeca?
Wat zijn sterdiagrammen & query’s?
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 3
WAT IS ENDECA?
Endeca is een bedrijf dat in 1999 is opgericht. In deze tijd heeft Endeca zich voornamelijk gericht op de e-
commerce markt waar ze de technologie achter websites maakten. Deze technologie is het gefilterd zoeken. Bij
de traditionele manier van e-commerce moet de eindgebruiker van boven af aan beginnen met het klikken
door een beperkt aantal onderdelen. Bezoekers van websites die Endeca technologie gebruiken kunnen
gefilterd zoeken. Gefilterd zoeken laat links van een webpagina dimensies en attributen zien, zoals prijsklasse
of merk, waarna eindgebruikers deze kunnen selecteren om de zoekopdracht kleiner te maken. Endeca heeft
vervolgens de MDEX engine ontwikkeld die het gefilterd zoeken ondersteund.
Een paar jaar geleden is Endeca begonnen met het ontwikkelingen van een standalone Business Intelligence
tool genaamd Endeca Latitude. Deze tool maakt het mogelijk om dashboards te ontwikkelen op
gestructureerde, semigestructureerde en ongestructureerde data waarmee eindgebruikers gefilterd kunnen
zoeken in deze data. Toen Oracle Endeca overnam was dit hun laatste productlijn. Endeca latitude ( nu
genaamd: Oracle Endeca Information Discovery) bestaat uit drie componenten:
Endeca Studio: Gebruikt voor het ontwikkelen van dashboards.
Endeca Integrator: ETL: Extraction,Transformation and load. Dit betekend dat uit een gestructureerde
of ongestructureerde bon data gehaald wordt (extract) en vervolgens omgezet of samengevoegd
(transform) in de Endeca Server geladen wordt (load).
Endeca Server: Opslag waar alle data bi elkaar komt.
WAT HOUDT DE ENDECA MDEX ENGINE IN?
Allereerst kijken we naar de essentie van de MDEX Engine (tegenwoordig Endeca Server) en vergelijken we de
engine met een Oracle database. De Oracle database is ontwikkeld om grote hoeveelheden detail-data op te
slaan en deze ook weer snel uit te lezen. MDEX is ontwikkelt om Endeca te ondersteunen in het zoeken en
ontdekken van data en dit op een snelle manier aan de eindgebruiker te laten zien. Endeca positioneert de
MDEX als een hybride zoek en analyse database, dat ontwikkeld is voor het analyseren van snel groeiende en
veranderende data afkomstig uit allerlei soorten bronnen, zoals een datawarehouse, CRM systemen en/of
social media bronnen.
HOE KAN ORACLE ENDECA TOEGEPAST WORDEN MET ORACLE BUSINESS INTELLIGENCE EN
DATAWAREHOUSING?
Oracle heeft een grote productlijn dat vooral gericht is op gestructureerde data. Bij het kopen van Endeca was
het doel al vrij duidelijk. De Endeca technologie voegt ondersteuning toe voor ongestructureerde data wat
gecombineerd kan worden met het gestructureerde deel.
Er zijn verschillende manieren hoe Endeca toegepast kan worden op het product lijn van Oracle. Het meest
interessante is om OBIEE (Oracle BI) data in de Endeca server te laden samen met andere gestructureerde en
ongestructureerde data. Hierop vervolgens een dashboard te bouwen om door deze data te zoeken via de
gefilterde zoek methode, tag clouds, grafieken, social media berichten enz. Dit allemaal op een snelle,
interactieve en dynamische manier.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 4
HOE ONTWIKKEL JE EEN DASHBOARD MET ENDECA?
Voor het ontwikkelen van een dashboard wordt er gebruik gemaakt van de Oracle Endeca Information
Discovery Studio applicatie. Het bouwen van een dashboard met OEID Studio werkt sneller dan de traditionele
BI ontwikkel methodes. Op een simpele manier kan er een dashboard gebouwd en data gemodelleerd worden.
Een standaard procedure van de ontwikkeling van een dashboard is:
- Data inladen in de MDEX engine;
- Web service gebruiken om MDEX record schema te configureren;
- Maken van een applicatie/dashboard
- Tot slot kan je via web services, monitoring en backups instellen.
Via de Endeca integrator kan er data in de MDEX engine geladen worden. Gebaseerd op de opensource
applicatie CloverETL. De afbeelding hieronder laat verschillende objecten zien die met elkaar zijn verbonden via
links. Dit wordt ook wel een “graph” genoemd.
Wanneer de data in de MDEX engine staat, kan vervolgens een begin gemaakt worden met het realiseren van
het dashboard in OEID Studio. In OEID Studio worden kollommen en attributen toegevoegd om de lay-out en
het gefilterd zoeken op het dashboard te plaatsen. Daarna ga je visuele componenten plaatsen, die worden
aangepast doormiddel van een query.
Afbeelding 1 Voorbeeld graph
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 5
STERDIAGRAMMEN EN QUERY’S
Om de data in de integrator te laden is het van belang om te weten hoe alles gekoppeld moet en kan worden.
Oracle is een groot voorstander van deze simpele sterdiagram methode en gebruikt dit dan in zijn business
intelligence producten. Oracle Endeca slaat alle data op het laagste niveau plat en laadt het vervolgens als 1
grote tabel in de Endeca server.
Een sterschema (star schema) kan gezien worden als één van de simpelste data warehouse schema’s. Een ster
schema heeft zijn naam gekregen omdat het midden bestaat uit een fact tabel met daaromheen dimensie
tabellen.(Afbeelding 2)
Afbeelding 2 Sterdiagram
Een fact tabel (feitentabel) bestaat meestal uit twee type kolommen. Een primaire sleutel die naar de
verschillende dimensies gekoppeld is en een kolom met meetwaarden. Deze meetwaarden zijn vaak numeriek.
Hierbij is te denken aan sales dollars of aan het aantal klanten die een bedrijf per dag krijgt. Kopen vijf klanten
gemiddeld vier producten ieder of koopt één klant gemiddeld 15 producten. Sales dollars en het aantal klanten
zijn hier te kenmerken als meetwaarden.
Een dimensie is een structuur van samengestelde hiërarchieën die gegevens categoriseert. Wanneer een
dimensie geen hiërarchie heeft, is het gewoon een lijst. Elke dimensie tabel heeft een eigen primaire sleutel. De
primaire sleutels worden gevormd door de begrippen(dimensies) waarvan de facts afhankelijk zijn. Sales dollars
is bijv. afhankelijk van het aantal verkochte producten.
De belangrijkste kenmerken van een ster schema zijn de volgende punten:
- Simpele structuur;
- Query’s zijn makkelijk en overzichtelijk;
- Wordt het vaakst gebruikt in data warehouse implementaties en vooral in business intelligence tools.
Een ander soort schema is de sneeuwvlok schema (snowflake schema). Dit is de uitgebreide en meer complexe
versie van de het ster schema. In plaats van één groep, zoals te zien bij het ster schema, maakt het sneeuwval
schema gebruik van meerdere groepen/tabellen.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 6
Query’s
Bij het samenvoegen van tabellen komen query joins voor. Een join is een relatie tussen twee tabellen in een
database. Hieronder worden de verschillende join typen behandelt (Datawarehouse4u, 2008).
Inner join
Een inner join selecteert alleen de records van beide tabellen die overeenkomende waarden bevatten. Records
met waardes die niet in de tabel voorkomen worden uitgesloten van de query.
Afbeelding 3 Join types
Het plaatje hierboven (Afbeelding 3) geeft goed weer wat een inner join inhoudt. In het overlappende deel
staan de overeenkomende waardes die meegenomen worden in de query. Alles wat daarbuiten valt worden
uitgesloten.
Outer join
Bij een outer join worden alle records van de ene database geselecteerd en alleen de records die in het
overlappende deel van de tweede tabel bevinden. Dit zijn dus de gekoppelde waardes. Dit wordt ook wel de
left outer join genoemd. Bij een right outer join is het net andersom. Hier wordt alle data van de rechter tabel
geselecteerd en alleen de overeenkomende waardes uit de linker tabel.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 7
ONDERZOEK NAAR ONGESTRUCTUREERDE DATA
Vorig jaar heeft IDC een onderzoek gedaan naar de waarde die je uit de chaos van data kan halen. Een
interessant rapport (Gantz & Reinsel, 2011) met statistieken over de toename van data in de wereld. Dit
onderzoek geeft een duidelijk beeld van ongestructureerde data en de toekomst ervan.
WAT IS ONGESTRUCTUREERDE DATA?
Data blijft maar groeien in de wereld. Uit onderzoek van IDC bleek dat van de 1,8 ZetaBytes aan data, 90%
ongestructureerd is. Ongestructureerde data kan gezien worden als alle data die niet direct in een database
benaderbaar is. Mensen werken dagelijks met deze ongestructureerde data en er komen dagelijks miljoenen
bestanden bij. Bij ongestructureerde data valt te denken aan social media berichten, office bestanden en mail
berichten. Data waar geen structuur in zit. Wat mensen vaak vergeten is dat telefoongesprekken, sensor data,
digitale tv signaal etc. ook onder ongestructureerde data valt. Vorig jaar gebruikten we negen keer zoveel data
dan in 2005.
De enorme groei van data is te danken aan enerzijds de technologie en anderzijds het financiële aspect. Door
de nieuwere technieken, is het maken, vastleggen, beheren en opslaan van informatie sneller en goedkoper
geworden dan in voorgaande jaren. Financieel speelt de belangrijkste rol. Sinds 2005 hebben bedrijven tot 50%
meer besteed aan hardware, software, medewerkers, dienstverlening en opslag. Dit komt neer op een bedrag
van $4 triljoen dollar.
Om meer inzicht te krijgen in ongestructureerde data, zijn er tools ontwikkeld die bedrijven hierbij helpen.
Deze tools kunnen helpen bij het zoeken, ontdekken, analyseren en het automatisch maken van data over
data, ook wel metadata genoemd.
Het succes van bedrijven zal de komende jaren afhankelijk zijn van hoe ze met al hun bedrijfsdata om weten te
gaan. Business Intelligence wordt gezien als de onderscheidende factor hierin.
Cloud
Al we kijken naar de stijgende data wordt het steeds moeilijker om dit op te slaan en te managen. De capaciteit
neemt in grote mate toe. De komende jaren neemt de hoeveelheid servers wereldwijd toe met een factor 10.
De infrastructuur zal dus hierop aangepast moeten worden. Cloud Computing zal hierin een belangrijke rol
gaan spelen. IDC schat, dat in 2015, ruim 20% van de informatie door de cloud heen gaat.
Privacy
Door de enorme groei van data, speelt privacy en vertrouwen een belangrijke rol. IDC heeft een term
geïntroduceerd genaamd The Digital Shadow. Dit komt erop neer dat, alle informatie over jou veel groter is dan
de informatie die je zelf creëert.
Call for action
De acties die voortkomen uit het rapport zijn op te splitsen in technisch en organisatorisch.
Het technische deel gaat over acties zoals het investeren in nieuwe ontwikkelingen, welke data er voor u als
organisatie belangrijk is en dat u de data zoveel mogelijk in de Cloud inbrengt.
Het organisatorische deel heeft betrekking op het vormen van een strategie zodat de organisatie optimaal
gebruik kan gaan maken van de nieuwe ontwikkelingen. Een ander punt is het werken naar een data gedreven
organisatie met nieuwe ontwikkelingen, zoals de tablet of smartphone, om gegevens van bijvoorbeeld een
business intelligence pakket te bekijken.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 8
TEXT MINING
In de opdracht ga ik aan de slag met Lexalytics. Dit is een softwarepakket om data te verrijken. Maar wat wordt
er nu verstaan onder het verrijken van data? En waarom is er gekozen om Lexalytics hiervoor te gebruiken? Om
deze vragen te beantwoorden ben ik opzoek gegaan naar meer informatie over dit onderwerp.
WAT IS TEXT MINING?
Door de groei van digitale informatie wordt het steeds lastiger om iets terug te vinden in de enorme stapel aan
informatie. Bij gebruik van zoekmachines weet de gebruiker waar hij of zij naar opzoek is. Maar wanneer je dit
niet weet wordt het al lastiger om zoekmachines zoals google te gebruiken. Text mining is de uitkomst.
(Renchkens, 2009)
Text mining kan vergeleken worden met data mining. Datamining werkt met gestructureerde gegevens zoals
prijzen of plaatsnamen. Je weet van te voeren om wat voor data het gaat en waar je op wilt zoeken. Text
mining is het tegenovergestelde. Hierbij weet je niet van te voren welke informatie er bijvoorbeeld in teksten
staan, de gegevens zijn ongestructureerd.
Achter text mining hangt een heel proces en is in te delen in drie fases. De eerste fase, preprocessing, worden
de documenten bewerkt zodat er gezocht kan worden op patronen en relaties. Hier zit een analyse achter die
de grammaticale structuur van de zinnen herkent. De uitkomst is een bewerkt document waar text mining mee
aan te slag kan gaan.
De tweede fase, text mining, zal de computer proberen informatie uit de documenten te halen. Ook hier zit een
analyse achter maar hier wordt er gezocht op entiteiten zoals personen, attributen zoals leeftijden of feiten en
gebeurtenissen.
In de derde fase vindt er een vertaalslag plaats naar de “gewone” mensentaal. Dit is meestal in de vorm van
plaatjes of diagrammen die de uitkomsten van de eerste twee fases duidelijk weergeeft voor de gebruiker.
Om een voorbeeld te geven, ziet u in de afbeelding hieronder een weergave van heel veel tweets die
betrekking hebben op films. Doormiddel van tekst mining kunnen al deze tweets gescand worden om te kijken
wat mensen van een bepaalde film vinden. Door bijvoorbeeld de woorden good, nice, bad, worse etc. kan
d.m.v. text mining bepaald worden hoeveel mensen de film goed of juist slecht vinden.
Afbeelding 4 Twitter data analyse
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 9
TWEE TEXT MINING SOFTWARE PAKKETTEN VERGELEKEN
Text mining is steeds meer in opkomst. Zo zijn er al talloze gratis web versies te vinden op het internet zoals
sentiment140.com (Sentiment140, 2012). Deze website maakt het mogelijk om van een twitter zoekopdracht,
het sentiment te bekijken op positieve of negatieve reacties. Helaas is het niet mogelijk om deze informatie te
exporteren en te gebruiken in een ander programma.
Trackur
Er zijn echter ook betaalde versies. Een daarvan is Trackur (Trackur, 2012). Trackur is een specialist in het
monitoren van social media content. Via een dashboard wordt alle informatie en sentiment analyses getoond
die betrekking hebben op de zoekopdracht die uitgevoerd is. Bij het “ultimate” pakket is de mogelijkheid
aanwezig om het dashboard te voorzien van een aangepast logo en kleuren combinatie. Naast twitter kan
Trackur tevens gebruikt worden voor Facebook & Google+. De gegevens kunnen ook worden geëxporteerd
naar een bestand om dit vervolgens in een ander programma in te laden.
Met de demo van Trackur is het mogelijk maximaal één saved search te monitoren. Zoeken naar andere
producten of merken is nog steeds mogelijk maar kunnen niet verder gemonitord worden.
Lexalytics
Een alternatief is Lexalytics. Lexalytics (Lexalytics, 2012) richt zich net als Trackur op sentiment analyses van
social media data. Maar Lexalytics biedt ook tekst analyses aan om ongestructureerde data in gestructureerde
data om te zetten. Hiermee is het mogelijk om van tekst documenten, automatisch een samenvatting te maken
en bepaald Lexalytics de thema’s die voorkomen in een stuk tekst. De software maakt geen gebruik van een
dashboard net als bij trackurs maar van een build in analystics engine genaamd Salience. Deze engine kan
geïntegreerd worden met andere programma’s zoals business intelligence software.
CONCLUSIE
Beide programma’s richten zicht op sentiment analyses en hebben beide hun voor en nadelen. De keus valt
echter op toch op Lexalytics. De belangrijkste verschillen tussen Lexalytics en Trackur zit hem allereerst in de
extra tekst analyse functionaliteit van Lexalytics. Wat Lexalytics uniek maakt voor mijn opdracht, is dat de
leverancier partner is (PRWeb, 2009) van Oracle Endeca. Dit brengt verschillende voordelen met zich mee. Eén
daarvan is de communicatie tussen Oracle Endeca en de engine van Lexalytics. Oracle Endeca en Lexalytics
bieden gebruikers aan om metadata te gebruiken als filtering voor de zoekfunctie binnen Oracle Endeca en het
clusteren van relevante thema’s. Dit zorgt voor verbeterde zoekresultaten. Dit verlaagt weer de kosten en
voegt belangrijke structuur aan de inhoud om de gebruikerservaring te verbeteren.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 10
TOEGANG VAN TWITTER DATA
Er valt steeds meer waardevolle informatie uit twitter te halen. Vele mensen “tweeten” hun mening over
bijvoorbeeld producten. Twitter heeft twee bedrijven gecertificeerd die gebruik mogen maken van alle twitter
data, zowel real-time als de geschiedenis. De bedrijven Gnip en DataSift mogen basis informatie, zoals de
locatie van de twitter gebruikers, gebruiken om analyses op uit te voeren. DataSift kan maximaal twee jaar
terug tweets inzien terwijl Gnip maar tot 30 dagen terug kan.
DataSift heeft momenteel 700 bedrijven in de wachtrij staan die allemaal deze nieuwe technologie willen
gebruiken om te zien wat het opbrengt. Een voorbeeld, Starbucks Corp kan via twitter data erachter komen
wat mensen in Florida over hun karamel latte koffie zeggen. Ook is het mogelijk voor bedrijven om te zien hoe
zei gereageerd hebben op klachten. Worden de oplossingen juist als positief of als negatief ervaren?
Het bedrijf Gnip, dat meer gericht is op korte termijn data, geeft aan dat twitter informatie gebruikt kan
worden bij natuurrampen. Dit zou bijvoorbeeld hulpverleners kunnen helpen bij het monitoren van een griep
uitbreiding.
Niet iedereen is gelukkig bij het idee dat hun tweets door bedrijven gebruikt worden voor bijvoorbeeld
markting. Het deleten van je oude tweets is een oplossing sinds DataSift regelmatig alle data moet updaten om
verwijderde content ook uit hun systeem te halen. (Rao, 2012)
KEUZE LEVERANCIER VERKOOP TWITTER DATA
Voor de opdracht ga ik de DataSift demo gebruiken. Beide softwareleveranciers DataSift en Grid bieden redelijk
dezelfde mogelijkheden, op het opvragen van twitter geschiedenis na. In beide demo’s gaat het alleen maar
om een beperkt aantal real-time tweets die je mag gebruiken waar mijn keus uit gaat naar DataSift. De keus
voor DataSift is meer om het feit dat zei partners zijn met Endeca. Binnen de Endeca Integrator is het mogelijk
om een rechtstreekse verbinding te maken met DataSift om real-time tweets in te laden in de Oracle Endeca
Server.
AFBEELDINGEN
Afbeelding 1 Voorbeeld graph ............................................................................................................................... 4
Afbeelding 2 Sterdiagram....................................................................................................................................... 5
Afbeelding 3 Join types .......................................................................................................................................... 6
Afbeelding 4 Twitter data analyse ......................................................................................................................... 8
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 11
LITERATUURLIJST
Datawarehouse4u. (2008, januari 1). Star schema. Opgeroepen op december 19, 2012, van Website van
datawarehouse4u.info: http://datawarehouse4u.info/Data-warehouse-schema-architecture-star-
schema.html
Gantz, J., & Reinsel, D. (2011, juni 1). Extracting Valaue from Chaos. Opgeroepen op 12 5, 2012, van IDC:
http://netherlands.emc.com/collateral/analyst-reports/idc-extracting-value-from-chaos-ar.pdf
Lexalytics. (2012, januari 1). Infor over Lexalytics. Opgeroepen op december 11, 2012, van Website van
lexalytics: http://www.lexalytics.com/
Lipka, M. (2012, maart 1). What you should know about Twitter's data sales. Opgeroepen op december 10,
2012, van Website van Reuters: http://www.reuters.com/article/2012/03/01/us-twitter-data-
idUSTRE8201IU20120301
Oracle. (2012, maart 1). Endeca Concent Acquisition System. Opgeroepen op November 14, 2012, van Website
van Oracle: http://docs.oracle.com/cd/E29578_01/CASDevGuide.pdf
PRWeb. (2009, oktober 20). Lexalytics, Inc. Joins Endeca Extend Partner Program to Seamlessly Integrate Text
and Sentiment Analysis into Endeca Information Access Platform. Opgeroepen op december 11, 2012,
van Website van PRWeb: http://www.prweb.com/releases/2009/10/prweb3076944.htm
Rao, L. (2012, augutus 21). DataSift Debuts More Powerful Tools To Help Businesses Analyze Social Data.
Opgeroepen op decemeber 10, 2012, van Website van techcrunch:
http://techcrunch.com/2012/08/21/datasift-debuts-more-powerful-tools-to-help-businesses-analyze-
social-data/
Renchkens, E. (2009, januari 23). Text mining: Als je niet weet wat je zoekt. Opgeroepen op 12 10, 2012, van
Website van Kennislink: http://www.kennislink.nl/publicaties/text-mining-als-je-niet-weet-wat-je-
zoekt
Rittman, Mark. (2012, februari 20). Oracle Endeca Week: So Just What is Endeca? Opgeroepen op November 8,
2012, van website van Rittmanmead: http://www.rittmanmead.com/2012/02/oracle-endeca-week-
so-just-what-is-endeca/
Sentiment140. (2012, januari 1). Info over Sentiment140. Opgeroepen op december 11, 2012, van Website van
Sentiment140: http://help.sentiment140.com/
Trackur. (2012, januari 1). Info over Trackur. Opgeroepen op december 11, 2012, van Website van Trackur:
http://www.trackur.com/why-trackur
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 12
BIJLAGE 2 HANDLEIDING OPNEMEN TWITTER MET DATASIFT
INLEIDING
In deze handleiding zal worden uitgelegd hoe u met de DataSift oplossing, twitter data kunt streamen en
exporteren. DataSift is een oplossing om de “twitter firehose” uit te lezen. Dit houdt in dat u real-time twitter
data kunt streamen om er bijvoorbeeld achter te komen wat mensen van uw producten vinden. Het streamen
van twitter data is dan ook niks anders dan het binnenhalen van de “tweets” die gaan over een door u
opgegeven onderwerp.
In deze handleiding zal gebruikt worden gemaakt van een trial account waar u standaard een tegoed krijgt om
DataSift uit te proberen. De trial account heeft alleen de mogelijkheid om real-time te streamen en niet om
data te verkrijgen dat al geplaatst is. Dit is alleen mogelijk met een betaald pakket.
In hoofdstuk 1 zal het aanmaken van zo’n trial account aan bod komen en worden de verschillende
mogelijkheden van het dashboard besproken. In Hoofdstuk 2 wordt er een stream aangemaakt en wordt deze
via een taak uitgevoerd. Tot slot wordt er in Hoofdstuk 3 uitgelegd hoe data geëxporteerd kan worden om het
vervolgens te downloaden.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 13
HOOFDSTUK 1: REGISTRATIE & DASHBOARD OVERVIEW
Om gebruikt te maken van DataSift, moet er eerst een account aangemaakt worden. Omdat DataSift een
betaalde dienst is , maken we een trial account aan waar u een standaard tegoed krijgt van $10. Het tegoed
kunt u vervolgens verder upgraden om meer data te streamen.
1. Surf naar de website van DataSift www.datasift.com . Hier ziet u in het midden va de pagina een
groene knop met Free Trial staan zoals hieronder weergegeven.(Afbeelding 1)
Afbeelding 1 Trial account
2. Wanneer u hier op klikt krijgt u een venster te zien waar u zich kunt registeren. U heeft de keus om
een account op DataSift aan te maken d.m.v. het invullen van het formulier aan uw linkerzijde of door
te registeren met één van de zes accounts die weergegeven staan aan de rechterzijde van de
pagina.(Afbeelding 2)
Afbeelding 2 Registeren
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 14
3. Wanneer u succesvol een account gecreëerd heeft, kunt u in het volgende scherm eventueel extra
informatie opgegeven. Aan de rechterzijde kunt u uw twitter gebruikersnaam ingegeven om te kijken
wanneer jouw naam genoemd wordt op twitter. Voor nu slaan we deze stap over door op Skip this
step and continue te klikken onderaan de groene button.(Afbeelding 3)
Afbeelding 3 Extra informatie
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 15
DASHBOARD OVERVIEW
Wanneer u ingelogd bent komt u op uw dashboard terecht. Rechtsboven staat het resterende bedrag dat nog
op uw account staat. Deze kunt u eventueel later Top Upen wanneer u besluit meer gebruik te maken van
DataSift. Op uw Dashboard ziet u tevens 6 tabbladen. Enkele van deze zullen later in de handleiding aan de
orde komen. Voor nu een korte beschrijving wat deze 6 tabbladen inhouden.(Tabel 1)
Tabel 1 Dashboard overzicht
Tabblad Beschrijving
Dashboard Alle links ineen die verwijzen naar de verschillende tabbladen en hoeveel data u gebruikt heeft per dag.
Streams Aanmaken van filters d.m.v. zoektermen op te geven. Tasks Een taak aanmaken om de streams op te nemen. Data Sources Verschillende data bronnen die gebruikt kunnen
worden om data vandaan de halen. Hier staan zowel gratis als betaalde bronnen tussen.
Data Destination Verschillende externe bronnen om uw data naar toe te sturen.
Billing Kosten overzicht van de laatste 7 dagen.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 16
HOOFDSTUK 2: TWITTER STREAMING
DataSift kent meer dan 30 data bronnen zoals te zien in tabblad Data Sources. In deze handleiding staat alleen
de Data Source Twitter centraal. Er zijn enkele “gratis” data bronnen beschikbaar en voor de rest moet u
betalen net als twitter. Om twitter te activeren gaat u naar de categorie Social Networks en klikt u bij twitter op
Activate & Sign License.(Afbeelding 4)
Afbeelding 4 Twitter activeren
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 17
Wanneer u op Activate & Sign License heeft geklikt krijgt u een venster te zien waar u akkoord moet gaan met
een licentie. Deze kunt u doorlezen en bij akkoord uw gegevens invullen onderaan het venster en vervolgens
op Agree klikken om de licentie definitief te accepteren. U heeft nu toegang tot Real-Time twitter data.
(Afbeelding 5)
Afbeelding 5 Twitter licentie
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 18
Ga terug naar uw Dashboard. We gaan nu een allereerste stream aanmaken door op creating your first stream?
te klikken. U kunt hier ook komen door op het Streams tabblad te klikken.(Afbeelding 6)
Afbeelding 6 Eerste stream
Geef in het volgende scherm de naam van uw stream op met een eventuele beschrijving. In deze handleiding
wordt er als voorbeeld real-time gezocht in alle tweets waar “mcdonalds” in voorkomt. Standaard staat de
editor op Query Builder. Dit is de makkelijkste en snelste methode om een stream aan te maken door op een
interactieve manier door de onderdelen te bladeren. Met de CSDL Code Editor gaat u zelf een query invullen.
Dit is dus voor de meer geavanceerde gebruikers onder ons.
Wanneer u alles ingevuld heeft klik u op Start Editing en in het volgende scherm op Create New Filter om een
filter voor uw stream in te stellen. (Afbeelding 7 en 8)
Afbeelding 8 Nieuwe filter
Afbeelding 7 Benaming stream
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 19
In het scherm dat u nu ziet kunt u eerst de data bron aanklikken die u wenst te gebruiken. Bij het aanklikken
van de twitter bron komt er een balk bij met verschillende attributen waarop u specifiek kunt filteren. Omdat
we willen weten wat mensen allemaal over “mcdonalds” tweeten klikken we op tweet . Deze optie zal tevens
ook de profiel van de gebruikers meenemen.
Nu gaan we de term ingeven waar we de filter op los willen laten. Dit kan van alles zijn Hashtags(#) of gewoon
normale termen zoals mcdonalds in dit voorbeeld. Klik op Save En Preview als u klaar bent.(Afbeelding 9)
Afbeelding 9 Filtering
In het volgende scherm kunt u de filter nogmaals terug zien. Wanneer u alles correct heeft ingevuld klikt u op
Save & Close. U komt nu in het scherm waar u de kosten van uw stream te zien krijgt. In dit venster kunt u via
Preview Stream u aangemaakte filter terug zien of het ook daadwerkelijk werkt.
Let wel op! Deze preview brengt al gelijk kosten met zich mee en slaat nog niks op!
Wanneer de preview correct is keert u terug naar de vorige pagina en klikt u op Record Stream om te beginnen
om opnemen van de twitter berichten.(Afbeelding 10)
Afbeelding 10 Preview & Record
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 20
In het scherm voor u kunt u nu de tijd frame bepalen voor het opnemen van de tweets. We kiezen in dit
voorbeeld voor Start Now en Keep Running. De taak zal dan vanzelf stoppen als uw tegoed op is of als uw de
taak handmatig stop zet. Klik op Continue om verder te gaan. (Afbeelding 11)
Verifieer de gegevens in het volgende scherm en klik op start now om de taak de starten. De data zal
opgeslagen worden door DataSift waarna u zelf hiervan een export van kunt maken.
Afbeelding 11 Instellen tijd frame
U heeft nu met succes een stream aangemaakt. U ziet nu dat uw taks wordt uitgevoerd en ziet u aan het aantal
interacties hoeveel real-time tweets er al zijn opgenomen. (Afbeelding 12). In het volgende hoofdstuk zal er
ingaan worden op het exporteren van uw stream.
Afbeelding 12 Twitter activiteit
Extra note 1:
Aan het streamen van social media content zitten kosten aan vast zoals eerder vermeld. DataSift maakt
gebruikt van DPU’S(Data Processing Units). Dit zijn de kosten die je maakt per uur. DataSift rekent standaard
1DPU=0,20 cent per uur. Dit is een tevens een standaard stream waarbij gebruik wordt gemaakt van 1 filter. Er
komen kosten bij als er meerdere filters gebruikt worden of als er een specifieke data source gebruikt wordt.
Sommige data sources zijn gratis maar er zijn ook betaalde zoals twitter. Iedere betaalde data source heeft een
andere kosten plaatje. Deze is te vinden op de site van DataSift.
Let op! Een gratis datasource betekend niet dat er niet betaald hoeft te worden. Er wordt nog steeds 1 DPU per
uur gerekend (afhankelijk van het aantal filters).
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 21
HOOFDSTUK 3: EXPORTEREN DATA
In dit hoofdstuk gaan we de data(tweets) exporteren naar uw lokale harde schijf. U kunt u data exporteren
onder het tabblad Tasks. Hier ziet u een overzicht van u geplande taken. Wanneer een taak nog actief is en u
wilt de data toch exporteren, druk dan op Stop Task. In diezelfde taak klikt u vervolgens op Export Data.
Afbeelding 13 Export data
In het scherm wat u nu te zien krijgt, geeft u de naam van het export bestand in. Als format kunt u kiezen
tussen JSON of CSV. Dit is afhankelijk van wat uw softwarepakket ondersteund om de data uit te lezen.
Vervolgens kunt u aangegeven in welke tijd frame u de data wilt hebben. U kunt dus de data opsplitsen per uur
of per dag of gewoon de gehele data. De destination staat standaard op DataSift Storage. Dit houdt in dat het
eerst op de servers van Datasift wordt opgeslagen waarna u het zelf kunt downloaden naar uw harde schijf.
Hier kunt een bestemming opgegeven als u bijvoorbeeld gebruikt wilt maken van de een FTP server of een
database connectie. Klik vervolgens op create als alles goed staat om de export te starten
Afbeelding 14 Export keuze
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 22
Vervolgens ziet u het percentage van hoe ver de download is. Wanneer gereed staat er onderaan de task
download. Wanneer u hier op klikt kunt u het bestandje op een gewenste plaats opslaan op uw harde schijf.
Afbeelding 15 Export downloaden
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 23
AFBEELDINGEN
Afbeelding 1 Trial account .................................................................................................................................... 13
Afbeelding 2 Registeren ........................................................................................................................................ 13
Afbeelding 3 Extra informatie ............................................................................................................................... 14
Afbeelding 4 Twitter activeren.............................................................................................................................. 16
Afbeelding 5 Twitter licentie ................................................................................................................................. 17
Afbeelding 6 Eerste stream ................................................................................................................................... 18
Afbeelding 8 Nieuwe filter .................................................................................................................................... 18
Afbeelding 7 Benaming stream ............................................................................................................................. 18
Afbeelding 9 Filtering ............................................................................................................................................ 19
Afbeelding 10 Preview & Record .......................................................................................................................... 19
Afbeelding 11 Instellen tijd frame ......................................................................................................................... 20
Afbeelding 12 Twitter activiteit ............................................................................................................................ 20
Afbeelding 13 Export data..................................................................................................................................... 21
Afbeelding 14 Export keuze .................................................................................................................................. 21
Afbeelding 15 Export downloaden ........................................................................................................................ 22
TABEL
Tabel 1 Dashboard overzicht................................................................................................................................. 15
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 24
BIJLAGE 3 HANDLEIDING CONTENT ACQUISITION SYSTEM(CAS)
INLEIDING
CAS biedt de mogelijkheid om door bestandssystemen en websites te “crawlen” om documenten op te halen in
verschillende formaten. Een dergelijk document bevat metadata. Metadata is te omschrijven als data over
data, ofwel de kenmerken van een document zoals auteur, aantal pagina’s, versie etc.
In deze handleiding worden twee verschillende crawls aangemaakt. De eerste gaat over het crawlen van
bestandssystemen doormiddel van een webbased console en doormiddel van de command prompt. De tweede
crawl over het crawlen van websites.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 25
HOOFDSTUK 1: AANMAKEN GEBRUIKER
In dit eerste hoofdstuk gaan we een Windows gebruiker aanmaken. Om gebruik te kunnen maken van de Endeca CAS services moet een Windows gebruiker geselecteerd worden waarmee u rechten kunt aanmaken en beheren.
1. Zorg dat u administrator rechten heeft op uw Windows machine. 2. Vervolgens gaat u naar Start ≥ Configuratiescherm. 3. Kies voor Systeembeheer ≥ Computerbeheer. 4. In het venster van computerbeheer kiest u voor Lokale gebruikers en groepen ≥ gebruikers 5. U ziet hier een overzicht met de accounts die u momenteel heeft.
Afbeelding 1 Lokale gebruikers en groepen
6. Rechterklik op een wit vlak en kies voor ≥ Nieuwe gebruiker…
I. Neem de gegevens over zoals weergegeven in afbeelding 2 . Het wachtwoord kunt u zelf kiezen. Let op: Een wachtwoord is verplicht, de installatie van CAS zal geen leeg wachtwoord toestaan.
II. Vink Gebruiker moet wachtwoord bij volgende aanmelding wijzingen uit. III. Vink Gebruiker kan wachtwoord niet wijzingen aan. IV. Kies voor Maken onder het venster om de gebruiker aan te maken en vervolgens Sluiten.
Afbeelding 2 Nieuwe gebruiker
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 26
7. Sluit het venster van Computerbeheer maar blijf in Systeembeheer. 8. Vanuit het systeembeheer venster klikt u op Lokaal beveiligingsbeleid. 9. In de mappenstructuur aan uw linkerzijde gaat u naar Lokaal beleid ≥ Toewijzing van gebruiksrechten 10. Van de lijst aan uw rechterzijde kiest u voor aanmelden als service.
I. Klik op Gebruiker of groep toevoegen II. Geef als objectnaam de naam ,van het door u aangemaakte gebruiker, op. In dit geval endeca
en kies voor Namen controleren. III. U ziet nu als objectnaam: (computernaam)\endeca , kies voor ≥ OK (Afbeelding 3) IV. Sluit het dialoogvenster en het systeembeheer venster.
11. U heeft zojuist succesvol een Endeca gebruiker aangemaakt. We kunnen nu met de installatie van CAS beginnen.
Afbeelding 3 Objectnaam toevoegen
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 27
HOOFDSTUK 2: INSTALLATIE CAS MET CONSOLE
2.1 INSTALLATIE CAS CONSOLE Nu we een gebruiker hebben aangemaakt voor de Endeca CAS services, kunnen we beginnen met de installatie van CAS met de console. De CAS console is webbased en stelt de gebruiker in staat om op een eenvoudige manier een bestandscrawl ,of één van de andere beschikbare data sources, aan te maken. Let op: Via de CAS console is het niet mogelijk om een webcrawl te aan te maken, dit is alleen mogelijk via de command prompt. In het volgende hoofdstuk wordt dit uitvoerig uitgelegd. De CAS console maakt gebruik van twee bestanden die niet mee geïnstalleerd worden bij de installatie van CAS. Deze bestanden, Endeca_tools_Root en Endeca_Tools_Conf, worden aangemaakt bij de installatie en opstarten van de Endeca Tools Service en zijn noodzakelijk om de webbased omgeving te krijgen. In de volgende stappen wordt uitgelegd hoe u deze service aanmaakt en opstart.
1. Ga naar uw workshop map en navigeer naar “C:\Workshop\Endeca\cas\ToolsAndFrameworks\3.1.1\server\bin”
2. In deze map staan zeven uitvoerbare bestanden. Voer de volgende bestanden in deze reeks uit: a. Install_service.bat (installeren van de Endeca Tools Service) b. Run.bat (uitvoeren van de service) c. Start_service(opstarten van de service)
Let op: Bij het starten van de service krijgt u een command prompt venster te zien. Dit venster verdwijnt vanzelf als de services alles uitgevoerd heeft.
3. Bevestig dat de Endeca Tools Service is aangemaakt en is gestart door te navigeren naar:
Start ≥ Configuratiescherm ≥ Systeembeheer ≥ Services (Afbeelding 4 )
Afbeelding 4 Services
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 28
2.2 INSTALLATIE CAS VERSIE 3.0.2
1. Ga naar de map waar dat u uw workshop heeft opgeslagen “C:\Workshop\Endeca\cas\” 2. Klik op het installatiebestand “cas-3.0.2-x86_64pc-win32.exe” om de wizard te starten. 3. In het eerste scherm wat u te zien krijgt (Setup Wizard) klikt u op next en vervolgens nogmaals op
next als u de copyright gelezen heeft. 4. In het custom setup scherm kunt u nogmaals op next klikken. De twee features zijn standaard
ingesteld om mee geïnstalleerd te worden. 5. In de Destination Folder scherm kiest u voor een installatie locatie of accepteer de default locatie
C:\Endeca\CAS en klik op next. 6. In de Endeca CAS Service Information vult u de gegevens in van de gebruiker die u heeft aangemaakt
in Hoofdstuk 1. Wanneer de gegevens kloppen klikt u op next. (Afbeelding 5) Let op: Domain Name op afbeelding zal afwijken van de naam op uw scherm. Hier zal waarschijnlijk uw computernaam weergegeven worden.
7. In de CAS Server Information scherm, accepteer de default poorten 8500 en 8506 en klik op next.
8. In de Completing the Setup Wizard scherm klikt u op next.
Afbeelding 5 Installatie gebruikers gegevens
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 29
HOOFDSTUK 3: AANMAKEN EN UITVOEREN VAN EEN CRAWL
CAS biedt de mogelijkheid om twee verschillende bronnen te crawlen. Namelijk (lokale)documenten
3.1 BESTAND SYSTEEM CRAWLEN MET CONSOLE
Met de CAS console is het mogelijk om via een webinterface een crawl aan te maken om door de volgende data
sources te crawlen (tabel 1):
Tabel 1 Data Sources
Documentum Content Server Crawlt een Documentum Content Server zoals docbases.
Documentum eRoom Crawlt eRoom repositorie.
File System Crawlt folders en bestanden op de lokale harde schijf of op netwerk harde schijven.
Filenet Document and Image Services Crawlt content en foto repositories.
FileNet P8 Crawlt FileNet P8 repositories.
Interwoven TeamSite Crawlt een Interwoven Teamsite repositorie.
JSR-170 Compliant Crawlt een java content repositorie.
Lotus Notes Crawlt een Lotus Notes repositorie.
Microsoft Sharepoint Object Model Crawlt een Sharepoint repositorie die gebruikt maakt van een Sharepoint Object Model API.
Microsoft SharePoint Web Services Crawls SharePoint repositories.
Open text Livelink Crawlt Open Text Livelink repositories.
1. Om te beginnen gaan we na of de Endeca Tool Service nog steeds gestart is (zie paragraaf 2.1).
2. De CAS console maakt gebruik van poort 8006. Open uw browser en navigeer naar de URL
http://localhost:8006
3. U krijgt een login scherm te zien. Vul hier als gebruikersnaam EN wachtwoord Admin in.
4. U zit nu in de home waar u kunt kiezen uit Data Sources (Manage Crawls),User Management
(gebruikersbeheer) en EAC Connection Settings (definiëren van een host).
Hier kiest u voor Data Sources.
5. De lijst met Crawls is op dit moment nog leeg. We gaan er nu een toevoegen door op Add Data Source
te klikken.(Afbeelding 6)
6. U krijgt een scherm te zien met de verschillende soorten Data Sources (Zie tabel 1). Hier kiest u voor
File System en klikt u op Add.
Afbeelding 6 Add Data Source
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 30
7. In het volgende venster vullen we de naam van de crawl en tevens recordstore in met daaronder de
seeds. Seeds zijn de folder/documenten die u wilt crawlen. Hiervoor gebruiken we de documenten
folder in de workshop map. Vul de volgende gegevens in en klik op save en vervolgens cancel in het
volgende scherm.
Naam: Documentcrawl (Let op case sensitive)
Seeds: C:\Workshop\Endeca\cas\documents
Naast bestanden die op de harde schijf opgeslagen staan, kunnen ook netwerk drives gecrawld
worden. In deze handleiding komt dit niet aan bod maar de mogelijkheid is er. Een voorbeeld hoe een
dergelijk netwerk pad eruit kan zien: \\{bedrijfsnaam}\{home}\{gebruikersnaam}
8. De crawl is aangemaakt en hoeft alleen nog maar gestart te worden. Dit kunt u eenvoudig doen door
op Start te klikken.(Afbeelding 7)
Afbeelding 7 Crawl Completed
Extra note 1:
Zoals u ziet kunt u een crawl starten door op start te klikken, of door op het rondje te klikken. Dit heeft
te maken met de crawling modes. Bij een eerste crawl kunt u beide gebruiken maar het wordt pas
interessant wanneer u extra documenten in de folder plaatst.
Met het rondje start u een zogeheten Full crawl. Dit houdt in dat alles uit de opgegeven folder
gecrawld wordt. De start knop maakt gebruik van een incremental crawl. Deze modes is interessant
wanneer er nieuwe content in de folder wordt geplaats. Door de incremental modes worden alleen
deze documenten gecrawld.
Extra note 2:
Binnen de CAS console is er een mogelijkheid om een filter toe te voegen op bestanden of folders.
Er zijn drie verschillende soorten filters die zowel op de folder als op een bestand toegepast kunnen
worden. De eerste filter is een string.
De string filter maakt het mogelijk om content toe te voegen of te verwijderen doormiddel van
attributen zoals Endeca.Filesystem.Extension.
De tweede optie is een data filter. Data filters maken het mogelijk om content toe te voegen of te
verwijderen aan de hand van specifieke datum range.
De laatste optie is een numerieke filter. Deze filter maakt het mogelijk om content toe te voegen of te
verwijderen die gebaseerd zijn op numerieke waarden.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 31
9. Wanneer de crawler klaar is klikt u op Completed. Hier ziet u tal van gegevens met onder andere
hoeveel documenten er zijn ontdekt. Hier kunt u dus na gaan of alles goed is gegaan.(Afbeelding 8)
Afbeelding 8 Crawl Status
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 32
3.2 BESTANDSYSTEEM CRAWLEN MET COMMAND PROMPT. Voor we een crawl kunnen starten gaan we eerst de nieuwe crawl definiëren. Het aanmaken van een nieuwe crawl gebeurd doormiddel van een configuratie bestand. Deze is te vinden in: C:\Workshop\Endeca\cas. Het bestand is voor deze workshop al voor geprepareerd maar laten we nog kijken wat er allemaal aangepast zou moeten worden om een andere crawl aan te maken. 1. Open het bestand cas_configuration_file met de default tekst editor (Afbeelding 9).
Afbeelding 9 CAS Configuration File Edit
2. In de configuratie moeten er drie velden aangepast worden.
a. crawlId tag: De naam van de nieuwe crawl. b. Seeds tag: Locatie van het bestand of de folder die gecrawld moet worden. c. Instancename: De record store waar alle data naar toe geschreven wordt.
3. Sluit het configuratie bestand.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 33
We kunnen nu beginnen met het aanmaken en uitvoeren van de nieuwe crawl. 1. Open de command prompt 2. Navigeer naar de folder waar CAS geïnstalleerd staat door het volgende in te vullen:
cd c:\endeca\cas\3.0.2\bin 3. Vul vervolgens het volgende in:
cas-cmd createCrawls –f C:\Workshop\Endeca\cas\cas_configuration_file.txt 4. We kunnen nu de crawl starten door het volgende in te gegeven:
cas-cmd startCrawl –id aorta_training 5. CAS heeft nu de directory C:\Workshop\Endeca\cas\documents gecrawld (zoals aangegeven in het
configuratie bestand) en heeft de content met de metadata opgeslagen in de record store aorta_training.
3.3 WEBSITES CRAWLEN CAS maakt het mogelijk om websites te crawlen. Dit kan een normale website zijn maar bijvoorbeeld ook een forum. In deze paragraaf wordt er uitgelegd hoe u dit kunt bereiken en welke dieptes een crawl aan kan. Voor een websites gecrawld kan worden gaan we eerst enkele bestanden configureren.
1. Navigeer naar de default installatie folder van CAS: C:\Endeca\CAS\3.0.2\sample , of naar de locatie die u heeft ingegeven tijdens de installatie van CAS in paragraaf 2.2.
2. U ziet hier verschillende folders. Maak een kopie van “Webcrawler-to-recordstore” en her noem deze naar training.
3. Open de training en vervolgens de conf folder. 4. Open het tekstbestand crawl-urfitler.txt 5. Het tekstbestandje is niet echt duidelijk omdat alles achterelkaar staat. Dit gaan we eerst aanpassen
door naar rechts te scrollen en een enter te geven tussen “/” en “#”. (Afbeelding 10)
Afbeelding 10 Crawl Filter Layout Old
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 34
6. Nu de tekstfile overzichtelijker is kunnen we de hyperlinks toevoegen die we willen crawlen. In de workshop crawlen we de website van Aortabi.nl. Neem de gegevens over zoals te zien in afbeelding 11. Hier ziet u dat we alleen de subpagina’s News, About-obiee en endeca gaan crawlen. Sla het bestand op.
Afbeelding 11 Crawl filter Layout New
7. Terug in de conf folder opent u de endeca.lst file met de standaard tekst editor. Hier geeft u het webadres in van aortabi: http://www.aortabi.nl/ en sla vervolgens het bestand op.
8. Open vervolgens het bestand , in de conf folder, site.xml met de standaard tekst editor. 9. Scroll naar beneden en zoek naar het veld recordstore.instancename. 10. Geef tussen de value tags de recordstore naam aorta op. Zo komt het er dan uit te zien:
name>output.recordStore.instanceName</name> <value>aorta_training</value>
11. Sla het bestand op en keer terug naar de conf folder waarna u nogmaals terug gaat naar de hoofdfolder training
12. In de folder training klikt u met rechtermuisknop het run-sample.bat bestand en klikt u op bewerken. Een tekst bestand opent .
13. In dit bestand geven we de recordstore op en hoe diep de crawl moet zijn op de hyperlinks. De crawl kent drie lagen(dieptes) 0: Websitelink zoals aangegeven in het endeca.lst bestand. (www.aortabi.nl/) 1: Alle categorieën zoals benoemd in crawl-urfilter.txt (www.aortabi.nl/news/) 2: Alle subcategorieën van de links zoals benoemd in crawl-urfilter.txt . (www.aortabi.nl/about-obiee/presentations/....../....../) In dit geval gebruiken we de diepste laag (2). Neem de gegevens over zoals te zien op afbeelding 12.
14. Sla het tekst bestand op en voer het bestand run-sample.bat uit. Een
command prompt verschijnt. De crawler is klaar als de prompt weer verdwijnt. De content is vervolgens opgeslagen in de record store aorta.
Afbeelding 12 Run Sample
Edit
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 35
Zojuist heeft u de gehele website van Aorta BI uitgelezen. Dit houdt in dat u alle tekst , wat op de website staat , meegenomen heeft in de crawl. Omdat CAS geen structuur aanbrengt wordt alle tekst achterelkaar gezet. Dit is inclusief de kop en voettekst, advertenties en andere soorten tekst waar u niet op te wachten staat. CAS heeft de optie om dit tijdens de crawl eruit te filteren. Hierbij wordt gebruik gemaakt van de broncode van de site. In de broncode staat de opbouw van de site in html weergeven. Iedere container op de site heeft een eigen tag waarde. Met deze tag waardes verwijderd CAS de containers. De broncode van een site kunt u zien door in Firefox de extensie FireBug te installeren. In Google Chrome zit dit er standaard in door rechtermuisknop in te drukken en te kiezen voor “element inspecteren” ergens op de site. In deze handleiding wordt alleen de tekst van de Endeca pagina uitgelezen.
15. Open het site.xml bestand te vinden in C:\Endeca\CAS\3.0.2\sample\training\conf
16. Ga opzoek naar de property plugin.includes en voeg “endeca-xpath-filter” toe doormiddel van een “|”
scheidingsteken.
17. Ga opzoek naar de property document.prune.xpath. Als deze niet aanwezig is kunt u deze kopiëren
van het default.xml bestand.
18. Inspecteer de Aorta Endeca pagina. Als u met de muis over een tag gaat kunt u zien om welke
container op de site het gaat. Bijvoorbeeld in <div> id=”menu” staat de menu structuur van Aorta. Dit
willen we niet bij de tekst hebben dus verwijderen we deze container.
19. Voeg //DIV[@id=”menu”] toe tussen de value waarde van het document.prune.xpath property.
Afbeelding 13 Exclude content
Voeg de volgende tags toe om alleen de tekst over te houden. Tags worden gescheiden door drie “~~~”. //DIV[@id=header"]~~~//DIV[@id=sidebar"]~~~//DIV[@id=footer"]~~~//DIV[@id=breadcrumbs"]
20. Sla het tekst bestand op en voer het bestand run-sample.bat uit. Een command prompt verschijnt. De
crawler is klaar als de prompt weer verdwijnt. Alleen de Endeca tekst is nu gecrawld en opgeslagen in
de aorta record store.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 36
AFBEELDINGEN
Afbeelding 1 Lokale gebruikers en groepen .......................................................................................................... 25
Afbeelding 2 Nieuwe gebruiker ............................................................................................................................ 25
Afbeelding 3 Objectnaam toevoegen ................................................................................................................... 26
Afbeelding 4 Services ............................................................................................................................................ 27
Afbeelding 5 Installatie gebruikers gegevens ....................................................................................................... 28
Afbeelding 6 Add Data Source .............................................................................................................................. 29
Afbeelding 7 Crawl Completed ............................................................................................................................. 30
Afbeelding 8 Crawl Status ..................................................................................................................................... 31
Afbeelding 9 CAS Configuration File Edit .............................................................................................................. 32
Afbeelding 10 Crawl Filter Layout Old .................................................................................................................. 33
Afbeelding 11 Crawl filter Layout New ................................................................................................................. 34
Afbeelding 12 Run Sample Edit ............................................................................................................................. 34
Afbeelding 13 Exclude content………………………………………………………………………………………………………………………..35
TABEL
Tabel 1 Data Sources ............................................................................................................................................. 29
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 37
BIJLAGE 4 ETL GRAPHS
1) BASELINE
Afbeelding 1 Baseline graph
Afbeelding 1 is de eerste graph. Deze bevat twee componenten, de list steps en de run steps. De configuratie wat hierachter zit is niks anders dan de volgorde van graphs
die automatisch doorlopen worden.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 38
Afbeelding 4 Aanmaken zoek interface
2) RESETDATASTORE
Afbeelding 2 Reset datastore
De eerste graph die de baseline uitvoert is het resetten van de opgegeven data store.(Afbeelding 2) Dit is noodzakelijk om te zorgen dat er met een lege data store
begonnen wordt en er geen resten oude data achter blijven. Dit kan conflicten veroorzaken met de nieuw in te laden data.
3) LOADINDEXINGCONFIGURATION
Afbeelding 3 Indexeren data
Deze graph (afbeelding3) maakt een zoek interface aan en doormiddel van een query heb ik een extra functionaliteit toegevoegd om op de twitter tekst snippeting toe te voegen (bijlage4). Dit houdt in dat ik zoek op een woord, het woord overal in de tekst gemarkeerd word. Dit is makkelijker voor de gebruiker om informatie uit een bron te halen. Deze graph heb ik aan het begin van het inladen van de data geplaatst. Dit maakt het mogelijk om tijdens het inladen van de data de indexering op te bouwen. Achteraf is dit ook mogelijk alleen duurt het proces langer door dubbele indexering.
Als zoek interface heb ik een bestand ingeladen waar de naam van de interface instaat en op welke attribuut er gezocht moet worden. (Afbeelding 4) Hier wordt alle data vervolgens op geïndexeerd.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 39
4) VOLLEDIGE CESTWITTER1 GRAPH
Afbeelding 5 CESTwitter1 graph
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 40
5) VOLLEDIGE CESTWITTER2 GRAPH
Afbeelding 6 Volledige CESTwitter2 graph
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 41
Afbeelding 8 Configureren metdata Afbeelding 9 Configureren groepen
Afbeelding 7 Indexeren data
6) LOADCONFIGURATION
Wanneer alle data is ingelezen in de Endeca Server zorgt deze graph voor de afwerking. Alle ingelezen data worden standaard onder 1 groep opgeslagen en hebben
allemaal een attribuutnaam als metadata dat door DataSift is aangeleverd. Het eerste deel van de graph voegt groepen toe. Deze worden gedefinieerd in een .csv file en
uitgelezen en ingeladen in de Endca Server. Het tweede deel past de metadata aan. Hierin heb ik aangegeven dat een attribuut een andere displaynaam moet krijgen, wat
de sorteer volgorde is en de mogelijkheid om meerdere waardes te selecteren.
Voor mijn CES2013 project heb ik een vijftal groepen
gedefinieerd. Deze staan hieronder benoemd. In afbeelding is
een voorbeeld weergegeven van de opbouw van mijn .csv
bestand om groepen aan te maken.
Twitter Profile
Location
Trends
Calendar
Booth reservation
In afbeelding is een voorbeeld weergegeven van mijn bestand om de metadata aan te passen. Het loadconfiguration graph heb ik als laatste uitgevoerd omdat alle data
hiervoor al bekend moet zijn. Zonder die data kan deze graph de verschillende attribuutnamen niet herkennen.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 42
BIJLAGE 5 GEBRUIKTE QUERY’S
In deze bijlage staan de query’s die gebruikt zijn bij het oplossen van fouten in het data bestand en voor toevoeging van nieuwe content. In ieder hoofdstuk staat vermeld waar de query voor dient en eventueel welke extra handelingen er toegepast moeten worden.
AANPASSEN VAN VREEMDE WAARDES IN DE DATA DOEL
Bij het uitlezen van twitter komen er vreemde tekens naar voren die tussen alle data staan. Deze waardes (bv.
\\u0009) worden meegegeven door Datasift. Bij het inladen van de data komen er al veel fouten naar boven
die erop wijzen dat een record niet ingeladen kan worden omdat deze vreemde waardes er tussen staan. Dit is
te verhelpen met een query.
QUERY function integer transform() {
$out.0.* = $in.0.*;
for(integer i = $in.0.length() - 1; i >=0 ; i--) {
if (getFieldType($in.0.*, i) == "string" &&
getFieldType($out.0.*, i) == "string") {
if (!isNull($in.0.*, i)) {
string originalValue = getStringValue($in.0.*, i);
string newValue =
originalValue.replace("([^\\u0009\\u000a\\u000d\\u0020-\\uD7FF\\uE000-
\\uFFFD]|[\\u0092\\u007F]+)","");
if (originalValue != newValue) {
fields[i] = getFieldName($in.0, i);
}
setStringValue($out.0.*, i, newValue);
function void postExecute() {
printErr("Fields with non-compliant XML 1.0 characters");
for(integer i = 0; i < fields.length(); i++) {
if (fields[i] != null) {
printErr(fields[i]);
}
}
}
UITVOERING Bovenstaande query kan worden uitgevoerd in het reformat component in de integrator. Onder het tabblad source kan de query ingegeven worden.
De query veranderd alle waardes die aanwezig zijn in de query, naar een nieuwe waarde. Het laatste gedeelte van de query toont alle fouten die aangepast worden op het scherm zodat het makkelijker wordt om de record op te sporen.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 43
DATE TIME STAMP AANPASSEN
DOEL
Bij het uitlezen van de twitter content krijgt de record ,twitter_created_at, automatisch een format mee die
datum en tijd achterelkaar zet. Het nadeel hiervan is dat er geen analyses los gelaten kunnen worden op
specifiek uur, minuut, seconden en dag. De functie van deze query zal deze onderdelen uit dat ene record
halen en terug zetten in aparte records. Het resultaat zal dan, als voorbeeld, zijn:
Oorspronkelijke record Nieuwe records
Thu,10 Jan 2013
15:23:11 +0000
Hour: 15
Minute: 23
Second: 11
Day: 10
QUERY
$out.0.interaction_created = date2str($in.0.interaction_created_at,'yyyy-MM-dd') + ' ' + date2str($in.0.interaction_created_at,'HH') + ':00 - ' + date2str($in.0.interaction_created_at,'HH') + ':59'; $out.0.interaction_created_hour = num2str(date2num($in.0.interaction_created_at,hour)); $out.0.interaction_created_minute = num2str(date2num($in.0.interaction_created_at,minute)); $out.0.interaction_created_day = num2str(date2num($in.0.interaction_created_at,day)); $out.0.interaction_created_second = num2str(date2num($in.0.interaction_created_at,second)); $out.0.interaction_created_short = concat(date2str($in.0.interaction_created_at,'HH'),':00 - ',date2str($in.0.interaction_created_at,'HH'),':59');
UITVOERING Bovenstaande query kan worden uitgevoerd in het reformat component in de integrator. Onder het tabblad transform kan de query ingegeven worden.
In de query staan nieuwe records gedefinieerd die nog niet bestaan. De volgende stap is deze records aan te maken. De volgende records moeten worden aangemaakt op alle aanwezige edges naar de reformat component. Belangrijk hieraan is deze op elke edge in dezelfde volgorde te zetten.
Het volgende wat er moet gebeuren is op elke aanwezig edge de record: interaction_created_at aanpassen naar type DATE en in de properties van deze record format code aanpassen naar: EEE, d MMM yyyy HH:mm:ss Z en locate naar EN(Engels)
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 44
MULTI-ASSIGN DELIMETER [“ ”] VERWIJDEREN
DOEL
Sommige records uit de twitter data krijgen een [“”] delimeter mee. Deze zijn niet te verwijderen met de
standaard methode in de integrator. Hiervoor is een query verwijst.
QUERY
function string replacebadchars(string str1){ string con; integer l_str1; if ( str1 != null ) con = substring(str1,2,length(str1)-4);
UITVOERING Bovenstaande query kan worden uitgevoerd in het reformat component in de integrator. Onder het tabblad
transform kan de query ingegeven worden.
Vervolgens moet er aangegeven worden welk record deze delimter door replacebadchars toe te voegen aan
transformveld.
Voorbeeld
$out.0.links_url = $in.0.links_url; word $out.0.links_url = replacebadchars($in.0.links_url);
GEBRUIK MAP COMPONENT
Doel
Binnen OEID studio is het mogelijk om een map component te gebruiken waar bijvoorbeeld de tweets op
weergegeven kunnen worden. In de twitter data zit namelijk een geo longitude en geo latitude record waar de
coördinaten in staan van de geplaatste tweet. Het doel van deze query is een geospatial attribute te vullen met
deze coördinaten zodat de map er mee om kan gaan.
Query
function string concat_with_space(string str1, string str2){
string con;
if ( str1 <> "" and str2 <> "" ) con = str1 + " " + str2;
if (con == 'null null') con = "";
out.0.GEO = concat_with_space($in.0.interaction_geo_latitude,$in.0.interaction_geo_longitude);
Uitvoering
Voeg een nieuwe record toe “GEO” op elke edge achter de reformat component. De record moet op elke edge
op dezelfde plaats staan. Staat de record in veld 70 dan ook op de tweede edge op veld 70. Voeg een nieuwe
custom property aan de nieuwe record toe met de volgende gegevens:
Name: mdexType
Value: mdex:geocode
Aan de presentatiekant (EOID studio) kan nu de map component toegevoegd en aangepast worden.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 45
SNIPPETING TOEVOEGEN
DOEL De snippeting functionaliteit biedt de mogelijkheid om de naam, van een zoekopdracht, weer te geven in alle
zoekresultaten. Dit maakt het voor de gebruiker makkelijker om in één oogopslag door de zoekresultaten te
lezen om sneller te vinden wat waar ze naar op zoek zijn.
QUERY function integer append() {
n++;
if ($in.0.AttributeName == "twitter_text")
{
value =
value + "MEMBER_NAME RELEVANCE_RANK='" + num2str(relRank) + "'
SNIPPET_SIZE='10'>" +
$0.AttributeName + "</MEMBER_NAME>";
}
else
{
value =
value + "MEMBER_NAME RELEVANCE_RANK='" + num2str(relRank) +
"'>" +
$0.AttributeName + "</MEMBER_NAME>";
}
nameOfInterface = $0.InterfaceName;
relRank++;
return n;
UITVOERING Deze query heb ik toegepast in de LoadIndexingConfiguration graph in het Create Search Interface component.
Hierin geef ik met de query aan om alleen snippting te gebruiken in de attribuut met de naam “twitter_tekst”.
Met snippet_size=10 geef ik aan hoeveel woorden er maximaal gemarkeerd worden.
Stefan van Iersel Bijlage bundel: De kracht van Endeca met ongestructureerde Data Pagina 46
BIJLAGE 6 GESTRUCTUREERDE DATA
Top Related