Upgrade to Pro — share decks privately, control downloads, hide ads and more …

bigdata.be meets zimmo.be

bigdata.be meets zimmo.be

I presented this deck at a bigdata event by businessmeetsit, a Belgian IT networking organisation. The slides briefly report several workshops that we organized in 2012 between Belgium's bigdata community and zimmo.be, a leading real-estate website.
In this first part of this project, we performed an exercise in building a real-estate datastore in HBase, and in the second part we connected to HBase from R to build several predictive and text mining models on this datastore.

www.businessmeetsit.be/events/145484/seminar-big-data-14-3-2013-/

kennyhelsens

March 14, 2013
Tweet

Other Decks in Technology

Transcript

  1. Think Data [email protected] A bigdata use case on real estate

    data Business Meets IT seminar on BigData Antwerp 14/03/2013
  2. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Is a Community that started meeting in the summer of 2011 •  Counts 288 members after 36 months •  Organizes activities every 2 months –  Read/Discuss white paper on bigdata topics –  Report/Solve common issues around bigdata –  Present topics by guest speakers –  Host workshops BigData.Be
  3. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Are less about discussing and more about hands- on experience with bigdata and analytics technologies •  Start from the basics of bigdata •  Handle one project in 10 workshops •  Consider one workshop as a 3-hour sitting/ hacking/coding together session •  At the time, kindly hosted by the Computational Omics group at Ghent University BigData.Be Workshops
  4. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Real estate client application used by + 1000 real estate salesmen •  Real estate website popular in Belgium + 100,000 properties for sale today + 1,000,000 properties advertised in last years •  Current situation: SQL back-end •  BigData.Be Use Case: 1) How can we model real-estate data in HBase? 2) Data Analytics on Real-Estate Data? Zimmo.be
  5. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Build a semi-structured model for real estate data •  Perform data analytics on real estate data –  Prediction of the price and time of the sale –  Text mining on free text descriptions Project Goals
  6. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Apache HBase ▪ The database isn't an RDBMS which supports SQL as its primary access language ▪ Is really more a "Data Store" than "Data Base" ▪ Lacks many features you find in an RDBMS like typed columns, secondary indexes, triggers ▪ Supports linear scaling ▪ If a cluster expands from 10 to 20 RegionServers, it e ectively doubles both in terms of storage and speed ▪ Automatic Failover ▪ Automatic sharing, HBase tables are distributed on the cluster via regions, and regions are automatically split and re- distributed as your data grows ▪ E ciently handles sparse data ▪ Requires no fixed schema
  7. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Apache HBase ▪ The database isn't an RDBMS which supports SQL as its primary access language ▪ Is really more a "Data Store" than "Data Base" ▪ Lacks many features you find in an RDBMS like typed columns, secondary indexes, triggers ▪ Supports linear scaling ▪ If a cluster expands from 10 to 20 RegionServers, it e ectively doubles both in terms of storage and speed ▪ Automatic Failover ▪ Automatic sharing, HBase tables are distributed on the cluster via regions, and regions are automatically split and re- distributed as your data grows ▪ E ciently handles sparse data ▪ Requires no fixed schema
  8. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp No Fixed Schema ▪ SQL Schema +++ Standardization ▪ Modeling Real Estate Data • Each Real Estate salesman has common and distinct descriptive features --- Joins become dreadful +++ Joins can be powerful +++ Primary and secondary indices --- Updating indices can be very slow • Consider Jacuzzi's, solar panels, ground water pump, wind turbine, .. ▪ HBase data structure • Add as many columns as you like • Requires no index updates Data Volume
  9. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Sparse Data id price nr_bedrooms … other wind_turbine 1 200000 2 .. zandbak, schommel NULL 2 180000 2 .. gemeubeld NULL … .. .. .. .. 875123 500000 3 .. 1 id price 1 200000 2 180000 875123 500000 id other 1 zandbak 1 schommel 2 gemeubeld id wind_turbine 875123 1 Row Oriented (RDBMS model) Column Oriented (HBase, Multi-value sorted map) Only 1 out of the 1 million properties had a wind turbine == extremely sparse.
  10. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Linear Scaling ▪ Modeling Real Estate Data • 1,000,000 houses are no big data • Yet the data model should not be technically limited to scale to 100,000,000 houses • Linear scalability of HBase brings ease of mind that our e orts on the Belgium housing market would scale to FR/US housing market housing m arket BE US
  11. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Linear Scaling P11 P21 Pk1 P12 P22 Pk2 P1n P2n Pkn ... ... ... ... ... ... Data is split into k partitions Data is replicated n times
  12. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Use Case Data Structure (rowkey, column family, column) -> value immo_anders_83 zimmo_original n_postcode 9000 • The rowkey is the primary key used for sorting and storing table. Its design is therefore of critical importance. • A column family groups multiple columns and handles them together. Designing column families for data access patterns is of critical importance. • A column qualifies a particular attribute. New columns can be added to column families on the fly. immo_anders_83:zimmo_original:n_badkamer=1 immo_anders_83:zimmo_original:n_postcode=9000 immo_anders_83:belstat:crime_per_capita=0.001 immo_anders_84:zimmo_original:n_postcode=9052 immo_anders_84:zimmo_original:n_open_haard=1 table bigdatabe ex 1 • ex 2 • ex 3 • ex 4 • ex 5 •
  13. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Build a semi-structured model for real estate data •  Perform data analytics on real estate data –  Prediction of the price and time of the sale –  Text mining on free text descriptions Project Goals
  14. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp General Statistics POSTCODE EPC attest GEO
  15. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Text Mining −1.0 −0.5 0.0 0.5 1.0 1.5 −0.5 0.0 0.5 1.0 1.5 2 5 1 4 7 8 9 6 3 •  Correspondence Analysis By Postcode (A)
  16. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Correspondence Analysis By Postcode (A) 8xxx   2xxx 3xxx 9xxx   1xxx 4xxx 5xxx 6xxx   Text Mining
  17. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Correspondence Analysis By Postcode (A) 8xxx   Text Mining
  18. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Correspondence Analysis By Postcode (A) 1xxx 4xxx 5xxx 6xxx   Text Mining
  19. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Correspondence Analysis By Postcode (A) 2xxx 3xxx 9xxx   Text Mining
  20. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp −1.0 −0.5 0.0 0.5 1.0 −1.0 −0.5 0.0 0.5 1.0 1.5 prijslijst bereikbaarheid verlicht ontbijth comf vern vgwggdvgvkrgvv privatiev bebouwingen parallel btwtarief hoekwon rechtstreek gashaard vinden droge herenhui hedendaag shop houtcassett mon laat ink autostandplaat plan strandappart verdeeld régime son droogkast bankwaarborg woongedeelt wenst zoek seulement lingeriewinkel waarbij epc vernieuwdstudio idyllisch aménagé raampartijen ardennen ongev ruimtelijk klare goeie topper rénové gebi optima bossen ixia compren grenzend gerealiseerd dorpj omvattend joli koopj prijspenthous verstand vele kust oui eender allen associati pal bezichtigen incl ing voitur verwarming lippenslaan exceptionnell hampton vlugg concept percelen algemen echt zolderruimt zuiden binnenstad ijskast inrichtbar beglazingen gren woonwijk ander glazen omg buitenkan voorziet ondergrond propriété tegelvlo tweede strandruim autostaanplaatsen aarzel horecazaak inpandig natuurlijk praktijk houtkachel hele spelend chaudiampr afwerking schijf commercieel diept bestemd winkelcentrum koopbestaand uitbreid heden bergplaat verwarmingssysteem toplocati non koksijdedorp toren doorlopend btwstelsel surfac gvg hoekapp hoogwaardig rec aménag advocaten zeezichtappart bew beau starter zoekt antwerpen mezzanin sint libr zichtbestaand uitinkomhal nemen zelfstandig venster sdb pure eur personen besliss nieuwpoortsesteenweg neem teve vernieuwdu bonn vanderstichelenstraat verdoy rustiek omvatten villag verdiepen haven best inspraak bereiken coin leefkkn studiopenthous contact zie energi new traphal charg emplac huur onderhoud keuze dakterrassen persoonb plaatsen eerste qua donnant oprijlaan letterlijk tavern meest strakk ring vlaams arrièr voormalig opbergruimt bijkomend oriëntati interieur récent gerenov bekijk statig gericht keramisch woonerf stallingen landhui inbouwcassett stapelzold thui winkelruimt lumineux hedendaags ontworpen raamwerken uitweg constructiepenthous brainelalleud algemeen visit beaux ingr saisir gasfornui cadr fietsenbergingappart sol loft afgew doorgaand verkeersverbind fair doorgeeflu toegan verfijn sintidesbald comm zijstraat zuinig kantoren personenin zeenieuw oog kijken bertrix onz snell telt prix uitvoer build schrijnwerk alsook duinenzijd toegankelijk kelderbergin standaard interess waterbedmodern inter slaapkamersinger msup accè beringen dakterra manger karakt ontwerp telefoon rolstoeltoegank hoogt knokk autosnelweg gekozen slpkextra mag kachel westhoekverkavel niveau onroerend prima balcon cassett georiënteerd heerlijk binnenstaanplaat karaktervoll gare toiletvolledig bosrijk groep patio alleenstaand vaart vrije hart également inbouwkasten lav scher luxuez beersstraat fase kiel bureauruimt vind dont gedetaileerd wasruimt leuk grondoppervlakt koopt beslissen inhoud binnentuin immo stamp kursaal woonvolum onderh stapelbedden omv videofoon bos verhuurmogelijkheden hoogstaand baan began casco architect bijzond loopafstand partir terrasj superfici superb samenstel goede vesten san warm zorgen heist sauna natuurgebi sise lvorm verfijnd standaardafwerk recentelijk bezichtig houdt koel ééngezinswon servic extraslaaphoek geïnstal bouwlagen zoal granieten ketel woonoppervlakt amper excellent plaats wenduin mar situat foto geheel mogh meerprij serviceflat rezdechaussé tram opbouw alu microgolf ardenn leeftijd voorkooprecht horeca bijgebouwen imposant gebruiksrecht palend aanrader opgetrokken feu auth massief aurorekeuken kleiner place slk prachtige natuur meubel mee recht parquet burhaimont verwarmd berging oudenaard bereikbh living volum niveaux cape constitu eau hoofdverblijfplaat fantastisch mxb aantrekkelijk bebouwd keukenhoek berkenbo mgemeen espac commercial aanrad doorlop voortuin jaarbasi voorzieningen levenskwaliteit zeeappart desgewenst gemeent binnenko naakt zonneterras confort wijnkeld per verbouwd mariakerkeruim mte nummer residentievlakbij sud parkingplaat belangrijk marmer compteur leidt dri leopold kantoorruimt betaalbaar pariba tov ainsi saapkam doktor prestigieuz buurtruim grati woonplaat taqu badkamermeubel huidig handelpand telken liefst qualité parketvlo beglazing extérieur gevoel pari kortom aansluitingen vrijblijvend geven dispos oas vergun verzicht koertj parc inkomen dienst investeringen zonovergoten zonnek hobbyruimt tegenov laminaatparket maand que bekomen dag opgericht slaapkamersbij fietsenberging eeth designkeuken graniet bihorair gevelbreedt eenvoudig grondig électriqu bijna beschikken magnifiek spacieux tuinkelderall nieuwbouwappartementen toitur samengevoegd gem verkop stal cour design prijshet garden aankopen hoekperceel alleenst bergingen kapellestraat zold elementen carrelé transport ouvert eetruimt badkamer schuilt wche omgeven balkonoppervlakt situ hoofdverblijf hoog eet alleen slaapkamer herenwon gezel aanbied aux ieder afstand natuurstenen kaai zuidwest duurzaam ingerichtwordt enz universiteit achtertuin rénover bestuit crepieliv inkomhallruim vlot fornui neuf inrichtb voorgevel quartier aantal slpkmrs vgwchegdvgvkrgvv verkrijgen kinderen voorzijd gewoon oorspronkelijk topligging turnhout nouvell akt handelsgelijkvlo heidestraat beletag geïsol trappen voordeur serviceflatgebouw bergingwasplaat samen velden gemoderniseerd uitgeeft unieke etage potentieel provinci eetkeuken magnifiqu creëren sfeer bebouwing handelszaak winkelcentra létage vooraanpenthous amideus bus perf straatbreedt appartem marmeren composé breden libéral chaud steed bezoekj véranda bespreekbaar tijdloz deâbeemdenstraat straatkant tegel woonappartementen condal lokati ligb personentotal autorouti combinati toiletop rapport groenplaat woonk fietsenpoortj hott scheld zolderverdiep afwerkingsmaterialen bâtiment kunt vraagprij séparé plancher stenen nieuwbouwconstructi varken apa luxueuz achterk aren rotond volet compos indeling koelkast mooist permi kwaliteitsmaterialen burgerwon fietsen werkblad instapklare ribella veilig maakt aangekocht isolati commerci parkin lvormig prestigieus kwaliteitsvoll ged klassegebouw évier folder verdiepingen spoelbak ind kom par opgebouwd finit omheind pareltj burelen troef construct inlichtingen toilett sampjour tonen levendig hoewel jan vijfd maldegem mariakerkebestaand aandacht natuurreservaat droogkasthallvestiair kwaliteit sierschouw badkamers kast kwalitatief vernieuwde hoekappartement bibliotheek brugge doktorspraktijk zone chalet alarm energiezuinig gans mai sfeervoll niv zuid rendenderend premier bedraagt deelgemeent polderzicht link vervoerbestaand verkochtbestaand tiptop palier chaussé veurn snel betreft plafond hinterlandbestaand geplaatst aluminium woon airco onklopbare trendi verrassend accumulati polyvalent tuinhuisj werkplaat laminaat overlopen grotendeel autostrad landschap betegeld buitenberg variëren kerk than land steen actuel beschikbar gezin faciliteiten tijden historisch hasselt slaa flat stadsrand uitwoonkam nodig detail zuidelijk koppel weg aanmerk charm super notari vestiairekast verkeer gekend tarief rioler hoekstudio zelfd matériaux enof elle smaak onderverdeeld bedekt bewoonbaar vill beid winkels gestript kijkj doet méér opgedeeld originel dezelfd natuursteen vgwggdvgvkrvv nummerâ komen gerust kadastra handelszaken baignoir regenwat stadsterra woonruimt bijz faampad gezinnen dient blankenberg excl zakencijf stookoli onbemeubeld état sectional handel besparen haan makkelijk achterin plus laatst witt doe bet bien green four proch leven dorp brussel deg gegarandeerd zijdelings annex liggen nieuwbouwapp geplaatstlift hoekbad vous ses geschilderd carrelag vent plankenvlo passen vuilnisloka nombreus hout parel residentieel poppel hangtoilet eigenaar zeedijkidea glv zitruimt opslagruimt registrati senioren idéal port benedenverdiep achterzijd budgetten stelsel erg rustige nieuwpoort vormen etat vakantiewon bankirai afmetingen zwartgoorwegâ commercanten bur constructi condensatieketel res bon belangrijkst baddouc tel zolderkam omringd deâlaatst situeert offre elke hoev parti oogartskabinet forti starterswon ontbijthoek uitliv tva nutsvoorzieningen parfait dienen bruisend vloerverwarm damm bergwaspl luxemburg jaren droit weilanden sous villawijk roy winkelstraten bedrijf klassiek alleenwonenden entièr top praktijkruimt kwal rechtov nieuwbouwverkavel descript toileter ten vijver uitg kijkt electriciteit huren axe keuk commodité bieden uiterm complex stand fotoâ zeezichtbestaand afgesloten agrarisch bezoekerstoilet kelderb overloop dhabit ème dubbele appartementfrigoc zoldermogelijkheid tuinberg vide zucht lood nivell nuit weststraat pièc wensen waardoor qui belétag contacteren auto bewezen appartementsgebouw rond schuifraam balken zeeinkomhal resid bidet hoekresidenti woonhuis bureauzonnig bruikbar bijgebouw overnam douchecel dez (2e+05,3e+05] (1e+05,2e+05] (3e+05,4e+05] (6e+05,7e+05] (4e+05,5e+05] (9e+05,1e+06] (5e+05,6e+05] (7e+05,8e+05] (8e+05,9e+05] •  Correspondence Analysis By Price Category (B) <200k   >300k   200k : 300k   Text Mining
  21. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Correspondence Analysis By Price Category (B) <200k   Text Mining
  22. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp 200k : 300k   Text Mining •  Correspondence Analysis By Price Category (B)
  23. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp •  Correspondence Analysis By Price Category (B) >300k   Text Mining
  24. Think Data [email protected] BigData.be meets zimmo.be Business Meets IT seminar

    on bigdata, 14/03/2013, Antwerp Acknowledgements + QA ▪ Organisations ▪ Software ▪ Workshop Participants ThinkData is a consultancy with a keen interest in gathering value and insights from both small and large volumes of data. If needed, we can employ BigData technologies for data organization, yet R is our main analytics engine to think about the problem, optimize decisions, forecast variables, cluster groups and visualize novel insights.