EPAM Systems. EPAM White Paper

Size: px
Start display at page:

Download "EPAM Systems. EPAM White Paper"

Transcription

1 EPAM Systems EPAM White Paper Version 2.0: August

2 Excellence in Software

3 Content 1. Introduction Business Case Problem Statement Proposed Solutions and Implementation Database layer Application layer Caches scaling Session transfer Data storage Web front-end Results Appendices Appendix A Authors Appendix B References Table of Figures Excellence in Software

4 1. Introduction Established in 1993, EPAM Systems, Inc. (NYSE: EPAM) is a leading global IT services provider with delivery centers throughout Central and Eastern Europe. Headquartered in the United States, EPAM employs over 7,300 IT professionals and provides services to clients worldwide using a global delivery model through its client management and delivery operations in the United States, Belarus, Hungary, Russia, Ukraine, UK, Germany, Kazakhstan, Sweden, Switzerland, Poland and Canada. EPAM s years of building complex engineering solutions have led us to develop deep expertise in a number of horizontal technology areas. These are now formalized as technological competency centers that enable our teams to develop, integrate and support best of breed solutions and practices. One such center is dedicated to Cloud Computing. EPAM Cloud Computing Competency Center is a team of experts providing professional support at every stage of our clients cloud projects from consulting and cost analysis to development and deployment. In addition to dozens of successfully completed cloud projects, we have built a portfolio of cloud offerings to suit the needs of EPAM s global development team and its clients including EPAM Private and Community Cloud and EPAM Cloud Orchestrator. This whitepaper illustrates EPAM s approach to make an existing application ready to be hosted in one of many public IaaS offerings. Several aspects of our approach are often being left out in a typical cloud migration project. As a result migration projects are delayed or fail due to unsatisfactory performance and stability once in the cloud. Through the example of a standard J2SE application, we will show you the whole process from definition of bottlenecks through their elimination and up to assessment of the results. 4 Excellence in Software

5 2. Business Case In the last several years we have witnessed Cloud Computing becoming a major trend in the IT industry. Based on recent research few organizations do not use of consider to use the cloud in near future. Benefits of strategic cloud adoption and correct cloud implementation are numerous and well known. And the end result in such case is well worth the effort. Organizations that adopt cloud strategically understand that their processes and skill-sets have to be revised accordingly. Organizations that adopt the cloud because it is trendy need that transformation as well, but often do not recognize that need until much later in the transition process. The challenge extends beyond processes and skills. Few existing applications are ready for the cloud. Having decided to move to the cloud, organizations often take their existing applications, deploy them in the cloud, as they would do it in-house and anticipate all the benefits of the cloud. The reality is that applications not designed or optimized for cloud will not be able to leverage much of its benefits. Cloud in such case is nothing more than virtual hosting. And as such applications will be constrained to the individual virtual machines rather than taking advantage of the scalability and availability of the entire cloud infrastructure. Furthermore, it is quite common that applications designed without scalability in mind once deployed into cloud environment exhibit significant performance degradation. The most common root cause is that an application is stripped of dedicated and managed hardware and placed into a shared environment. Another common reason is that the application does not fit well into the standardized virtual instance shapes in the cloud. There a several ways to solve this problem. The most obvious one is running the application on a more powerful instance i.e. vertical scaling. While solving the problem to some extent, this virtually nullifies some of the main cloud advantages, as vertical scaling is limited by performance of the most powerful instance and is by any means not the cheapest option. All of the aforesaid allows us to draw the following conclusion in order to make the best use of the cloud an application has to be scalable, in other words cloud-ready. Below we will showcase how to make our application scalable, while minimizing or avoiding amendments to its code. Clearly we could have just redesigned the whole thing from ground up, but that would have taken a lot longer, would have required significant attention from application business owners and could have introduced regression issues. Excellence in Software 5

6 3. Problem Statement As already mentioned above, this paper describes the approach we took to prepare an application for deployment in the cloud ( Cloudification ), based on an actual use case. As the target for our exercise we have chosen a content management system (CMS) that has been available for quite a while. It has never been designed with scalability in mind and was intended to be deployed on a single server. From a technical perspective the solution is a standard Java (J2SE) application built on top of the Hibernate library. It operates under a common application stack of Apache HTTP Server, Tomcat Application Server, and MySQL Database Engine that comprise a content management system. Figure 1 Bird s-eye Architecture Overview The system is fairly large and feature-rich. However its lengthy development has been reflected in legacy architecture. Our first step has been migrating the system to the Cloud as is. We deployed an absolute replica of the production environment in the Cloud, similarly to what organizations usually do. But for us it was just the first step to application Cloudification. So we got the whole system running on a single instance. Predictably application performance decreased. The cloud-friendly way to address this problem is to employ one of the defining cloud features elasticity. In other words, we were to begin scaling. By scaling we mean an ability to run an indefinite number of instance copies hosting the application and balancing the load. Clearly CMS has to remain functioning properly the requested content must be delivered, and relevant information received. And all of that must be consistent. Changes introduced to one instance must be distributed to all others. Excellence in Software 6

7 Addressing these problems directly required comprehensive architecture analysis to identify problem areas. Our approach was first to break the solution architecture into logical layers and subsystems, then to carry out the analysis of each layers capacity for horizontal scaling individually, and lastly evaluate possible issues with pulling horizontally scaled layers to operate together. Figure 2 - The System Broken into Logical Layers 7 Excellence in Software

