Você está na página 1de 6

ACMWordTemplateforSIGSite

PedroIiguez
painigue@espol.edu.ec

JordyVasquez
jgvasque@espol.edu.ec

RobertoYoncon
ryoncon@espol.edu.ec

ABSTRACT
AmazonRDSisasimplesolutiontodatabase administrationproblems. Its scalability,maintenance, robustnessand
performance makes it a powerful asset to any development team.Technicalspecialists, developers andmany othersusethis
web service to give their projects autonomy regardingthe databaseadministration.TheintegrationwithotherAmazon Web
ServiceslikeMultiAZ,AmazonEC2andAmazonS3,provestheRDStobeusefulandactuallyworthtrying.

There are different cases of study regarding the usage of Amazon RDS. Changing Segas old database hosting
system for Amazon RDS and picking RDS as 9gags database administration system, are the two main cases this paper
analyzes. Finally, this paper presents the findings taking in account the current studies and gathered information about
AmazonRDS.

1. INTRODUCTION

Amazon Relational Database Service (Amazon RDS) is a web service for database management, capable of
storing up to 40differentdatabasesusingdifferentadministratorssuchasMySQL,PostgreSQL,andmanyothers.This
service is currently very popular and well used to replace physical servers or servers in the same applications
architecture, because it allows the developmentteam tofocusonprogrammingwithoutworryingabout sideissues like
data replication and data recovery. It alsooffersa virtualenvironment for development withconstantupdates andever
growing resources, which makes the Amazon RDS a very handy tool for automated maintenance of databases. The
lack of knowledge about this service can lead to bad decision making, like having tomanually configure areplicated
database or having to increase resources usage. Being unaware of this service may produce high storage and
maintenance costs, large payments insearch for devices that couldmeet thespecific requirementsand soon.Therefore,
knowingaboutAmazonRDSmaysolvecurrentproblems.

This document focus on describing the performance and scalability of Amazon RDS, showing this services
capabilities as well.It triesto alsoexplainthenatureofthe advantagesanddisadvantages of using thiswebserviceand
describe its virtual environment behavior, analysing fundamental characteristics such as stability and isolation in
different development environments. To proceed with this analysis, facts, examples and many information siteswere
consulted regarding specific information about the functionalities ofAmazon RDS.Thisdocument alsoresearchesthe
optimizationofimportantaspectsforusingwebservicesasdatamanagementstorage.

2. STATEOFART

2.1.

DBaaS

A DBaaS (Database as a Service) is a service provided througha cloudoperatorthatallows theuserto createand


remotelyaccessone or multiple databases. Thisisolatesthe administrationmanagementofthedatabasefrom theuserso
the development of applications can be prioritized by the engineers. This service mustensurecapabilitieslikebackup,
updates, database maintenance and fast access for the user so it isusually restrainedbythe contractwhenacquiring it.

The best scenario for this service would be that the user doesnt even have to pick a DBMS (Database management
system)butthatstateofthearthasntbeingreachedatthe moment.Fortunately,its theonly thingtheuserhastoworry
about when mounting an application. The cloud operator is the one inchargeofcreating andconfiguringthe database.
Because the cloud operator must access multiple databasesin real time,it usuallyusesrestAPI toaccomplish it.When
the user needs to expand it, this service gives the option to do it just with a few clicks, everythingelse is donebythe
service. Even if you need more processing power, the service will give more resources so that the communication is
alwaysgood.

2.2.

AmazonRDS

Amazon offers a DBaaS specialized in relational databases. Users can choose between multiple relational
databases like oracle, mysql, SQL server and many more, and you can create up to 40 different of them in a single
service. There is a constraint within this last statement and itisthatthereisa limitin thenumberofdatabasesforeach
individual DBMSanditisusuallydeterminedbythetype of contractacquired withthe service. TheAmazonRelational
Database Service also comes with the backup of the database created in anenvironment separatedfromtheonewhere
the actual work is being developed so, in any case of failure or malfunctioning, there is always a backup for the
accessed database. Any customer has to pay for this service as longasitisused,makingit acostefficientsolutionfor
anyproblemconcerningdatabasestorageandmaintenance.

3.

MARCOTERICO

