Monday, 31 July 2017

Co-op Opportunity - Streaming Graph Data Management

Job Summary:

The project deals with analyzing microblogs (e.g., tweets).  Over the last decade, microblogging has become a standard of communications among users of social networks. The increasing volume of microblogging content created using social networks is accompanied by an increase in the velocity of data that are being generated in real-time. The content of these microblogs is coarse and unstructured; however, with the use of information extraction techniques useful information can be harvested and used to build applications that can answer more complex queries in real-time.

The project involves taking microblogs created in a social network (e.g. Twitter) and extracting structured information from these microblogs using information extraction tools. This information is mapped onto a streaming graph which is updated in real time. The streaming graph is used to execute complex queries which represent a combination of keyword and graph queries in real-time. 

The specific task for the coop term is to take a graph database management system (most likely Neo4j) and modify it to work with streaming graphs. This requires adding data structures and additional functionality to Neo4j kernel. The revised system will then be used to perform performance tests. If time permits, the query processor will be modified to perform both keyword and structural search on graphs.

Job Responsibilities:

We are looking for a student with experience in programming languages, object-oriented programming and databases (knowledge of graph databases is a plus but not a requirement) to modify different components of an existing graph database management system.

The candidate will build and modify components of a graph database (e.g., underlying data structures, indexes, query optimizer) to support efficient insertions in a streaming graph while achieving good query execution time.

Knowledge of Java and/or C++;
Experience with object-objected programming;
Knowledge of data structures;
Knowledge of database management systems;
Experience with open-source projects;
Experience with graph data management is a plus

Professor:

M. Tamer Özsu (https://cs.uwaterloo.ca/~tozsu)

If you have any questions or require further information then please contact Professor Özsu at tamer.ozsu at uwaterloo.ca.

No comments:

Post a Comment