While the cloud seems like the most logical solution for most companies, on-premise systems still find use in some industries and circumstances. Then, there’s also the hybrid approach, which combines some of the advantages of both models. Want to know what’ll fit your company’s needs best? Welcome to our on premise vs cloud guide.
Every software solution needs to “live” somewhere – be housed on a server of some kind, whether it’s in the cloud, or in the company’s office. While the cloud is rapidly gaining popularity in recent years (the market is projected to be worth $832.1 billion by 2025), it’s by no means the perfect choice for every business and situation. In some scenarios, a local server is a must, and in others, the best approach is a hybrid one, where some parts of the data are stored locally, while others are accessed through a third-party cloud service.
What benefits does each of these approaches have? In what situations should you consider each of them? We’ll try to answer all these on-premise vs cloud questions in this article.
The benefits of using cloud solutions
Nowadays, the cloud is pretty much everywhere. Public cloud services such as Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform (GCP) have improved to the point where, in many cases, there’s simply no sense in using a local server. The possible advantages of the cloud include such things as:
- scalability – thanks to the cloud, your business will be able to scale its operations much more easily, accommodating fast growth
- access – with a cloud-based system, you can access your data and IT infrastructure anytime and anywhere you are, which can be a huge boon
- a chance for lower costs – your company will pay less for energy since you don’t have to keep your own servers powered on. If your business is just starting out, upfront costs will also be lower, since you won’t have to pay for the hardware and licenses required to operate it. Also, since most cloud services employ a subscription business model, expenses are usually more predictable
- easier maintenance – part of the maintenance-related services is conducted for you by a third party. You also don’t need to take care of the infrastructure yourself, which means lower costs
- security – many of the cloud services are operated by big companies that can afford security considerations your business couldn’t
- deployment time – cloud-based applications can usually be deployed much faster than traditional pieces of software
- centers all across the world – your service can be easily deployed on various continents, resulting in a better experience for users
- disaster recovery – you can deploy your service in several locations to make sure you’re ready for a temporary unavailability of one of the servers
- ready-made cloud components – they can replace existing solutions (for example, Aurora can fill your database needs)
Drawbacks of using a cloud environment
Of course, as with everything in business – and life – there are also drawbacks to using a given solution, and cloud technologies are no exception. Here are some examples:
- you have to stay connected – the first, most obvious problem is the fact that you won’t have direct access to your data and/or IT infrastructure. Depending on the nature of your company and your core business strategies, connectivity issues can be substantially more impactful in such circumstances
- expenses pile up in the long term – while the cloud is certainly more affordable in the short run, license and subscription costs tend to pile up over time, and can actually get more expensive than a solution based on on-premise servers. It’s a good idea to keep a finger on the pulse in this regard
- limited customization – you can’t easily change the specifications (or you can do it to a limited degree). However, it’s worth noting that this area has started to change in recent years. Some companies have started to offer so-called “bare metal” cloud – i.e., servers that lack a hypervisor and virtualization – instead of typical, virtualized instances. This option gives the users greater control over the specification and management of their servers.
When should you consider the cloud?
The truth is that the cloud is a great option for most companies – its rapid rise in popularity didn’t happen by chance. Most businesses have a lot to gain from such an investment, and almost any industry has an area that can be improved by a cloud solution.
However, there are two scenarios that exemplify the benefits of cloud computing services to the greatest degree. The first is a company that’s experiencing rapid growth and needs software that’ll quickly and easily scale to its changing needs. The second is the case of a start-up that has to consider the entry barrier and needs to lower costs as much as possible.
Case study: Cloud-based project for a media giant
It just so happens that we know a lot about ideal business scenarios for cloud solutions – we’ve implemented quite a few of them.
For example, a while ago Pretius was tasked with building a new e-commerce module for a VOD service for one of the largest media companies in Poland (and Eastern Europe in general). The main goal of the software was to give the customers the ability to buy access to movies, TV series and programs. The expected number of viewers was high and was sure to grow even higher quite fast, so the company needed something that would scale very well. The solution also had to offer ways to address other challenges (disaster recovery, frequent infosec improvements). It was decided that the cloud is the best answer.
Since a fast time-to-market was a key consideration in this project, Pretius carried out a professional lift-and-shift migration (it means rehosting applications, data and traffic) to the leading cloud environment on the market – Amazon Web Services. We’ve migrated everything – from Java-based applications, through MySQL databases and Varnish/NGINX servers, ending with monitoring services working on RabbitMQ and ELK – to Amazon’s EC2 virtual machines. We’ve used auto-scaling groups in all instances, and we’ve also introduced managed load balancers.
The end result is a greatly scalable cloud infrastructure that’s ready for further growth. In fact, a few months after the transition the system was put to a serious test. In just one month the VOD service was used by over 60 million users, the most of all VOD platforms in Poland, surpassing even Netflix – and everything worked fine, the cloud worked.
It’s also worth mentioning that we’re still collaborating with that client, carrying out further steps of that project (for example, moving MySQL databases to the Amazon Aurora relational database, which is the perfect choice for a cloud-based system).
The benefits of storing your data locally
Despite the cloud’s dominance, in some circumstances, an on-premise software system can still be a better choice. This approach also offers several unique benefits:
- full control – if you keep your data on premises, you always remain in full control of the specification and hardware of your on-premise servers and can implement any changes you deem necessary
- lower cost over the entire lifecycle – initial investment will be higher, but with good management, you should be able to reimburse some of the costs over the years
- best security – while there are ways to make data stored in the cloud more secure, there’s simply no safer option than keeping it on a local machine (of course when it’s configured the right way)
- access in all circumstances – you can make use of your data even when the Internet is down, and external factors that affect the cloud’s stability have no effect on your company. On-premise can potentially offer the best possible uptime, but it depends on the quality of your maintenance
Drawbacks of on-premise servers
The main drawbacks of using on-premise IT infrastructure are quite obvious, and the main reasons why web-based solutions gained prominence. You should be aware of:
- long deployment time – installations have to be carried out on each server and computer, which prolongs the deployment
- high costs – you’ll need to invest in the required hardware and software, and the cost can be quite substantial
- maintenance – with an on-premise solution, you’re often solely responsible for the maintenance, which means you need to have the necessary workforce for it
When should you consider the on-premise approach?
That really depends on the company. Some organizations already have the necessary space (server rooms, etc.) and sometimes even the hardware – in such a situation an on-premise system is a no-brainer.
Another hugely important consideration is data security. For example, companies in the banking and insurance sectors may decide that such a level of control over their data is worth more to them than easy scalability and lower upfront investment.
Case study: On-premise solution for a broadcasting company
A leading TV and radio broadcast infrastructure operator in Poland tasked Pretius with creating a new CRM system that would allow the company’s employees easy access to important client information and provide them with the tools required to manage installations. Their old solution was quite outdated and improving it was no longer a feasible option.
The new technology we’ve created – dubbed CRM 2.0 and based on Java, AngularJS and Oracle DB – added useful features and improved and/or automated many existing processes. The solution allows employees to browse through project details, search through client information, review invoices and contracts, and generate useful financial reports. The software is very secure, thanks to implemented authorization groups and the fact that the data is stored locally.
The company was very happy with the results and our collaboration is ongoing – we’ve worked together for nearly 9 years (and still counting!).
Hybrid cloud solutions – the best of both worlds?
Sometimes, the best way is one that mixes the elements of both approaches. There’s no rule that your entire data set or infrastructure has to be hosted exclusively on the cloud or on-premise. You can use both at the same time – for example, you can keep private, sensitive data and critical infrastructure locally, but deploy most of your other systems and apps in the cloud to make them easily accessible for clients and/or employees.
The hybrid cloud infrastructure can allow you to shift some of the workloads, and make use of the cloud’s scalability and ease of access, but with better security and a higher degree of control over your systems than in the case of a cloud-only infrastructure. You can also balance your short-term and long-term costs.
And then there are the private clouds, which can also be considered something of a hybrid approach. These are much more expensive, single-tenant environments, which are not housed on-premise, but work as if they were, at least to a certain degree. Servers of this kind are offered by cloud service providers and can still only be accessed through the Internet, but are operated by one, specific organization (the client’s) and always stay under that company’s control. Imagine renting a specific unit in a data center.
The private cloud can be a great choice for companies that have to meet specific requirements that can’t be met with a typical cloud service (dealing with compliance regulations like HIPAA or PCI-DSS, for example), but still want some of the other benefits the cloud offers and don’t want to house their own servers. The drawback is that in this scenario, some of the maintenance responsibilities (on the software side) are sometimes shifted to the client.
There are no wrong options
In the end, there are no wrong choices here, though most companies will probably want to stick with the cloud to one degree or another. While the on-premise model still finds use in some industries and business scenarios a hybrid approach will usually make more sense overall, even when your focus is data security.
The key thing is to understand your organization’s needs and plan your IT infrastructure around them (choosing a cloud provider wisely can also be a factor). With a good strategy, you’ll be able to take full advantage of the benefits of the cloud, while mitigating some of the drawbacks and responding to concerns.
If you need help with planning such a strategy or implementing the cloud in your company, we can help! We’ve got over a dozen years of experience with various cloud-based as well as on-premise projects, and we understand the needs of many different industries. Write us at firstname.lastname@example.org and tell us what you need. We’ll get back to you in 48 hours.