For a better understanding of this document, it is important to befamiliarwithmanyofthe termswearegoingto


use in our analysis. We are going to describe the most important technical terms when talkingabout databases andits
characteristics.

When we talk about the performance of a databasewehavetotakein considerationtwoaspects:thedesignofthe


database and the hardware where the database is mounted. When we design databases, we identify the tables we are
going to use for the storage of the information in our system. These tables should make the update, insertion and
reading the data an easy and efficient task, so the system performance reaches an acceptable level. But in the other
hand, there are more things that influence the performance of transactionsin adatabaseand havealmostnothingtodo
withthedesignitself.Forexample thenumberofusers andsessionsthatwillaccess our databasethroughan application
at the same time. Thetype of operationalsohasa hugeimpact inthe database.Infact,andupdatecost moreprocessing
than an insertion ordeletion inatable[7]. Thenumberofinputsand outputsandthetype of operations mean ahugeuse
of resource translated into more processingpowerandmorememory.Ifalocal serverofourown needstoupgradethis
two things, a manual change of hardware is required, which can mean themigrationofthe databaseorthe temporarily
shutdown of partoftheservice.InaDBaaSthememorycan beexpandedpaying alittlemore andthe processingpower
isautomaticallyupgradedinordertofulfillthedatabaseneeds.

The scalability is the ability to adapt and response that can have the database to thegrowthofdataprocessing or
numbers of users, and directly affectsthe performanceofthesame. There aretwodifferent waysofscalinga database.
Vertical Scaling, which means upgrading memory capacity, processing speed, inputs and outputs operations per
second. Theother oneisHorizontalScaling,which meansto splitthedatabaseintomultipleonestotakethebenefitsof
runningprocessesindifferentcomputerssimultaneously.DiagonalScalingisjustamixofthemboth.

Isolation in databases is an important part of the ACID property (set of properties that ensures transactionsto be
carried out reliably). This feature allows isolation levels in transactions, enabling transactionsthatrunconcurrently to
notinterferewitheachother,providingdataintegrityandavoidingtheinconsistencywhencreatingdata.

The stability guarantees atomicityinthedatabase(a seriesoftransactionsin whichalloccur or noneoccur) toany


write operation, this means the transaction can not be observed in progress by a user in a given time has not been

occurred in another transaction already occurred and the entire transaction . This prevents changes occur in the
databaseonlyforparts,orthewholetransactionismetornotmetanyofthetransaction.

Flexibility in the database is to add new data to the system without having to change or rewrite the already
established structure of the database,forexampleifwewant our filmsto addtableand function times , we should only
addthetablescheduleswithouthavingtomodifyexistingtables.

4. METODOLOGA

The increasingly use of the Amazon RDS makes this service a benefit to consider inside of any structural
foundation for an application, program or web service. The Amazon RDS offers its own mechanism for backing up
data,migratingandpatchingdatabasessoftwareautomatically[1].

In addition, having so many appealing qualities (Jeremiah Wilton,NewsEditorin Pythianwebsite)[2],Amazon


RDS is a valid optimal solution to many database construction and maintenance problems. Although thequestionIs
this right for me? has no specific answer sinceno solutionisperfect for everydeploymentaccording toWilton,itis
veryhelpfultounderstandeverypossibleresourcethatmayimproveyourdecisionwhenselectingadatabasesystem.

4.1.

MultiAZ

Amazon provides a wide range of services, despite of being worldwide known for its main item selling catalog
service and shipping process. Amazons database hosting service includes the MultiAvailability Zone service
agreement (MultiAZ from now on). The MultiAZ promises overall huge availability of any hosted database in any
serverfromAmazon,gatheringitwithotherserviceslikeAmazonRDS.

Mikael Rickns(newseditorand writerfrom IDGNewsService)[1]statedthat,concerning theMultiAZ,Amazon


offers a solid opportunity to maintain a database running as long as 99.95% of the time. This percentage equals a
maximum of 22 minutes of downtime per instance and month, said Rickns. TheMultiAZserviceprovidesa robust
system of synchronous data replication of a main database instance altogether with a distance database instance for
backingupasneeded,asstatedinAmazonsWebServiceswebsite[3].

Including MultiAZ into the Amazon RDSincreasesthe appealofmakingthisservicethefirstoptionforthe basic


