0. Keynote Address

        1. Demonstration

        2. Introduction

        3. sonSQL Architecture

        4. Publication

        5. About us


0. Keynote Address

Keynote address given at Confluence 2014, Amity University, India (Aug. 2014) here


Please see our demo here(The demo is based on JDK 1.7 or above. You may need to update your JDK up to 1.7 or above)

The fellowing video is a brief tutorial for sonSQL.


A visitor to our demonstration will be invited to assume the role of an SNcreator.

Initial SN Characterization

The SNcreator first sees a form. She browses the SNdomain hierarchy, and the expert system responds to her choice with possible products; by moving the cursor to a product, the SNcreator can see a pop-up description of the product. She can select the products relevant to the SN she has in min. She can similarly specify the user categories and social relationships (including groups).

Social Product Creation

After the initial SN characterization, SNcreator sees the form of SN. When she selects a product, sonSQL responds with options for Producer and activities, as well as a high-level view of the SN created so far.

Clicking on reveals the mid-level pop-up view of relationships between user and product. Clicking on an entity box further shows an in-depth view of the tables associated with the entities, the keys and other attributes.

In this way, SNcreator iterates through the list of products in her SN design, thus specifying the details to sonSQL.

Modifications and Updates

In the above process, SNcreator can click the ``Back'' button to undo the latest change. After the changes are committed and even after the SN is deployed, SNcreator can call up similar forms to modify or update the design; e.g. add more activities or remove some products.

In any case, sonSQL translates SNcreator's specifications into SQL DDL or DML transactions, verifies that the foreign/primary key constraints are satisfied, then sends the transactions to the MySQL backend for execution.

Testing the SN

An SNcreator may want to exercise her SN design with some test queries. shows the form provided by sonSQL's Data Generator for her to specify the size of the test dataset; sonSQL then generates synthetic data to match the specification. SNcreator can then run arbitrary SQL queries on the sonSQL-generated data.

Alternatively, she can use the Module Tester's form interface to simulate an user's activities; sonSQL responds to each action by showing changes to the tables.



2. Introduction

The mushrooming of online social networks ( foursquare, ibibo, Kaixin001, Ameba, etc.) is now as unstoppable as the spread of the Web. Their datasets are heterogeneous and, in some cases, humongous. Whatever their size, such a network needs a database system to properly manage its data.

Many social network services are started by small teams of developers. They typically have limited database expertise and so use some free, off-the-shelf database system. If the service is successful and the team grows to include professional database administrators, the dataset may be so large already and growing so quickly that any re-engineering of the early decisions becomes difficult.

The database research community should help to solve this problem. Given the frenetic pace in online social network creation, this is an urgent problem for our community if we are to have an impact on this burgeoning industry.

Our Contribution

This paper's contribution to solving the problem is sonSQL (``son'' for ``social network''), a tool for building a database system for social network data. Our objectives are:

(O0) sonSQL should be based on a database system that is freely available, yet reasonably complete;

(O1) sonSQL must be sufficiently general that it can cover most, if not all, current and foreseeable social networks;

(O2) a database novice should find it easy to use sonSQL to construct a database schema that suits her social network design;

(O3) the schema should facilitate database engineering for scalability, in case the social network enjoys viral growth.

To fulfill these objectives, we implemented sonSQL with MySQL as the backend database system (O0). The tables constructed by sonSQL have a specific schema, called Rsn, that is tailored for social networks (O1). The restriction on Rsn constrains its complexity and facilitates optimization (O3). The frontend for sonSQL has an interactive, form-based interface for the social network developer to describe her design (O2)


3. sonSQL Architecture

Figure 1: sonSQL Architecture

                                        Figure 1: sonSQL Architecture

Fig.1 shows the architecture, with the interface at the top and MySQL at the bottom.

The middle layer contains the SN Constructor, a Module Tester for the SNcreator to test the SN, and a Data Generator to synthetically populate the SN with test data.

The SN Constructor helps the SNcreator build an initial SN; this SN may be modified by SNcreator in the course of testing, or updated (through sonSQL) after SN deployment.

It has a knowledge base that contains SNdomain knowledge, and the expert system. The latter maps SNcreator's input into Rsn entities and relationships, verifies that SNcreator's specifications satisfy the Rsn integrity constraints (IC), then generates SQL DDL (or DML) scripts to construct (or update) MySQL tables.


4. Publication

  • Zhifeng Bao , Yong Zeng, Y.C. Tay; "sonLP: Social Network Link Prediction by Principal Component Regression"; Proc. of the 2013 IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM 2013).
  • Zhifeng Bao, Y.C. Tay, Jingbo Zhou; "sonSchema: A Conceptual Schema for Social Networks"; Proc. of 32nd Int. Conf. on Conceptual Modeling (ER 2013).

  • Zhifeng Bao , Jingbo Zhou, Y.C. Tay; "sonSQL: An Extensible Relational DBMS for Social Network Start-ups"; Proc. of 32nd Int. Conf. on Conceptual Modeling (ER 2013). [Demo paper]

  • Y. Zeng, A.N. Lu, L. Xia, C.X. Tian and Y.C. Tay. SAM: A sorting approach for optimizing multijoin queries. Proc. 26th Int. Conf. Database and Expert Systems Applications (DEXA), Valencia, Spain (Sept. 2015), 367--383.

5. About us


Professor: Y.C. Tay

Professor: Beng Chin Ooi

Research Fellow

Dr. Bao Zhifeng

Research Assistant

PhD student: Zhou Jingbo

Contact us

Please send email to: dcstayyc AT nus . edu . sg





Locations of visitors to this page