8 4. Proposed Solutions and Implementation 4.1. Database layer As usual when dealing with some kind of a content management system, the first bottleneck here is the database. Horizontal scaling of SQL databases is notoriously difficult both practically and theoretically (Brewer's CAP theorem). Potential threats when scaling MySQL are: - Project code rewriting to support certain scaling approaches, which might lead to introduction of new bugs - Certain scaling methods may result in write bottlenecks - Some scaling methods are prone to synchronization issues - Scaling should not drastically increase fault probability - Database conflicts when multiple application instances update same or connected pieces of data Generic approaches to scaling MySQL horizontally are as follows: Master- Slave An unlimited number of slave instances can be added, but only one instance can be the master Great for applications with mostly READ operations Good for addressing I/O (network or disk) bottlenecks Good for geographic dispersion Requires application logic to separate read and write operations Replication is asynchronous, so instances are not guaranteed to be in sync Master instance can be scaled vertically 1) Master-slave replication the most common approach, involving splitting read/write operations. As read/write ratio can sometimes reach 90% to 10%, writing is performed in a single instance that has many replicas functioning in read-only mode. In our case this approach could not be applied as the application uses Hibernate. A wellknown flaw of this library is that we cannot be sure if the query is going to end in writing or not beforehand. Master- Master Robust. If one database is down, the application can continue functioning normally, with HAProxy routing all queries to the other master. Good for addressing I/O (network or disk) bottlenecks Good for geographic dispersion Requires stateful load balancing Need to continually monitor replication validity. Conflict resolution support in program code High complexity Excellence in Software 8

9 2) Master-master replication as it turns out we are unable to separate read and write operations, our next move is replicating instances, each one accepting both of them. The problem here is there can be data conflicts between instances when applying this approach to MySQL. Therefore, the application should be able to resolve them. In our case this approach requires substantially altering the code and thus cannot be applied. Sharding Good strategy for handling extreme database loads Easiest/most appropriate when most load is accessing a few tables and JOIN operations across shards are not required Success depends largely of sharding strategy and shard sizing May require painful periodic shard resizing Very high complexity Improves availability - The impact of a shard failure is small (affects only a portion of data), but sharding must be coupled with an additional strategy (like active-passive) to provide complete high-availability In terms of avoiding code refactoring, Sharding can arguably be considered an unbeatable approach to database scaling. The main difference from master-master replication is that none of the instances contains the whole amount of data, hosting a small part of it (a Shard) instead. The shards somewhat overlap to make the system failsafe. This approach is used in most of high-load systems, e.g. social networks and search engines. Sharding, however, requires adding a separate logical layer, directing read/write queries. Our options here is either adding it, which is a downright challenging task or use a 3 rd party application, serving as a single DB entry point and solving the tasks of breaking the DB on shards and assembling it later internally. We have found a suitable application called ScaleBase, however obtaining trial access to its functionality encountered unexpected problems forcing us to abandon this idea as well. Cluster Good solution for high-availability In-memory storage provides high-performance Good for scaling applications with heavy write loads Can scale specific portions of the cluster (query processing or storage) to target bottlenecks (CPU, RAM, I/O, storage volume) Synchronous replication between nodes makes cluster inappropriate for geographic dispersion Not a good fit for hosting environments with SAN Requires lots of RAM for storage nodes (roughly double the db size) High complexity 3) Building a MySQL Cluster was initially put aside due to its well-known complexity. However, it turned out to be the only approach satisfying our requirements. We were successful in building a scalable cluster, showing increase in performance when more nodes are added. However, building the cluster did pose several problems. The most notable ones required us to optimize database tables for cluster environment, namely: Truncate length of too long VARCHAR fields; Change table engine from InnoDB to NDB; Split complex indices, i.e. indices from multiple fields; Introduce new indices. Introducing these changes allowed us launching the database on a MySQL cluster. 9 Excellence in Software

10 4.2. Application layer This is the most difficult layer to scale if application is written without scalability in mind. This CMS application seemed to have a theoretical feasibility of horizontal scaling. It supported transactions, database operated at read committed isolation level and, generally, multiple instances could function in parallel, operating on the same data storage. At this point following caveats have been identified: - There were some concerns about valid transaction usage in application code. To address this concern we reviewed all the code, responsible for operation with the database, and fortunately enough, this proved our concerns wrong. - In-memory JVM caches which were used in application would have led to invalid instance states after data update happened on one of the instances. - Absence of session transfer functionality Caches scaling The application actively used caching techniques to speed up its performance. As a matter of fact, this was the most prominent issue identified throughout initial assessment, as these caches are completely unscalable. Caches are kept in-memory similarly to other structures in JVM s memory space. This implied that when scaling the application we will face the problem of cache synchronization, which in turn led to loss of instance state synchronization. Following chart demonstrates the problem: Figure 3 - Caches Scaling Cache was one of the most problematic areas of the project as the initial design of in-memory caches used by the solution did not allow horizontal scaling of application layer. In other words, we needed to refactor caching code to move from in-memory cache usage to embracing scalable solutions, such as memcached or Amazon ElastiCache. This has been done using Hazelcast. The cache functionality was implemented through separate isolated classes, making the refactoring quite easy, minimizing the risks and making the results easy to check. In the end both memcached and Amazon ElastiCache solutions turned out to be compatible and addressed our needs. 10 Excellence in Software

11 4.4. Session transfer Session transfer is the mechanism of moving sessions from on server to another in case of server failure. This allows addressing failures of a single server while a client is in the middle of a work session. Absence of such a mechanism leads to possible partial data or state information loss during server failures. The architecture analysis we undertook showed that the issue can be addressed utilizing built-in functionality of our application server Apache Tomcat. However, this brought additional complexity to the system and requires initiation of full code acceptance cycle, which was undesirable. Therefore, after assessing potential impact of such type of a failure (the application s architecture was mostly session-less), we came to the conclusion that we will not implement session transfer mechanism in this particular case Data storage The solution used file system storage for number of purposes: - storing cached html pages - storing downloadable site content Therefore scaling the application required the same content of file system storage to be available for all the application instances. So we had to implement a shared storage. One of the simplest and most reliable technologies to implement shared storage is the NFS protocol. We have introduced a separate NFS server that was mounted to all instances and acted as a single storage. Implementing such storage is usually associated with following issues: - Storage synchronization in case of replication - IO-bottle neck in case of shared storage - Scalability potential In our case performance of the NFS server turned out to be adequate and sufficient to the extent of tests performed by us. However, it is obvious that a single NFS-server is a bottleneck and a single point of failure. The simplest way to solve this problem is using cluster file systems, for example Gluster. This approach has been successfully implemented by us in a similar situation within another project, requiring NFS server scaling. 11 Excellence in Software

