Introduction to the cloud computing - Computer Science and ...

chirpskulkInternet και Εφαρμογές Web

3 Νοε 2013 (πριν από 4 χρόνια και 1 μήνα)

70 εμφανίσεις

Project 1

Online multi
-
user video
monitoring system

System goal:



A user can monitor the views of
different sites simultaneously.


Multiple users can access to the
views simultaneously.

Example:



Different classrooms, each has a
camera, administrator wants to
monitor the classroom by looking
through the different camera views.


Many persons can be the
administrator, such as the security
staff, the head of the school, the
parent of the students, so on and so
forth.

System functionality requirement


Data collection


Data management


User interface design

Data collection I


Video stream data have to be collected
from different sites using cameras


Stream data can be collect from the camera
located in different sites (e.g. classroom)


You can generate the video stream data using
VLC
http://www.videolan.org/vlc/


VLC is a free and open source cross
-
platform
multimedia player and framework that plays
most multimedia files as well as DVD, Audio
CD, VCD, and various streaming protocols.



Data collection II


Data will be continuously transported to
a remote datacenter for processing via
internet


The system will receive the streaming data
and store it in a local file


The local file will continuously be transported
to the HDFS in the cloud


The key point of this project is the use of
cloud technique, specifically the
Hadoop


Sample code from http://bbs.chinacloud.cn


Data collection III


Support dynamic camera adding and
deleting


Do not need to reboot system when add or
delet

a camera


Cameras in the system support two
modes: ON and OFF.


Data collection IV


Data collection supports two modes: ON
and OFF.


When camera is OFF, data collection is OFF


When camera is ON, data collection is ON
or OFF, set by system administrator


When the data collection is ON, the live
streaming data will be transported to the
cloud



Data management I


Streaming data are stored in cloud, use
the front
-
end server as a cache.


Cameras are connected to a
front
-
end server


Video data are first stored in a file in the
front
-
end server


The file is transported into the HDFS for user
access and data archive


The uploaded files will be deleted locally from
the
front
-
end server


Data management II


Data storage modes:


STORE mode: data can be stored in the HDFS
of cloud



CACHE mode: data just be cached for a
while (e.g. 1min) before being deleted
permanently.


This “cache” is similar to the cache on the
front
-
end server


Front
-
end server is just for collecting data,
not for user access


Users access to videos by login to the cloud

Data management III


Data are archived daily for replay :


Data will be compressed and stored in the
HDFS in terms of day and place in STORE
mode


Nothing to do in CACHE mode


Data management IV


Support video search


System builds a search engine for stored
videos in terms of date and place


The search result can be depressed and
replayed


More play features can be considered

Data management V


Limited number of archived videos


The storage of cloud is limited due to the
pay
-
as
-
you
-
go payment method


Number of archived data for each camera can
be specified by system administrator


User interface design I


Access to the system


support standard user register and login,
s.t
.
username, password


Users are granted to access to specified
cameras’ videos, admin can update the user’s
camera list.



User interface design II


Switch between different cameras


Users can switch to different authorized
camera


Users access to only one camera at the same
time to improve the system performance,
which means only one video file will be
opened and displayed for one user in a certain
moment.


User interface design III


Replay archived videos


Users can replay the video returned by the
search engine.


Allow for different video resolution in
terms of network bandwidth


Use the available video player (
VLC
)


Do not need to implement it by yourself


It’s up to you to add more features.


System performance requirement


For each camera, support online
users (live connections) 2 to 30
.


System can support 2 to 20 cameras
.

Tips to the implementation


Search
http://bbs.chinacloud.cn

for
codes of video collecting and storing
in HDFS.


You can debug code under the
hadoop

on single server mode.


Find more in
Hadoop

project:
http://hadoop.apache.org/


Collaboration



A group project


Up to 2 students in one group



Each group sends one copy of the group
member list to TA by Thursday (March
21
st

)


Email title format:
2013DB2
-
GM:
name1, name2


Email content includes member
name, email and cell phone


Project submission


Due time: April 7th, 23:59:59


Materials to submit


Source code


Presentation slides


Presentation content


Demonstration of the system with multiple
cameras (2 at least) if possible


show the system use case diagram, design,
api
,
part of codes


Presentation time will be scheduled in week 7, 15
minutes per group, plus
5 minutes Q&A