CS-8395-03 : Special Topics - Distributed Systems Reliability (taught in Fall Semesters)
Audience: Graduate Students who are interested in Systems and or Big data applications of AI
This class aims to provide a foundation in reliable and resilient distributed computing used in big data applications, cloud applications, the internet of things, and smart cities. In the course, we will study the patterns (watchdogs, circuit breakers, checkpointing, replication, voting) used to reduce downtime and increase the durability of the services. The fundamental science of fault propagation in software systems is going to be an area of emphasis. Finally, we will review decentralized architectures and design patterns that enable resilient system design. We will review site-reliability case studies, state-of-the-art publications, and investigations of past computing system failures throughout the course. It is recommended that the students taking this course know computer networking, operating systems, and cloud computing.
The course is divided into following modules.
- Internet of Things and Cloud (as required for the course)
- Theory of reliability
- Resilience and difference between resilience and reliability
- Performance Optimization
- Understanding theory of failures
- Case studies and post mortem
- Papers and projects
Topics in Big Data (taught in Spring Semesters)
Audience: Undergraduates and Graduate Students can take this course
The goal of this class is to cover the concepts and recent progress made in the area of Big Data. The focus will be on principles and practices of data storage, data modeling techniques, data processing and querying, data analytics, and applications of machine learning using these systems. Throughout the class, you will learn about the applications of these topics in real-world case studies such as public transit systems and Emergency Response Systems. Visit the following sites and look at the dashboards to see an example of how we use these techniques for some of our projects.
- https://smarttransit.ai/
- https://statresp.ai
- https://github.com/smarttransit-ai/transit-occupancy-dashboard
To learn more about the course visit https://github.com/vu-topics-in-big-data-2021/lectures
Application of Data Science in Smart Cities
Audience: Undergraduates and Graduate Students can take this course. This is a projects course.
This material is co-developed with Gautam Biswas, Claire Smrekar, Jonathan Gilligan, and Mark Ellingham. The course provides a foundation for adapting the technology-driven internet-of-things framework to the Smart Cities concept of urban development. Ethical and justice concerns, including privacy and equitable access to data. Algorithmic methods of machine learning and statistics, such as supervised and unsupervised learning, factor analysis, multi-dimensional regression analysis, and hierarchical linear modeling. Agent-based and equation-based simulation modeling. Linear and nonlinear optimization. Mixed methods approach to gathering and analyzing qualitative and quantitative socio-economic data, and computational methods for data from large, distributed infrastructure. The course involves lectures on the fundamental content material and exercises designed to familiarize students with data analytics and qualitative research methods – combining and culminating in the semester-long multi-disciplinary group project.
The group projects cover three primary topics related to Smart City applications: (1) Transportation, (2) Energy Management, and (3) Water Quality. Each project team includes undergraduate students with different disciplinary backgrounds. The syllabus of the course is as follows.