12 4.6. Web front-end To make active use of multi-instance horizontal scaling of this CMS system we needed a way to distribute incoming traffic across all instances. This could be achieved by setting up different kinds of load balancers. Our final choice was between Epam Cloud Load Balancer and Nginx The Load Balancing Service (LBS) of Epam Cloud is instrumental in delivering high-availability and scalability. The LBS handles each inbound request and decides which server is the best to process it. It also supports other enterprise-level requirements such as monitoring the web-farm state and providing support for sticky-session connections. Nginx is a modern, open-source, high-performance web server. It has advanced caching capabilities and can handle a considerable number of simultaneous client connections. This makes Nginx an excellent load balancer and reverse proxy for web services a single nginx server is able to distribute a large number of client connections to a number of upstream servers to handle the enduser requests. In practice both solutions could be used for our purpose. However, since advanced caching was crucial to our task, we have chosen Nginx as a load balancer for the system. 12 Excellence in Software

13 5. Results Having introduced the aforementioned changes, we moved on to comprehensive performance testing. This included running a considerable amount of tests supplying load on a single instance, then adding another instance and supplying the same load. The results showed significant reduction of response time as illustrated by charts below. Figure 4 - Mean Response Time Number of Instances Mean Response Time (ms) Excellence in Software 13

14 Figure 5 - Requests per Second Number of Instances Requests per second Excellence in Software

15 6. Appendices Appendix A Authors 1. Ivan Pesin, Lead Maintenance Engineer, EPAM Systems ivan_pesin@epam.com 2. Aleksey Hariton, Senior Software Maintenance Engineer, EPAM Systems aleksey_hariton@epam.com 3. Iegor Sopov, Technical Writer, EPAM Systems iegor_sopov@epam.com Appendix B References Excellence in Software 15

16 Table of Figures Figure 1 Bird s-eye Architecture Overview... 6 Figure 2 - The System Broken into Logical Layers... 7 Figure 3 - Caches Scaling Figure 4 - Mean Response Time Figure 5 - Requests per Second Excellence in Software 16

17 Global 41 University Drive Suite 202, Newtown (PA), 18940, USA Phone: Fax: EU Corvin Offices I. Futó st Budapest, H-1082, Hungary Phone: Fax: CIS 9th Radialnaya Street, Building 2 Moscow, , Russia Phone: Fax: EPAM Systems. All Rights Reserved.

Cloud Based Application Architectures using Smart Computing

Cloud Based Application Architectures using Smart Computing Cloud Based Application Architectures using Smart Computing How to Use this Guide Joyent Smart Technology represents a sophisticated evolution in cloud computing infrastructure. Most cloud computing products

More information

In Memory Accelerator for MongoDB

In Memory Accelerator for MongoDB In Memory Accelerator for MongoDB Yakov Zhdanov, Director R&D GridGain Systems GridGain: In Memory Computing Leader 5 years in production 100s of customers & users Starts every 10 secs worldwide Over 15,000,000

More information

Adding scalability to legacy PHP web applications. Overview. Mario Valdez-Ramirez

Adding scalability to legacy PHP web applications. Overview. Mario Valdez-Ramirez Adding scalability to legacy PHP web applications Overview Mario Valdez-Ramirez The scalability problems of legacy applications Usually were not designed with scalability in mind. Usually have monolithic

More information

Table of Contents. Overview... 1 Introduction... 2 Common Architectures... 3. Technical Challenges with Magento... 6. ChinaNetCloud's Experience...

Table of Contents. Overview... 1 Introduction... 2 Common Architectures... 3. Technical Challenges with Magento... 6. ChinaNetCloud's Experience... Table of Contents Overview... 1 Introduction... 2 Common Architectures... 3 Simple System... 3 Highly Available System... 4 Large Scale High-Performance System... 5 Technical Challenges with Magento...

More information

MakeMyTrip CUSTOMER SUCCESS STORY

MakeMyTrip CUSTOMER SUCCESS STORY MakeMyTrip CUSTOMER SUCCESS STORY MakeMyTrip is the leading travel site in India that is running two ClustrixDB clusters as multi-master in two regions. It removed single point of failure. MakeMyTrip frequently

More information

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

Scalability of web applications. CSCI 470: Web Science Keith Vertanen Scalability of web applications CSCI 470: Web Science Keith Vertanen Scalability questions Overview What's important in order to build scalable web sites? High availability vs. load balancing Approaches

More information

Appendix A Core Concepts in SQL Server High Availability and Replication

Appendix A Core Concepts in SQL Server High Availability and Replication Appendix A Core Concepts in SQL Server High Availability and Replication Appendix Overview Core Concepts in High Availability Core Concepts in Replication 1 Lesson 1: Core Concepts in High Availability

More information

High Availability Solutions for the MariaDB and MySQL Database

High Availability Solutions for the MariaDB and MySQL Database High Availability Solutions for the MariaDB and MySQL Database 1 Introduction This paper introduces recommendations and some of the solutions used to create an availability or high availability environment

More information

GigaSpaces Real-Time Analytics for Big Data

GigaSpaces Real-Time Analytics for Big Data GigaSpaces Real-Time Analytics for Big Data GigaSpaces makes it easy to build and deploy large-scale real-time analytics systems Rapidly increasing use of large-scale and location-aware social media and

More information

Database Scalability {Patterns} / Robert Treat

Database Scalability {Patterns} / Robert Treat Database Scalability {Patterns} / Robert Treat robert treat omniti postgres oracle - mysql mssql - sqlite - nosql What are Database Scalability Patterns? Part Design Patterns Part Application Life-Cycle

