+ All Categories
Home > Documents > Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems...

Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems...

Date post: 13-Jan-2016
Category:
Upload: irene-williams
View: 217 times
Download: 0 times
Share this document with a friend
Popular Tags:
22
Cloudifying Source Code Cloudifying Source Code Repositories: Repositories: How much does it cost? How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University of Science and Technology [email protected] Fall 2010
Transcript
Page 1: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Cloudifying Source Code Repositories:Cloudifying Source Code Repositories:How much does it cost?How much does it cost?

1

Hadi Salimi,

Distributed Systems Labaratory,

School of Computer Engineering,

Iran University of Science and Technology

[email protected]

Fall 2010

Page 2: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

What’s the Cloud Computing ???• Large scale• Application-specific

architectures• Developed for in-house

use

• Available for

general usage• Inexpensive,

even for small

or medium scale deployments

2

Page 3: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

What is Revision Control?

• Repository for data (source code)– All changes are tracked by date and author– Branching and merging

• Why move it to the cloud?– Resilient storage– No physical server to administrate– Scale to larger communities (SourceForge)

3

Page 4: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Available Tools

• Subversion, revision control system– Free, open-source– Very popular– Rigid consistency model

4

Page 5: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Available Tools (Cont’d)

• Amazon S3, cloud storage service– Eventual consistency

• Yahoo ZooKeeper, coordination service– Free, open-source

5

Page 6: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Alternative solutions

Cloud Computing P2P

• Subversion etc.• Repository stored

persistently in the cloud• One true, consistent

repository exists

• GIT etc.• Repository stored at

every client• Many repository copies,

converging eventually

6

Page 7: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Outline

• Costs of using cloud storage for revision control• Architecture of a simple solution• Performance evaluation

7

Page 8: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

How to Measure Costs• Each revision stored as two files on disk

– Revision data– Revision properties

• Calculate bandwidth, per-transaction, and storage costs of pushing each revision into S3 over time

8

Page 9: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Storage Costs

9

Page 10: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Storage Trends

10

Page 11: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Outline

• Costs of using cloud storage for revision control• Architecture of a simple solution• Performance evaluation

11

Page 12: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

AsynchronousReplication

Primary Backup

Clients Today’s architecture for source code revision control...

12

Page 13: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

A cloud-basedarchitecture...

EC2 EC2

S3S3S3

13

Page 14: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Two simultaneous commits…

EC2 EC2

S3S3S3

Rev. 31337Rev. 31337

Rev. 31337

Followed by an update…Leads to data loss!

14

Page 15: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Coordination Coordination

EC2 EC2

S3S3S3

15

Page 16: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Commit Process

ZooKeeper

16

Page 17: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

17

Page 18: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Outline

• Costs of using cloud storage for revision control• Architecture of a simple solution• Performance evaluation

18

Page 19: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Usage Observations

• Apache Foundation– 1 repository, 74 projects– Average 1.10 commits per minute– Maximum 7 commits per minute

• Debian community– 506 repositories– Average 1.12 commits per minute– Maximum 6 commits per minute

19

Page 20: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Results

Checkouts (Reads) Commits (Writes)

• Adding servers improves the user experience20

Page 21: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Conclusion

• Storing source code repositories in the cloud is feasible…

• …and very inexpensive

• Only minor changes to existing revision control systems are necessary to robustly take advantage of cloud storage

21

Page 22: Cloudifying Source Code Repositories: How much does it cost? 1 Hadi Salimi, Distributed Systems Labaratory, School of Computer Engineering, Iran University.

Questions or Comment

24


Recommended