architecture of the customers enterprise. Improved availability means reaching out more clients and, therefore, more
exposureoftheproject.

4.2.DBInstances

Amazon RDS DB Instances are isolated database environments where multiple databases can be created and
accessed through any SQL client application. They have their own and unique identifier which allows them to be
recognized by the Amazon RDS API inside a region. They can be easily upgraded in memory andCPU. Theisolated
database environment allows the service to adjust and upgrade resources easily, to ensure the configurations of your
ownworkstationandtodifferbetweenmorethanoneinstance.

InAmazonRDSyouarealsoabletoset avirtualprivate cloudattachedto your ownvirtual network,thiswayyour


DB Instance will be locally isolated too and willonlybe accessiblebystandardIPSecVPN[6].Inthisfeature you can
select your own ips range, set firewall constraints and control network access and it is highly secure thanks to its
protocol.

4.3.AmazonEC2

Among other services, Amazon Elastic Compute Cloud (Amazon EC2) improves the usability of Amazon Web
Services. Scalability is the main aim for this service, proposing a modificable cloud capacity. Amazon EC2 was

designed to becombined withother AmazonWebServices, such as AmazonSimpleStorageServiceandAmazonRDS


[8].

Amazon EC2 enables the possibility of enlarging or reducing the capabilities used in server applications without
any effort. Amazon EC2 is another pay for whatyouneedservice,makingit costeffectivewhenusingit. Thiscloud
storage service posses the fully automated AutoScaling functionality, making it efficient when needed, as many
transactions occurs. Its simple interface, gives the users a friendly, yetpowerful, control overtheircomputerresources
overthecloud.

Thisserviceprovides thenecessarytoolsfordevelopersto createan errorresistantapplication,preventing themost


commonerrorcases.

4.4.AmazonS3

Amazon Simple Storage Solution (Amazon S3) is a web service offeringworldwide developers thesafetystorage
of objects across the internet. It enables the capacity to storage cloud applications, safety backups and storage, big
dataanalysisandcontentdistribution.

The data is stored redundantly in various installments, making the data longlasting objects as these resides in
different places atthe sametime. Also,havingAutoScalingmechanism makesAmazonS3 verysimpletouseand easy
toupgradeordowngrade.

Amazon S3 integrates other Amazon Web Services in order to simplify loading and unloading data. Thus,
generating greater usability and cross platform usage. Amazon S3 offers high performance when transferring data as
well.

4.5.Scalability

Aspresentedinsection3,scalabilitycanbemadeintwoprimaryways,verticalandhorizontal.

Vertical Scalability can be obtained in the configuration setup for your DB Instance. There you can improve the
memory and the cpu so you can obtain a better performance thatway.HorizontalScalability is obtaineddependingon
the DBMS selected but they commonly work the following way: using multiple DB Instances, we assign one of the
databases asamasterand theotheronesasthe replicas,whichwillbeprettymuchjustforreadingbecausethemasteris
the one in charge for the writing operation. The other method ismorecomplexand itrequiresdividingthe databasein
tiny databases according to a criteria like splitting table registers[9]. The update tends to be overheatingand sodothe
maintenance.

5. DISCUSSION
We will proceed to discuss the advantages and disadvantages of using Amazon RDS in real cases of study where
companieshaveoptedforusingARDSorreplacingtheircurrentdatabasearchitectureforthisservice.

5.1.SegaCaseofStudy

Sega used traditional server hosting (colocated servers) to feed their web pages, forums and some games like
Total War. They switched to AmazonRDS for 3 main reasons:the flexibilityofthe service, thescalability andbecause
the current state of the art is secure and stable. Using MultiAZ they make sure the data from their customers is well
protected and that the database isfaulttolerant. Theystatedthatsaving futuretime on databasemanagementwillallow
them to focusoncritical businessoperations,also that thedatabase has beingalways availableeven on highunexpected
demanding periods and that they have reduced the maintenance cost by 50%. The onlything that gotalittlebitmessy
was the migration, because they migrated databases to different locations in the cloud and with different security
levels[4].

5.2.9gagCaseofStudy

9gag is a popular web pages withafrequentand highvolumeofdataflowingand whichcontentismostlyimages,