More information

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series www.cumulux.com

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series www.cumulux.com ` CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS Review Business and Technology Series www.cumulux.com Table of Contents Cloud Computing Model...2 Impact on IT Management and

More information

Amazon Web Services Primer. William Strickland COP 6938 Fall 2012 University of Central Florida

Amazon Web Services Primer. William Strickland COP 6938 Fall 2012 University of Central Florida Amazon Web Services Primer William Strickland COP 6938 Fall 2012 University of Central Florida AWS Overview Amazon Web Services (AWS) is a collection of varying remote computing provided by Amazon.com.

More information

Tier Architectures. Kathleen Durant CS 3200

Tier Architectures. Kathleen Durant CS 3200 Tier Architectures Kathleen Durant CS 3200 1 Supporting Architectures for DBMS Over the years there have been many different hardware configurations to support database systems Some are outdated others

More information

Cloud Computing: Meet the Players. Performance Analysis of Cloud Providers

Cloud Computing: Meet the Players. Performance Analysis of Cloud Providers BASEL UNIVERSITY COMPUTER SCIENCE DEPARTMENT Cloud Computing: Meet the Players. Performance Analysis of Cloud Providers Distributed Information Systems (CS341/HS2010) Report based on D.Kassman, T.Kraska,

More information

BASICS OF SCALING: LOAD BALANCERS

BASICS OF SCALING: LOAD BALANCERS BASICS OF SCALING: LOAD BALANCERS Lately, I ve been doing a lot of work on systems that require a high degree of scalability to handle large traffic spikes. This has led to a lot of questions from friends

More information

High Availability Using MySQL in the Cloud:

High Availability Using MySQL in the Cloud: High Availability Using MySQL in the Cloud: Today, Tomorrow and Keys to Success Jason Stamper, Analyst, 451 Research Michael Coburn, Senior Architect, Percona June 10, 2015 Scaling MySQL: no longer a nice-

More information

Tushar Joshi Turtle Networks Ltd

Tushar Joshi Turtle Networks Ltd MySQL Database for High Availability Web Applications Tushar Joshi Turtle Networks Ltd www.turtle.net Overview What is High Availability? Web/Network Architecture Applications MySQL Replication MySQL Clustering

More information

Cloud Training Portal. Trainings. Process Guide. October 2012 ECPG-3. Version 1.2

Cloud Training Portal. Trainings. Process Guide. October 2012 ECPG-3. Version 1.2 Cloud Training Portal Trainings Process Guide October 2012 ECPG-3 Version 1.2 Content Content... 2 1. PREFACE... 3 1.1. About this Guide... 3 1.2. Trainers and Contacts... 3 1.3. Audience... 3 1.4. Typographic

More information

Module 14: Scalability and High Availability

Module 14: Scalability and High Availability Module 14: Scalability and High Availability Overview Key high availability features available in Oracle and SQL Server Key scalability features available in Oracle and SQL Server High Availability High

More information

Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION

Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION October 2013 Daitan White Paper Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION Highly Reliable Software Development Services http://www.daitangroup.com Cloud

More information

Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings

Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings Solution Brief Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings Introduction Accelerating time to market, increasing IT agility to enable business strategies, and improving

More information

Web Application Hosting in the AWS Cloud Best Practices

Web Application Hosting in the AWS Cloud Best Practices Web Application Hosting in the AWS Cloud Best Practices September 2012 Matt Tavis, Philip Fitzsimons Page 1 of 14 Abstract Highly available and scalable web hosting can be a complex and expensive proposition.

More information

Planning the Migration of Enterprise Applications to the Cloud

Planning the Migration of Enterprise Applications to the Cloud Planning the Migration of Enterprise Applications to the Cloud A Guide to Your Migration Options: Private and Public Clouds, Application Evaluation Criteria, and Application Migration Best Practices Introduction

More information

Architectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL

Architectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL Architectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL 04.20111 High Availability with MySQL Higher Availability Shared nothing distributed cluster with MySQL Cluster Storage snapshots for disaster

More information

MyISAM Default Storage Engine before MySQL 5.5 Table level locking Small footprint on disk Read Only during backups GIS and FTS indexing Copyright 2014, Oracle and/or its affiliates. All rights reserved.

More information

Application Performance Management for Enterprise Applications

Application Performance Management for Enterprise Applications Application Performance Management for Enterprise Applications White Paper from ManageEngine Web: Email: appmanager-support@manageengine.com Table of Contents 1. Introduction 2. Types of applications used

More information

MySQL. Leveraging. Features for Availability & Scalability ABSTRACT: By Srinivasa Krishna Mamillapalli

MySQL. Leveraging. Features for Availability & Scalability ABSTRACT: By Srinivasa Krishna Mamillapalli Leveraging MySQL Features for Availability & Scalability ABSTRACT: By Srinivasa Krishna Mamillapalli MySQL is a popular, open-source Relational Database Management System (RDBMS) designed to run on almost

More information

Variations in Performance and Scalability when Migrating n-tier Applications to Different Clouds

Variations in Performance and Scalability when Migrating n-tier Applications to Different Clouds Variations in Performance and Scalability when Migrating n-tier Applications to Different Clouds Deepal Jayasinghe, Simon Malkowski, Qingyang Wang, Jack Li, Pengcheng Xiong, Calton Pu Outline Motivation

More information

Benchmarking Couchbase Server for Interactive Applications. By Alexey Diomin and Kirill Grigorchuk

Benchmarking Couchbase Server for Interactive Applications. By Alexey Diomin and Kirill Grigorchuk Benchmarking Couchbase Server for Interactive Applications By Alexey Diomin and Kirill Grigorchuk Contents 1. Introduction... 3 2. A brief overview of Cassandra, MongoDB, and Couchbase... 3 3. Key criteria

More information

( ) ( ) TECHNOLOGY BRIEF. XTNDConnect Server: Scalability SCALABILITY REFERS TO HOW WELL THE SYSTEM ADAPTS TO INCREASED DEMANDS AND A GREATER

( ) ( ) TECHNOLOGY BRIEF. XTNDConnect Server: Scalability SCALABILITY REFERS TO HOW WELL THE SYSTEM ADAPTS TO INCREASED DEMANDS AND A GREATER TECHNOLOGY BRIEF XTNDConnect Server: Scalability An important consideration for IT professionals when choosing a server-based synchronization solution is that of scalability. Scalability refers to how

More information

On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform

On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform Page 1 of 16 Table of Contents Table of Contents... 2 Introduction... 3 NoSQL Databases... 3 CumuLogic NoSQL Database Service...

More information

Understanding Neo4j Scalability

Understanding Neo4j Scalability Understanding Neo4j Scalability David Montag January 2013 Understanding Neo4j Scalability Scalability means different things to different people. Common traits associated include: 1. Redundancy in the

More information

ZADARA STORAGE. Managed, hybrid storage EXECUTIVE SUMMARY. Research Brief

ZADARA STORAGE. Managed, hybrid storage EXECUTIVE SUMMARY. Research Brief ZADARA STORAGE Managed, hybrid storage Research Brief EXECUTIVE SUMMARY In 2013, Neuralytix first documented Zadara s rise to prominence in the then, fledgling integrated on-premise and in-cloud storage

More information

Apache Hadoop. Alexandru Costan

Apache Hadoop. Alexandru Costan 1 Apache Hadoop Alexandru Costan Big Data Landscape No one-size-fits-all solution: SQL, NoSQL, MapReduce, No standard, except Hadoop 2 Outline What is Hadoop? Who uses it? Architecture HDFS MapReduce Open

More information

scalability OneBridge

scalability OneBridge scalability OneBridge Mobile Groupware technical brief An important consideration for IT professionals when choosing a server-based synchronization solution is that of scalability. Scalability refers to

More information

Adding Indirection Enhances Functionality

Adding Indirection Enhances Functionality Adding Indirection Enhances Functionality The Story Of A Proxy Mark Riddoch & Massimiliano Pinto Introductions Mark Riddoch Staff Engineer, VMware Formally Chief Architect, MariaDB Corporation Massimiliano

More information

Diablo and VMware TM powering SQL Server TM in Virtual SAN TM. A Diablo Technologies Whitepaper. May 2015

Diablo and VMware TM powering SQL Server TM in Virtual SAN TM. A Diablo Technologies Whitepaper. May 2015 A Diablo Technologies Whitepaper Diablo and VMware TM powering SQL Server TM in Virtual SAN TM May 2015 Ricky Trigalo, Director for Virtualization Solutions Architecture, Diablo Technologies Daniel Beveridge,

More information

High Availability with Windows Server 2012 Release Candidate

High Availability with Windows Server 2012 Release Candidate High Availability with Windows Server 2012 Release Candidate Windows Server 2012 Release Candidate (RC) delivers innovative new capabilities that enable you to build dynamic storage and availability solutions

More information

Techniques for Scaling Components of Web Application

Techniques for Scaling Components of Web Application , March 12-14, 2014, Hong Kong Techniques for Scaling Components of Web Application Ademola Adenubi, Olanrewaju Lewis, Bolanle Abimbola Abstract Every organisation is exploring the enormous benefits of

More information

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2 DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing Slide 1 Slide 3 A style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet.

More information

Cloud Computing. Adam Barker

Cloud Computing. Adam Barker Cloud Computing Adam Barker 1 Overview Introduction to Cloud computing Enabling technologies Different types of cloud: IaaS, PaaS and SaaS Cloud terminology Interacting with a cloud: management consoles

More information

Hybris E-Commerce. Operations. A White Paper by ChinaNetCloud

Hybris E-Commerce. Operations. A White Paper by ChinaNetCloud Hybris E-Commerce Operations A White Paper by ChinaNetCloud Table of Contents Overview... 1 Introduction... 2 Common Architectures... 3 Simple System... 3 Medium-sized Highly-Available System... 4 Large

More information

Chapter 1 - Web Server Management and Cluster Topology

Chapter 1 - Web Server Management and Cluster Topology Objectives At the end of this chapter, participants will be able to understand: Web server management options provided by Network Deployment Clustered Application Servers Cluster creation and management

More information

SCALABLE DATA SERVICES

SCALABLE DATA SERVICES 1 SCALABLE DATA SERVICES 2110414 Large Scale Computing Systems Natawut Nupairoj, Ph.D. Outline 2 Overview MySQL Database Clustering GlusterFS Memcached 3 Overview Problems of Data Services 4 Data retrieval

More information

Serving 4 million page requests an hour with Magento Enterprise

Serving 4 million page requests an hour with Magento Enterprise 1 Serving 4 million page requests an hour with Magento Enterprise Introduction In order to better understand Magento Enterprise s capacity to serve the needs of some of our larger clients, Session Digital

More information

High Availability Solutions for MySQL. Lenz Grimmer <lenz@grimmer.com> 2008-08-29 DrupalCon 2008, Szeged, Hungary

High Availability Solutions for MySQL. Lenz Grimmer <lenz@grimmer.com> 2008-08-29 DrupalCon 2008, Szeged, Hungary High Availability Solutions for MySQL Lenz Grimmer 2008-08-29 DrupalCon 2008, Szeged, Hungary Agenda High Availability in General MySQL Replication MySQL Cluster DRBD Links/Tools Why

More information

Reliable Data Tier Architecture for Job Portal using AWS

Reliable Data Tier Architecture for Job Portal using AWS Reliable Data Tier Architecture for Job Portal using AWS Manoj Prakash Thalagatti 1, Chaitra B 2, Mohammed Asrar Naveed 3 1,3 M. Tech Student, Dept. of ISE, Acharya Institute of Technology, Bengaluru,

More information

EXECUTIVE SUMMARY CONTENTS. 1. Summary 2. Objectives 3. Methodology and Approach 4. Results 5. Next Steps 6. Glossary 7. Appendix. 1.

EXECUTIVE SUMMARY CONTENTS. 1. Summary 2. Objectives 3. Methodology and Approach 4. Results 5. Next Steps 6. Glossary 7. Appendix. 1. CONTENTS 1. Summary 2. Objectives 3. Methodology and Approach 4. Results 5. Next Steps 6. Glossary 7. Appendix EXECUTIVE SUMMARY Tenzing Managed IT services has recently partnered with Amazon Web Services

More information

bigdata Managing Scale in Ontological Systems

bigdata Managing Scale in Ontological Systems Managing Scale in Ontological Systems 1 This presentation offers a brief look scale in ontological (semantic) systems, tradeoffs in expressivity and data scale, and both information and systems architectural

More information

Alfresco Enterprise on AWS: Reference Architecture

Alfresco Enterprise on AWS: Reference Architecture Alfresco Enterprise on AWS: Reference Architecture October 2013 (Please consult http://aws.amazon.com/whitepapers/ for the latest version of this paper) Page 1 of 13 Abstract Amazon Web Services (AWS)

More information

WHITEPAPER. Network-Attached Storage in the Public Cloud. Introduction. Red Hat Storage for Amazon Web Services

WHITEPAPER. Network-Attached Storage in the Public Cloud. Introduction. Red Hat Storage for Amazon Web Services WHITEPAPER Network-Attached Storage in the Public Cloud Red Hat Storage for Amazon Web Services Introduction Cloud computing represents a major transformation in the way enterprises deliver a wide array

More information

Monitoring Nginx Server

Monitoring Nginx Server Monitoring Nginx Server eg Enterprise v6 Restricted Rights Legend The information contained in this document is confidential and subject to change without notice. No part of this document may be reproduced

More information

MySQL 5.0 vs. Microsoft SQL Server 2005

MySQL 5.0 vs. Microsoft SQL Server 2005 White Paper Abstract This paper describes the differences between MySQL and Microsoft SQL Server 2000. Revised by Butch Villante, MCSE Page 1 of 6 Database engines are a crucial fixture for businesses

More information

Accelerating Web-Based SQL Server Applications with SafePeak Plug and Play Dynamic Database Caching

Accelerating Web-Based SQL Server Applications with SafePeak Plug and Play Dynamic Database Caching Accelerating Web-Based SQL Server Applications with SafePeak Plug and Play Dynamic Database Caching A SafePeak Whitepaper February 2014 www.safepeak.com Copyright. SafePeak Technologies 2014 Contents Objective...

More information

GeoCloud Project Report USGS/EROS Spatial Data Warehouse Project

GeoCloud Project Report USGS/EROS Spatial Data Warehouse Project GeoCloud Project Report USGS/EROS Spatial Data Warehouse Project Description of Application The Spatial Data Warehouse project at the USGS/EROS distributes services and data in support of The National

More information

MySQL and Virtualization Guide

MySQL and Virtualization Guide MySQL and Virtualization Guide Abstract This is the MySQL and Virtualization extract from the MySQL Reference Manual. For legal information, see the Legal Notices. For help with using MySQL, please visit

More information

Liferay Performance Tuning

Liferay Performance Tuning Liferay Performance Tuning Tips, tricks, and best practices Michael C. Han Liferay, INC A Survey Why? Considering using Liferay, curious about performance. Currently implementing and thinking ahead. Running

More information

Amazon Web Services. 18.11.2015 Yu Xiao

Amazon Web Services. 18.11.2015 Yu Xiao Amazon Web Services 18.11.2015 Yu Xiao Agenda Introduction to Amazon Web Services(AWS) 7 Steps to Select the Right Architecture for Your Web Applications Private, Public or Hybrid Cloud? AWS Case Study

More information

High Availability Using Raima Database Manager Server

High Availability Using Raima Database Manager Server BUSINESS WHITE PAPER High Availability Using Raima Database Manager Server A Raima Inc. Business Whitepaper Published: January, 2008 Author: Paul Johnson Director of Marketing Copyright: Raima Inc. Abstract

More information

NASCIO 2013 State IT Recognition Award Nomination. California Election Results Website. Open Government Initiatives

NASCIO 2013 State IT Recognition Award Nomination. California Election Results Website. Open Government Initiatives 1 ONLINE VOTER REG. CARD ~ Office 2007 NASCIO 2013 State IT Recognition Award Nomination Title: California Election Results Website Category: Open Government Initiatives Contact: Chris Maio Information

More information

ScaleArc idb Solution for SQL Server Deployments

ScaleArc idb Solution for SQL Server Deployments ScaleArc idb Solution for SQL Server Deployments Objective This technology white paper describes the ScaleArc idb solution and outlines the benefits of scaling, load balancing, caching, SQL instrumentation

More information

Introduction 1 Performance on Hosted Server 1. Benchmarks 2. System Requirements 7 Load Balancing 7

Introduction 1 Performance on Hosted Server 1. Benchmarks 2. System Requirements 7 Load Balancing 7 Introduction 1 Performance on Hosted Server 1 Figure 1: Real World Performance 1 Benchmarks 2 System configuration used for benchmarks 2 Figure 2a: New tickets per minute on E5440 processors 3 Figure 2b:

More information

Improving the Microsoft enterprise. network for public cloud connectivity

Improving the Microsoft enterprise. network for public cloud connectivity Improving the Microsoft enterprise cloud network for public cloud connectivity Page 1 Improving network performance between Microsoft and the public Situation As Microsoft IT located more of its line-ofbusiness

More information

TECHNOLOGY WHITE PAPER Jun 2012

TECHNOLOGY WHITE PAPER Jun 2012 TECHNOLOGY WHITE PAPER Jun 2012 Technology Stack C# Windows Server 2008 PHP Amazon Web Services (AWS) Route 53 Elastic Load Balancing (ELB) Elastic Compute Cloud (EC2) Amazon RDS Amazon S3 Elasticache

More information

ZingMe Practice For Building Scalable PHP Website. By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG

ZingMe Practice For Building Scalable PHP Website. By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG ZingMe Practice For Building Scalable PHP Website By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG Agenda About ZingMe Scaling PHP application Scalability definition Scaling up vs

More information

Drupal in the Cloud. by Azhan Founder/Director S & A Solutions

Drupal in the Cloud. by Azhan Founder/Director S & A Solutions by Azhan Founder/Director S & A Solutions > Drupal and S & A Solutions S & A Solutions who? doing it with Drupal since 2007 Over 70 projects in 5 years More than 20 clients 99% Drupal projects We love

More information

Achieving Zero Downtime and Accelerating Performance for WordPress

Achieving Zero Downtime and Accelerating Performance for WordPress Application Note Achieving Zero Downtime and Accelerating Performance for WordPress Executive Summary WordPress is the world s most popular open source website content management system (CMS). As usage

More information

Liferay Portal s Document Library: Architectural Overview, Performance and Scalability

Liferay Portal s Document Library: Architectural Overview, Performance and Scalability Liferay Portal s Document Library: Architectural Overview, Performance and Scalability Table of Contents EXECUTIVE SUMMARY... 1 HIGH LEVEL ARCHITECTURE... 2 User Interface Layer... 2 Service Layer....

More information

The deployment of OHMS TM. in private cloud

The deployment of OHMS TM. in private cloud Healthcare activities from anywhere anytime The deployment of OHMS TM in private cloud 1.0 Overview:.OHMS TM is software as a service (SaaS) platform that enables the multiple users to login from anywhere

More information

Scaling Database Performance in Azure

Scaling Database Performance in Azure Scaling Database Performance in Azure Results of Microsoft-funded Testing Q1 2015 2015 2014 ScaleArc. All Rights Reserved. 1 Test Goals and Background Info Test Goals and Setup Test goals Microsoft commissioned

More information

ORACLE COHERENCE 12CR2

ORACLE COHERENCE 12CR2 ORACLE COHERENCE 12CR2 KEY FEATURES AND BENEFITS ORACLE COHERENCE IS THE #1 IN-MEMORY DATA GRID. KEY FEATURES Fault-tolerant in-memory distributed data caching and processing Persistence for fast recovery

More information

APPLICATION NOTE. Elastic Scalability. for HetNet Deployment, Management & Optimization

APPLICATION NOTE. Elastic Scalability. for HetNet Deployment, Management & Optimization APPLICATION NOTE Elastic Scalability for HetNet Deployment, Management & Optimization Introduction Most industry reports indicate that the HetNet market is poised for explosive growth in the coming years.

More information

The Mail & Guardian Online relies on Severalnines to control database sprawl and automate database operations.

The Mail & Guardian Online relies on Severalnines to control database sprawl and automate database operations. The Mail & Guardian Online relies on Severalnines to control database sprawl and automate database operations. Customer Case Study: Mail & Guardian Online 1 The Mail and Guardian Online The Mail & Guardian

More information

Copyright www.agileload.com 1

Copyright www.agileload.com 1 Copyright www.agileload.com 1 INTRODUCTION Performance testing is a complex activity where dozens of factors contribute to its success and effective usage of all those factors is necessary to get the accurate

More information

Oracle BI Publisher Enterprise Cluster Deployment. An Oracle White Paper August 2007

Oracle BI Publisher Enterprise Cluster Deployment. An Oracle White Paper August 2007 Oracle BI Publisher Enterprise Cluster Deployment An Oracle White Paper August 2007 Oracle BI Publisher Enterprise INTRODUCTION This paper covers Oracle BI Publisher cluster and high availability deployment.

More information

ScaleArc for SQL Server

ScaleArc for SQL Server Solution Brief ScaleArc for SQL Server Overview Organizations around the world depend on SQL Server for their revenuegenerating, customer-facing applications, running their most business-critical operations

More information

Mobile Performance Testing Approaches and Challenges

Mobile Performance Testing Approaches and Challenges NOUS INFOSYSTEMS LEVERAGING INTELLECT Mobile Performance Testing Approaches and Challenges ABSTRACT Mobile devices are playing a key role in daily business functions as mobile devices are adopted by most

More information

Web Application Hosting in the AWS Cloud Best Practices

Web Application Hosting in the AWS Cloud Best Practices Web Application Hosting in the AWS Cloud Best Practices May 2010 Matt Tavis Page 1 of 12 Abstract Highly-available and scalable web hosting can be a complex and expensive proposition. Traditional scalable

More information

High Availability Storage

High Availability Storage High Availability Storage High Availability Extensions Goldwyn Rodrigues High Availability Storage Engineer SUSE High Availability Extensions Highly available services for mission critical systems Integrated

More information

Not Relational Models For The Management of Large Amount of Astronomical Data. Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF)

Not Relational Models For The Management of Large Amount of Astronomical Data. Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF) Not Relational Models For The Management of Large Amount of Astronomical Data Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF) What is a DBMS A Data Base Management System is a software infrastructure

More information

GLOBAL DIGITAL ENTERTAINMENT CONTENT AND SERVICES PROVIDER JESTA DIGITAL MIGRATES TO THE ULTRAESB

GLOBAL DIGITAL ENTERTAINMENT CONTENT AND SERVICES PROVIDER JESTA DIGITAL MIGRATES TO THE ULTRAESB GLOBAL DIGITAL ENTERTAINMENT CONTENT AND SERVICES PROVIDER JESTA DIGITAL MIGRATES TO THE ULTRAESB quick facts Customer Industry Challenge Solution Benefits Jesta Digital Mobile Meet current and future

More information

Zadara Storage Cloud A whitepaper. @ZadaraStorage

Zadara Storage Cloud A whitepaper. @ZadaraStorage Zadara Storage Cloud A whitepaper @ZadaraStorage Zadara delivers two solutions to its customers: On- premises storage arrays Storage as a service from 31 locations globally (and counting) Some Zadara customers

More information

Common Server Setups For Your Web Application - Part II

Common Server Setups For Your Web Application - Part II Common Server Setups For Your Web Application - Part II Introduction When deciding which server architecture to use for your environment, there are many factors to consider, such as performance, scalability,

More information

Web Application Deployment in the Cloud Using Amazon Web Services From Infancy to Maturity

Web Application Deployment in the Cloud Using Amazon Web Services From Infancy to Maturity P3 InfoTech Solutions Pvt. Ltd http://www.p3infotech.in July 2013 Created by P3 InfoTech Solutions Pvt. Ltd., http://p3infotech.in 1 Web Application Deployment in the Cloud Using Amazon Web Services From

More information

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module June, 2015 WHITE PAPER Contents Advantages of IBM SoftLayer and RackWare Together... 4 Relationship between

More information

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc. Chapter 2 TOPOLOGY SELECTION SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: Topology selection criteria. Perform a comparison of topology selection criteria. WebSphere component

More information

Cloud computing - Architecting in the cloud

Cloud computing - Architecting in the cloud Cloud computing - Architecting in the cloud anna.ruokonen@tut.fi 1 Outline Cloud computing What is? Levels of cloud computing: IaaS, PaaS, SaaS Moving to the cloud? Architecting in the cloud Best practices

More information

Cloud Service Model. Selecting a cloud service model. Different cloud service models within the enterprise

Cloud Service Model. Selecting a cloud service model. Different cloud service models within the enterprise Cloud Service Model Selecting a cloud service model Different cloud service models within the enterprise Single cloud provider AWS for IaaS Azure for PaaS Force fit all solutions into the cloud service

More information

Divy Agrawal and Amr El Abbadi Department of Computer Science University of California at Santa Barbara

Divy Agrawal and Amr El Abbadi Department of Computer Science University of California at Santa Barbara Divy Agrawal and Amr El Abbadi Department of Computer Science University of California at Santa Barbara Sudipto Das (Microsoft summer intern) Shyam Antony (Microsoft now) Aaron Elmore (Amazon summer intern)

More information

The Sierra Clustered Database Engine, the technology at the heart of

The Sierra Clustered Database Engine, the technology at the heart of A New Approach: Clustrix Sierra Database Engine The Sierra Clustered Database Engine, the technology at the heart of the Clustrix solution, is a shared-nothing environment that includes the Sierra Parallel

More information

Wikimedia architecture. Mark Bergsma <mark@wikimedia.org> Wikimedia Foundation Inc.

Wikimedia architecture. Mark Bergsma <mark@wikimedia.org> Wikimedia Foundation Inc. Mark Bergsma Wikimedia Foundation Inc. Overview Intro Global architecture Content Delivery Network (CDN) Application servers Persistent storage Focus on architecture, not so much on

More information

Monitoring Databases on VMware

Monitoring Databases on VMware Monitoring Databases on VMware Ensure Optimum Performance with the Correct Metrics By Dean Richards, Manager, Sales Engineering Confio Software 4772 Walnut Street, Suite 100 Boulder, CO 80301 www.confio.com

More information

Building Scalable Web Sites: Tidbits from the sites that made it work. Gabe Rudy

Building Scalable Web Sites: Tidbits from the sites that made it work. Gabe Rudy : Tidbits from the sites that made it work Gabe Rudy What Is This About Scalable is hot Web startups tend to die or grow... really big Youtube Founded 02/2005. Acquired by Google 11/2006 03/2006 30 million

More information

Azure Scalability Prescriptive Architecture using the Enzo Multitenant Framework

Azure Scalability Prescriptive Architecture using the Enzo Multitenant Framework Azure Scalability Prescriptive Architecture using the Enzo Multitenant Framework Many corporations and Independent Software Vendors considering cloud computing adoption face a similar challenge: how should

More information

TABLE OF CONTENTS THE SHAREPOINT MVP GUIDE TO ACHIEVING HIGH AVAILABILITY FOR SHAREPOINT DATA. Introduction. Examining Third-Party Replication Models

TABLE OF CONTENTS THE SHAREPOINT MVP GUIDE TO ACHIEVING HIGH AVAILABILITY FOR SHAREPOINT DATA. Introduction. Examining Third-Party Replication Models 1 THE SHAREPOINT MVP GUIDE TO ACHIEVING HIGH AVAILABILITY TABLE OF CONTENTS 3 Introduction 14 Examining Third-Party Replication Models 4 Understanding Sharepoint High Availability Challenges With Sharepoint

More information

I N T E R S Y S T E M S W H I T E P A P E R F O R F I N A N C I A L SERVICES EXECUTIVES. Deploying an elastic Data Fabric with caché

I N T E R S Y S T E M S W H I T E P A P E R F O R F I N A N C I A L SERVICES EXECUTIVES. Deploying an elastic Data Fabric with caché I N T E R S Y S T E M S W H I T E P A P E R F O R F I N A N C I A L SERVICES EXECUTIVES Deploying an elastic Data Fabric with caché Deploying an elastic Data Fabric with caché Executive Summary For twenty

More information

Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL

Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL SCHOONER WHITE PAPER Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL About Schooner Information Technology Schooner Information Technology provides

More information

MongoDB and Couchbase

MongoDB and Couchbase Benchmarking MongoDB and Couchbase No-SQL Databases Alex Voss Chris Choi University of St Andrews TOP 2 Questions Should a social scientist buy MORE or UPGRADE computers? Which DATABASE(s)? Document Oriented

More information

Building Success on Acquia Cloud:

Building Success on Acquia Cloud: Building Success on Acquia Cloud: 10 Layers of PaaS TECHNICAL Guide Table of Contents Executive Summary.... 3 Introducing the 10 Layers of PaaS... 4 The Foundation: Five Layers of PaaS Infrastructure...

More information

Scaling in the Cloud with AWS. By: Eli White (CTO & Co-Founder @ mojolive) eliw.com - @eliw - mojolive.com

Scaling in the Cloud with AWS. By: Eli White (CTO & Co-Founder @ mojolive) eliw.com - @eliw - mojolive.com Scaling in the Cloud with AWS By: Eli White (CTO & Co-Founder @ mojolive) eliw.com - @eliw - mojolive.com Welcome! Why is this guy talking to us? Please ask questions! 2 What is Scaling anyway? Enabling

More information