MediaQ: Practical Seminar on Big Data for Social Media Institut für Informatik MediaQ: Practical Seminar on Big Data for Social Media Hauptseminar WS 2014/15 Ansprechpartner: Dr. Matthias Renz Dr. Tobias Emrich Johannes Niedermayer
Heute Ablauf Was ist MediaQ? Verwaltete Daten Ziel des Seminars Ablauf des Seminars Einteilung der Gruppen
MediaQ Was ist MediaQ? Media Management Framework der University of Southern California (USC) Sammeln, organisieren, teilen, suchen und verwalten von Bildern und Videos Mobile App für Android und iPhone Homepage: http://mediaq.usc.edu
Was ist der Unterschied zu YouTube? MediaQ Was ist der Unterschied zu YouTube? Hochgeladene Videos und Bilder sind immer mit Position und Blickrichtung als Metadaten versehen Suche von Medien anhand von Position und Blickrichtung möglich Killerapplikation: Spatial Crowdsourcing
MediaQ Crowdsourcing Auslagerung von Teilaufgaben (Tasks) durch einen Auftraggeber (Requester) an eine Gruppe freiwilliger Nutzer (Worker)
MediaQ Anhai Doan , Raghu Ramakrishnan , Alon Y. Halevy. Crowdsourcing systems on the World-Wide Web. Communications of the ACM, v.54 n.4, April 2011
Spatial Crowdsourcing (…in MediaQ) Spatial Task: „Mache ein Video vom Verkehr in der Overland Avenue“ Erstellen von Spatial Tasks durch den Requester Erledigen von Spatial Tasks Mittels einer mobilen App
MediaQ Server MediaQ Webinterface http://mediaq.dbs.ifi.lmu.de/MediaQ_MVC_V2/ Anmeldung erforderlich Datenbank-Backend Host: mediaq.dbs.ifi.lmu.de Verwaltung von Video-, Benutzer- und Task- und Workerinformationen Zugangsdaten Benutzername: student Passwort: tneduts
Datenbankzugriff über mysql MediaQ Datenbankzugriff über mysql Login (Shell): mysql -h mediaq.dbs.ifi.lmu.de -u student -p MediaQ_V2 Tabellen anzeigen: SHOW TABLES; Informationen über Tabelle anzeigen: DESCRIBE <TABLENAME>
Beispiel: SHOW TABLES MediaQ mysql> SHOW TABLES; +-----------------------+ | Tables_in_MediaQ_V2 | | FRIENDSHIP | | GEOCROWD_STATS | | GROUPS | | INDOOR_VIDEO_METADATA | | REGIONFOLLOWING | | TASKS | | TASKS_INQUIRIES | | TEXT_INFO | | TRANSACTION | | USERGROUPS | | USERS | | USERS_PROFILES | | USERS_SESSIONS | | VIDEO_INFO | | VIDEO_METADATA | | VIDEO_USER | | WORKERS_ASSIGNMENTS | | WORKERS_RESPONSE |
Tabelle VIDEO_METADATA MediaQ Datenbank Tabelle VIDEO_METADATA Zeitstempel (in ms) Keywords (optional) Video ID Koordinaten Blick-Kegel FrameNr
Blickkegel MediaQ ThetaX ThetaY ThetaZ oben N W O links rechts S unten alpha (Plat, Plng) R (radius)
Tabelle USERS_PROFILE MediaQ Datenbank Tabelle USERS_PROFILE Tabelle VIDEO_USER
Datenbankzugriff von Java aus MediaQ Datenbankzugriff von Java aus Download des JDBC Treibers für MySQL (Jar-Datei, Plattformunabhängig): http://dev.mysql.com/downloads/connector/j Z.B. „mysql-connector-java-5.1.33-bin.jar“ als Library ins Projekt einbinden Möglich aus dem Cip-Pool aus dem MWN (mittles VPN Client)
Datenbankzugriff von Java aus MediaQ import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class MySqlTest { public static void main(String[] args) throws Exception { Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://mediaq.dbs.ifi.lmu.de:3306/MediaQ_V2?“ +“user=student&password=tneduts"); Statement stmt = conn.createStatement(); ResultSet rset = stmt.executeQuery("select * from VIDEO_METADATA"); while (rset.next()){ String s = rset.getString("VideoID") + ": " + rset.getInt("FovNum") + " (" + rset.getDouble("Plat") + ", " + rset.getDouble("Plng") + ")"; System.out.println(s); } rset.close(); stmt.close(); conn.close(); Datenbankzugriff von Java aus
Weitere Infos Ziele App : Android: https://dl.dropboxusercontent.com/u/29802060/MediaQ/MediaQ-LMU%20Munich.apk iOS: per E-Mail (Anfrage schicken) Tutorials: http://mediaq.usc.edu/MediaQ_Info/ (Menüpunkt „More“) Zugriff auf die Videodateien: http://mediaq.dbs.ifi.lmu.de/MediaQ_MVC_V2/video_content/
Ziele des Seminars Ziele Einarbeiten in die Themengebiete (Spatial-) Crowdsourcing Räumliche/Raumzeitliche Anfragebearbeitung Kreative Auseinandersetzung mit den gegebenen Daten Neue Applikationen oder Anfragen entwerfen Ansprechende Visualisierung Umsetzung der Ideen Implementierung Präsentation
? Mögliche Anfragen Ziele Auf welchen anderen Videos bin ich zu sehen? Welche anderen Benutzer sind auf einem Video zu sehen? Gib mir nur Videos auf denen ich mindestens 5 Sekunden zu sehen bin? Videos wo ich zu einem fixen Zeitpunkt von X verschiedenen Blickwinkeln zu sehen bin? Weitere Ideen sind Willkommen! ?
Ablauf des Seminars Ablauf des Seminars 1. Termin (Heute) Vorstellung der Thematik Einteilung der Gruppen 2. Termin (Dezember) Präsentation (Theoretischer Teil) Gemeinsame Datensammlung 3. Termin (Anfang Februar) Präsentation (Praktischer Teil)
Ablauf: Theoretischer Teil Einarbeitung in ein festgelegtes Themengebiet anhand eines vorgegebenen Papers Anpassung der Inhalte des Papers auf MediaQ Entwicklung von Applikationsideen anhand der Publikation Präsentation der Ergebnisse im Seminar (~30 Minuten)
Ablauf: Praktischer Teil Einarbeitung in MediaQ Entwicklung einer (Web-)Applikation, die eine der angesprochenen (oder selbst entwickelte) Anfragen realisiert Dokumentation der Applikation, sowie Beschreibung der Softwarearchitektur und Algorithmen in einem Webdokument Präsentation der Applikation und der Umsetzung im Seminar
Ziele Anforderungen Einarbeitung in ein Themengebiet anhand eines vorgegebenen Papers und Vortrag zu diesem Themengebiet Aktive Teilnahme an der Datensammlung Entwicklung und Implementierung einer Applikation, die das MediaQ-Framework nutzt Dokumentation und Veröffentlichung der Applikation in Form eines Webauftritts Präsentation der Applikation im Seminar [Bug-Reporting] Es wird in Gruppen von 3-4 Personen gearbeitet.
Ziele Gruppeneinteilung
Vortragsthemen (1) Gruppeneinteilung Crowdsourcing Georgios Chatzimilioudis, Andreas Konstantinidis, Christos Laoudias, Demetrios Zeinalipour-Yazti. Crowdsourcing with Smartphones. In Proc. IEEE(2012) Leyla Kazemi, Cyrus Shahabi. GeoCrowd: Enabling Query Answering with Spatial Crowdsourcing. In Proc. GIS (2012). Florian Alt, Alireza Sahami Shirazi, Albrecht Schmidt, Urs Kramer, Zahid Nawaz. Location-based Crowdsourcing: Extending Crowdsourcing to the Real World. In Proc. NordiCHI (2010)
Vortragsthemen (2) Gruppeneinteilung Join Processing Petko Bakalov, Vassilis J. Tsotras. Continuous Spatiotemporal Trajectory Joins. In Proc. GSN (2006). Kexin Xie, Ke Deng, Xiaofang Zhou. From Trajectories to Activities: A Spatio-Temporal Join Approach. In Proc. LBSN (2009). Gisli Hjaltason, Hanan Samet. Incremental distance join algorithms for spatial databases. In Proc. SIGMOD (1998) Chen, Yun, and Jignesh M. Patel. Design and evaluation of trajectory join algorithms. In Proc. GIS (2009).
Vortragsthemen (3) Gruppeneinteilung Indexing Norbert Beckmann, Hans-Peter Kriegel Ralf Schneider, Bernhard Seeger. The R*-tree: An Efficient and Robust Access Method for Points and Rectangles. In Proc. SIGMOD (1990). Kostas Patroumpas, Timos Sellis. Monitoring Orientation of Moving Objects around Focal Points. In Proc. GIS (2009). Query Processing Panfeng Zhou, Donghui Zhang, Betty Salzberg, Gene Cooperman, George Kollios. Close Pair Queries in Moving Object Databases. In Proc. GIS (2005). Hoyoung Jeung, Man Lung Yiu, Yiaofang Zhou, Christian S. Jensen, Heng Tao Shen. Discovery of Convoys in Trajectory Databases. In Proc. VLDB (2008).
Hausaufgaben bis zum nächsten Mal… Vertraut machen mit den Daten und Plattform MediaQ Konto anlegen und Anwendung benutzen Testdaten erzeugen: Pro Teilnehmer sind mindestens 5 Videos à 1 min aufzunehmen und hochzuladen (public). Teilweise sollten auch andere filmende Gruppenmitglieder aufgenommen werden. (Java/PHP/… Programm schreiben mit einfachen Lese-Anfragen auf die Datenbank Präsentation Erstellen (Präsentationslänge 20 Min.) Inhalt des Papers (ca. 10 min) Kreativer Teil (ca. 10 min) Auswahl einer der o.g. Anfragen oder Entwicklung einer neuen interessanten Anfrage auf den Daten von MediaQ Anwendung und ggfs. Anpassung der Techniken des Papers auf die ausgewählte Anfrage Optional: Weitere Anwendungsideen unabhängig vom Paper