comments and user accounts. They were searching for a service which allows them tobackup their informationeasily
and which allows for a good performance in high traffic of data. They picked Amazon RDS because of itsreliability,
scalability and paywhileyouuseit method and their results were better than they expected. They got a 20% better
response time and the latency from the users to access their information became lower. Theyalsostatedthatwith this
service they couldconcentrate indevelopingmoreandbetter contentfortheirusers whilenot havingto worryaboutthe
administrationtasksofadatabase[5].

5.3.Overview

Although very practical, users complain about the configuration of replicas and the use of EBS (Elastic Block
Store), a block level storage that is the base for serviceslikeRDS,which incase of failure(it is notcommonforRDS
to have failures) there is no way to access the data until Amazonfixes it[10].But thesepoints of viewleads alwaysto
discussion.

6. FINDINGS
We have come acrossthebenefitsofusingAmazon RDSandwehaveconcludedthatitisaservicewhere you can
skip the administration management of a database in order to focus on your service or application, specially for big
companies which need to save time. There is also the fact that paying a little more you will get a better service than
EBS so you wont find the kind of failures presented insection5.But we thinkthemostimportantpart is tobeableto
create multiple databases in a DB Instance and being able to upgrade the specifications of the virtual environment to
accomplish better performance and flexibility without having to doanymanual job.The fact that we canmakeourDB
Instance private makesit feel moresecurewhenmanaginga databaseintranet. Wesurely would use thisservicewhena
databaseisneededbecausetheresponsetimeseemstobefairlyfastandtheavailabilityofthedatatoo.

7. FUTUREWORKS
WewouldliketoexploremoredeeplytheotherservicesthatAmazonoffersthatcanbeusedsidebysidewith
AmazonRDSbecauseitisjustapartofawholecloudmanagementservice.WewouldalsoliketocompareAmazon
RDSwithotherserviceslikeMicrosoftSQLAzuretoseethedifferentschemasbetweenthemandtoanalysisthe
strengthsandweaknessofbothofthemandidentifythescenarioswhereoneisbetterthantheother.

8. REFERENCES
[1]
Mikael

Rickns
(
Jun 6, 2013
).
Amazon's RDS database gets SLA, becomes generally
available. Recuperado de
:
http://www.pcworld.com/article/2040888/amazons-rds-database-gets-sla-becomes-ge
nerally-available.html
[2]
Jeremiah

Wilton
(
Jun 11, 2013
)
.
A Most Simple Cloud: Is Amazon RDS for Oracle
Right for You?.Recuperado de
http://www.pythian.com/blog/a-most-simple-cloud-is-amazon-rds-for-oracle-right
-for-you/
[3]
aws.amazon.com.(29 de junio 2015)Implementaciones en zonas de disponibilidad
mltiples (Multi-AZ) de Amazon RDS. Recuperado de
https://aws.amazon.com/es/rds/details/multi-az/
[4]
aws.amazon.com.(29

de junio 2015)AWS Case Study: SEGA. Recuperado de

http://aws.amazon.com/solutions/case-studies/sega/
[5]
aws.amazon.com.(29 de junio 2015). AWS Case Study: 9GAG. Recuperado de

h
ttp://aws.amazon.com/solutions/case-studies/9gag/
[6]
aws.amazon.com.(29 de junio 2015). Amazon RDS para Oracle Database. Recuperado
de
http://aws.amazon.com/rds/oracle/

[
7]
t
echnet.microsoft.com.(29 de junio 2015).Database Performance. Recuperado de
https://technet.microsoft.com/en-us/library/ms190619(v=sql.105).aspx

[8]
aws.amazon.com.(29

de junio 2015).Amazon EC2. Recuperado de

http://aws.amazon.com/es/ec2/

28, 2010
).
Tech Tips III - Scaling Databases with Amazon RDS
.
Recuperado de
https://forums.aws.amazon.com/thread.jspa?messageID=203052

[9]
Brett@AWS

.(
May

[10]
Seldo.(
December

18, 2012
).
AWS: the good, the bad and the ugly. Recuperado de

. http://blog.awe.sm/2012/12/18/aws-the-good-the-bad-and-the-ugly/#~pharb9fLhtS37x

Você também pode gostar