COMSE6998 CLOUD COMPUTING & BIG DATA - TwittMap(Assignment1)
Fan Su (fs2488) Jingyi Guo (jg3421)
http://twittapp-env.elasticbeanstalk.com/index.jsp
README - this file AutoDeploy - folder contains AwsAuto.java file using AmazonS3Client to creaet a S3 bucket, upload .war file to this bucket, and linked this file to a application's enviroment. Elastic Beanstalk API is used to create an application and environment, Elastic LoadBalancing API is used to configure load balancing.
Features:
- Display twitts' location on map with predefined keywords search ('halloween', 'USAirway', 'NewYork', 'Columbia')
- Display twitts' location based on time range filter
- Color gradient and density map display for twitts on map based on location
- Real time twitts location display
- Auto create AWS Elastic beanstalk application, environment, and deploy TwittMap application
Tools used:
- Web server: Tomcat 7.0 on AWS Elastic Beanstalk
- Database: Apache Cassandra on AWS EC2
- API: Twitter Live and Streaming API, Google Map API,Elastic Beanstalk,Elastic LoadBalancing
Steps to use without installing source code:
- Go to page http://twittapp-env.elasticbeanstalk.com/
- 'Main' will show main feature with locations of twitts, keywords filtering in dropdown, time range filtering
- 'Real time' will show real-time twitts' location with predefined search keywords 'halloween'
Steps in using source code
- Git clone source code
- Link to AWS account with access key and secret key and connect with current development environment
- Create application and environment on AWS Elastic Beanstalk
- Add jars to build path
- Create Cassandra Database on AWS EC2
- Create account in Twitter API and get access keys
- Deploy project in AWS Elastic Beanstalk
Steps
- import AutoDeploy to Eclipse and run AwsAuto.java and make sure you have AWS SDK installed.
- Open AutoDeploy.java and fill in your AWS_KEY and AWS_SECRET_KEY,KEY_PAIR
- Fill in your AWS_KEY and AWS_SECRET_KEY,KEY_PAIR in credentials
If there is anything wrong, please contact us!