Mega ¡Modeling ¡ ¡ for ¡Scien/fic ¡“Big ¡Data” ¡Processing ¡
Stefano ¡Ceri, ¡Emanuele ¡Della ¡Valle ¡ (Politecnico ¡di ¡Milano) ¡ Dino ¡Pedreschi, ¡Roberto ¡Trasar/ ¡ (ISTI-‑CNR ¡and ¡University ¡of ¡Pisa) ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 1 ¡
Mega Modeling for Scien/fic Big Data Processing Stefano - - PowerPoint PPT Presentation
Mega Modeling for Scien/fic Big Data Processing Stefano Ceri, Emanuele Della Valle (Politecnico di Milano) Dino Pedreschi, Roberto Trasar/
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 1 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 2 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 3 ¡
4 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 5 ¡
[source ¡hcp://www.ccs.neu.edu/home/amislove/twicermood/ ¡] ¡
6 ¡
The social network behind Facebook
7 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 8 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 9 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 10 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 11 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 12 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 13 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 14 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 15 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 16 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 17 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 18 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 19 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 20 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 21 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 22 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 23 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 24 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 25 ¡
MINE ¡RULE ¡PurchaseBasket ¡AS ¡ SELECT ¡DISTINCT ¡l..n ¡item ¡AS ¡BODY, ¡I..1 ¡item ¡AS ¡HEAD, ¡SUPPORT, ¡CONFIDENCE ¡ FROM ¡Purchase ¡ WHERE ¡DATE ¡BETWEEN ¡1-‑1-‑2011 ¡AND ¡1-‑1-‑2012 ¡ GROUP ¡BY ¡Transac/on ¡ HAVING ¡COUNT(*) ¡>= ¡3 ¡ EXTRACTING ¡RULES ¡WITH ¡SUPPORT: ¡0.2, ¡CONFIDENCE: ¡0.2 ¡ ¡ ¡
body head support confidence ski_pants jacket 0.2 0.25 hiking_boots jacket 0.25 0.3 ski_pants, hiking_boots jacket 0.5 0.3 col_shirt jacket 0.3 0.2 col_shirt ,hiking_boots jacket 0.5 0.2
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 26 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 27 ¡
ER 2012 - Stefano Ceri
28
Who ¡are ¡the ¡opinion ¡makers? ¡i.e., ¡the ¡users ¡who ¡are ¡likely ¡to ¡influence ¡the ¡ behaviour ¡of ¡other ¡users ¡who ¡follow ¡them ¡
REGISTER STREAM OpinionMakers COMPUTED EVERY 5m AS CONSTRUCT { ?opinionMaker sd:about ?resource } FROM STREAM <http://streamingsocialdata.org/interactions> [RANGE 30m STEP 5m] WHERE { ?opinionMaker ?opinion ?resource. ?follower sioc:follows ?opinionMaker. ?follower ?opinion ?resource. FILTER ( cs:timestamp(?follower) > cs:timestamp(?opinionMaker) && ?opinion != sd:accesses ) } HAVING ( COUNT(DISTINCT ?follower) > 3 )
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 29 ¡
CREATE ¡ ¡MODEL ¡ ¡MilanODMatrix ¡ ¡AS ¡ ¡MINE ¡ ¡ODMATRIX ¡ FROM ¡ ¡(SELECT ¡ ¡t.id, ¡ ¡t.trajectory ¡ ¡FROM ¡ ¡TrajectoryTable ¡ ¡t), ¡ (SELECT ¡ ¡orig.id, ¡ ¡orig.area ¡ ¡FROM ¡ ¡MunicipalityTable ¡ ¡orig), ¡ (SELECT ¡ ¡dest.id, ¡ ¡dest.area ¡ ¡FROM ¡ ¡MunicipalityTable ¡ ¡dest) ¡ ¡ ¡ ¡ CREATE ¡ ¡RELATION ¡ ¡CenterToNESuburbTrajectories ¡ ¡USING ¡ ¡ENTAIL ¡ FROM ¡ ¡(SELECT ¡ ¡t.id, ¡ ¡t.trajectory ¡ ¡FROM ¡ ¡TrajectoryTable ¡ ¡t, ¡ ¡MilanODMatrix ¡ ¡m ¡ WHERE ¡ ¡m.origin ¡ ¡= ¡ ¡Milan ¡ ¡AND ¡ m.des/na/on ¡ ¡IN ¡ ¡(Monza, ¡ ¡..., ¡ ¡Brugherio)) ¡ ¡ ¡ ¡ CREATE ¡ ¡MODEL ¡ ¡ClusteringTable ¡ ¡AS ¡ ¡MINE ¡ ¡T-‑CLUSTERING ¡ FROM ¡ ¡(Select ¡ ¡t.id, ¡ ¡t.trajectory ¡ ¡from ¡ ¡CenterToNESuburbTrajectories ¡ ¡t) ¡ SET ¡ ¡T-‑CLUSTERING.FUNCTION ¡ ¡= ¡ ¡ROUTE_SIMILARITY ¡ ¡AND ¡ T-‑CLUSTERING.EPS ¡ ¡= ¡ ¡400 ¡ ¡AND ¡ T-‑CLUSTERING.MIN_PTS ¡ ¡= ¡ ¡5 ¡
30 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 31 ¡
DEFINE ¡QUERY ¡NightPlan($X:String, ¡$Y: ¡string, ¡$Z:Integer ¡, ¡$U:String, ¡$V:String) ¡AS ¡ ¡SELECT ¡M.*, ¡T.*, ¡R.*, ¡TotalPrice=T.Price ¡+ ¡R.AvgPrice ¡ ¡FROM ¡((Movie ¡(iGenre: ¡$X, ¡iCountry: ¡Y, ¡iYear: ¡$Z) ¡AS ¡M ¡USING ¡IMDB_MOVIES, ¡ ¡JOIN ¡Theatre ¡(iAddress: ¡$U, ¡iCity: ¡$V, ¡iCountry: ¡$Y) ¡AS ¡T ¡USING ¡GOOGLE_DISPLAYING ¡ON ¡M.Title=T.Title) ¡ ¡JOIN ¡Restaurant ¡(iCountry: ¡$Y, ¡iCategory: ¡"Italian ¡Restaurant") ¡AS ¡R ¡USING ¡YQL_LOCAL ¡ON ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡T.address=R.Address ¡AND ¡T.city=R.City) ¡ ¡WHERE ¡R.Ra/ng>3 ¡ ¡RANK ¡BY ¡(R=0.4, ¡T=0.3, ¡M=0.3) ¡ ¡LIMIT ¡20 ¡TUPLES ¡AND ¡50 ¡CALLS ¡
32 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 33 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 34 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 35 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 37 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 38 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 39 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 40 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 41 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 42 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 43 ¡
loca/ons ¡which ¡are ¡traversed ¡by ¡the ¡same ¡item. ¡ ¡ ¡Data: ¡ ¡ ¡Point(Item, ¡Time, ¡Loca/on) ¡ ¡ ¡Pacern: ¡ ¡Trajectory(Item, ¡FromLoca/on, ¡ToLoca/on, ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Steps:[Loca/on], ¡StepCount: ¡Number) ¡ ¡
simultaneous ¡movements ¡of ¡groups ¡of ¡individuals ¡across ¡regions. ¡ ¡ ¡Data: ¡ ¡Trajectory(Item, ¡FromLoca/on, ¡ToLoca/on, ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Steps:[Loca/on], ¡StepCount: ¡Number) ¡ ¡Pacern: ¡ ¡Flock(FlockName, ¡FromRegion, ¡ToRegion, ¡TimeInterval, ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Objects: ¡[Items], ¡ObjectCount: ¡Number) ¡
44 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 45 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 46 ¡
– Purpose: ¡assembling ¡input ¡objects ¡-‑-‑-‑ ¡typically ¡applica/on-‑specific ¡ – Techniques: ¡abstrac/on, ¡seman/c ¡enrichment, ¡noise ¡reduc/on ¡ – Computa/on ¡complexity: ¡low ¡(a ¡data ¡scan ¡or ¡sort) ¡
– Purpose: ¡performing ¡the ¡core ¡scien/fic ¡processing, ¡compu/ng ¡output ¡
– Techniques: ¡computa/onal ¡models ¡ ¡ – Computa/on ¡complexity: ¡as ¡required ¡(par//oning ¡and ¡streaming ¡ recommended) ¡
– Purpose: ¡extrac/ng ¡& ¡presen/ng ¡results ¡-‑-‑-‑ ¡typically ¡applica/on-‑specific ¡ – Techniques: ¡quality ¡assessment, ¡filtering, ¡significance ¡measuring, ¡ diversifica/on, ¡ranking ¡ – Computa/on ¡complexity: ¡as ¡required ¡(object ¡transforma/ons ¡to ¡fit ¡ needs) ¡ ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 47 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 48 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 49 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 50 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 51 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 52 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 53 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 54 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 55 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 56 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 57 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 58 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 59 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 60 ¡
aner ¡a ¡fault, ¡etc. ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 61 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 62 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 63 ¡
Inputs BOTTARI
Temporal Model Geo-Spatial Model Predictive Model Social Media Crawler and Miner
Outputs
64 ¡
– Input: ¡User ¡posi/on, ¡seman/c ¡+ ¡geo-‑spa/al ¡descrip/on ¡of ¡restaurants ¡ – Output: ¡a ¡list ¡of ¡matching ¡restaurants ¡ranked ¡by ¡distance ¡from ¡the ¡ user ¡
– Input: ¡stream ¡of ¡liked ¡restaurants ¡ – Output: ¡ranking ¡of ¡restaurants ¡in ¡“like” ¡order ¡in ¡the ¡last ¡week/month/ quarter ¡
– Input: ¡materialized ¡stream ¡of ¡liked ¡restaurants ¡ – Output: ¡predic/on ¡of ¡the ¡restaurant ¡which ¡will ¡be ¡chosen ¡by ¡the ¡user ¡ ¡ as ¡best-‑fit ¡
– Input: ¡stream ¡of ¡tweets ¡of ¡people ¡about ¡ ¡restaurants ¡ ¡ – Output: ¡stream ¡of ¡most ¡liked ¡restaurant ¡ ¡aner ¡named ¡en/ty ¡ recogni/on ¡ ¡and ¡sen/ment ¡mining ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 65 ¡
66 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 67 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 68 ¡
69 ¡
Home ¡= ¡most ¡frequent ¡loca/on ¡ Work ¡= ¡second ¡most ¡frequent ¡loca/on ¡
Input GPS data Clustered Trajectories Cluster Statistics Geography, Zoning and Road Network TRAJECTORY
RECONSTRUCTION
& SELECTION
CLUSTER
EVALUATION
TRAJECTORY CLUSTERING
70 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 71 ¡
Trajectory Clusters
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 72 ¡
All Users’ Trajectories
Spatio-temporal Distance function
TRAJECTORY CLUSTERING
Routes to Linate
ROUTES IDENTIFICATION
Destination e.g., Linate Spatio-Temporal Observations
Semantic of a Stop
DATA CLEANING TRAJECTORIES
FILTERING
TRAJECTORIES
RECONSTRUCTION
User’s Mobility Profile
Spatio-Temporal Thresholds
CLUSTERING DECOMPOSITIO
N
PROFILE AGGREGATION
USER MOBILITY PROFILE COMPUTATION
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 73 ¡
Spatio-temporal Distance function
TRAJECTORY CLUSTERING
Semantic of a Stop
DATA CLEANING TRAJECTORIES
FILTERING
TRAJECTORIES
RECONSTRUCTION
Spatio-Temporal Observations Single User’s Trajectories Single User’s Trajectory Clusters
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 74 ¡
ER ¡2012 ¡-‑ ¡Stefano ¡Ceri ¡ 75 ¡