Litao Deng is a second year master student in Computer Science at the University of Southern California (USC) (expected to graduate 2013).
Currently, he is a free learner and programmer. Before employed by himself, he was a research assistant in Prof. Viktor Prasanna's Cloud Computing Group, and worked closely with Dr. Yogesh Simmhan.
His past projects include large scale graph computation in the context of cloud environment, and building distributed, highly scalable, graph oriented
file systems. At that time, he also developed several softwares in the course projects under the guidance of Prof. Shahram Ghandeharizadeh.
His research area is on building data intensive applications, distributed data and computing systems and other Big Data related issues.
Prior to USC, he received his Bechelor's Degree in Software Engineering from Beijing Institute of Technology (BIT) (2011). Find my CV here.
He treats himself as half perfectionist and half programming enthusiast (Find my source code here).
He is looking forward to join his first company Aster Data in the coming June.
Cloud Computing Group, University of Southern CaliforniaAdvisor: Dr. Yogesh Simmhan; Prof. Viktor Prasanna. December 2011 - December 2012
Analyzed large scale graphs in parallel, exploring different programming abstractions like MapReduce and Pregel.
Studied Betweenness Centrality algorithm in the context of Microsoft Windows Azure Platform;
Designed GoFS, a distributed, scalable graph oriented user level file system. The key motivation of GoFS
is based on the findings for the inefficiency of HDFS like file systems to process large scale of graphs from
our previous research. In GoFS, the main contribution is we design and implement a Graph Layout Manager, which utilizes
streaming graph partitioning algorithms, and sophisticated subgraph storage and retrieve strategy to provide highly efficient
graph access and traversal performance. More...
Database Laboratory, University of Southern CaliforniaAdvisor: Prof. Shahram Ghandeharizadeh; Dr. Sumita Barahmand. March 2012 - December 2012
Designed and developed BG, a benchmark toolkit to evaluate performance of data store for interactive social networking
actions and sessions. BG defines the conceptual data model for the virtual social networking website's underlying storage system, it
contains the Member entity set, Resource entity set. The Member entity set indicates those users with a registered profile.
A member may either extend an invitation to or be friend with another member; The Resource entity could be an image, a posted
question, a technical manuscript, a comment, etc. A resource must be "owned" by a member, and members can post comments on a resource.
BG consists of 3 software components: a coordinator (BGCoord), a BGClient and BG virtualization deck.
BGClient is the main component and performs three key tasks: first, it populates the data store with the specified data size (numbers of members, resources, etc);
second, it generates its BGCoord specified workload by issuing requests to the data store, the requests are composed of the most popular operations on a
social networking website, such as getUserProfile(), getListOfFriends(), etc; third, BGClient summarizes the results and computes the amount of unpredictable data produced by
the data store. Developers can use BG to evaluate the overall performance (throughput, latency, data staleness) of the data store with different kinds of
self-defined workloads (by tunig the percentage for each operation).
Evaluating and analyzing the performance and consistency model of Amazon SimpleDB storage service.
Institute of Computing Technology, Chinese Academy of SciencesAdvisor: Prof. Zha, Li; Dr. Lu, Xiaoyi. June 2010 - February 2011
Developed a client-side utility for improving the ease of use for LingCloud,
an elastic computing infrastructure management software, providing a heterogeneous resource management and leasing framework.
The components within this utility consist of user login authentication, fetching and displaying remote resources (virtual machines) for authorized users,
providing different protocols (SSH, VNC, RDP) for remote resource access and user personalize settings.
This utility is running as a desktop (both for Linux and Windows) based Java application.
Memcached Augmentation and OptimizationTeammate: Song, Teng
Implementing Gumball, a write-write race condition prevention technique and
developing elasticity feature for memcached augmented SQL database management systems.
Ontology Construction based on Social NetworksTeammate: Wu, Hao
Creating an employee ontology in enterprises based on knowledge discovery of social networks.
Operating System WorkshopTeammate: Chen, Hao; Wu, Anqi
Implemented several core operating system mechanisms: synchronization, multi-programming,
virtual memory management and network communication on Nachos framework.
Android ApplicationIndependent Project
Built an Android application to support movie search and sharing to Twitter social networks.
Interpreter for C-like Programming LanguageTeammate: Li, Hao; Guo, Hongchen, Han, Peng
Designed an advanced programming language; Developed a corresponding interpreter to provide lexical analysis,
syntactic analysis, semantic analysis and execution runtime features.
Search Engine Based on Campus NetworkTeammate: Li, Hao; Guo, Hongchen, Han, Peng
Built search engine platform based on BIT network which provided multiple functions such as searches about pictures,
FTP and forum resources by using open source projects, such as Heritrix and Lucene and combing Java Web technology.
Selected Presentations and Assignments
Presentations (Most of the presentations are based on a specific (or several) paper(s))
RCFile (A Fast and Space-efficient Data Placement Structure in MapReduce-based Warehouse Systems) (pdf)
Graph Partitioning (Graph partitioning from the streaming approach perspective) (pdf)
Graph Data Store (Overview on graph datastores and graph computing systems) (pdf)
Twister (Large scale graph processing using MapReduce model from the Twister perspective) (pdf)
RDBMS vs NoSQL (Can the elephants handle the NoSQL on slaught?) (pdf)
The Semantic Web (The semantic web: the roles of XML and RDF) (pdf)
CSCI-685 Advanced Topics in Database Systems (pdf)
Proficient in C, Java. Familiar with PHP, Perl, Python, AJAX, LaTeX, Bash, Scala, Prolog, Assembly.
Proficient in Memcached, MySQL, PostgreSQL, Amazon SimpleDB. Familiar with MongoDB.
I have more than 5 years software development experience both on UNIX/Linux and Windows platforms. I am used to
selecting ANSI C and Java to write programs (30K LOC for ANSI C, 30K for Java). I like to use plain text editor
(Sublime Text 2 is my favourite) to write source codes and write independent Makefile or Ant scripts to compile the project.
Awards and Honors
National Scholarship, China. (Top 2%)
Outstanding Graduate in Beijing District, China. (Top 5%)
Golden Medal Graduate in School of Software, Beijing Institute of Technology. (Top 10%)
First Class Scholarship in School of Software, Beijing Institute of Technology. (3 times, Top 5%)
Best Thesis Award in School of Software, Beijing Institute of Technology. (Top 10%) (pdf) | (ppt)
CSCI-565 Compiler Design (2013 Spring)
CSCI-685 Advanced Topics in Database Systems (2012 Fall)
CSCI-590 Directed Research (2012 Fall)
CSCI-586 Database Systems Interoperability (2012 Fall)
CSCI-599 NewSQL Database Management Systems (2012 Spring)
CSCI-402 Operating Systems (2012 Spring)
CSCI-571 Web Technologies (2011 Fall)
CSCI-570 Analysis of Algorithms (2011 Fall)
CSCI-561 Foundations of Artificial Intelligence (2011 Fall)
ALI-245 High Intermediate Writing Skills (2011 Fall)
Data Structures and Algorithms
In my spare time, I like swimming and watching basketball and soccer games.
My families are the most precious treasures in my life.
I have two blogs, Blog(zh) (for ideas, thinking and memory),
Blog(en) is under construction
(for technology, I will translate some of my previous technology blogs into English).
I come from Chongqing, a major city in southwest China
and one of the five national central cities in China.