Tag Archives: Storage

Choosing the right MS SQL editions and implementation

thumbnailI have frequently come across a situation where, clients are usually confused about the selection of MS SQL edition and whether they should go on-premise or on cloud. And given the fact that there are other IaaS players too, selection of hosting a SQL server on cloud becomes even more difficult.


Editions of  2016 MS SQL 

Microsoft recently launched  2016 MS SQL editions. They are available in 4 flavors: Express, Standard, Enterprise and Developer

Here is the brief summary of what these editions are meant for :

Screen Shot 2016-09-09 at 1.20.04 PM


Although there is a lot of information available on Microsoft’s website, I have filtered out some of the most important features of different  2016 editions  which should be considered before finalizing which edition is right for you.

Screen Shot 2016-09-09 at 1.52.40 PM

* Basic HA – restricted to 2 node single database failover, and non readable secondary db. Basic HA ensure data availability so your data is not lost with basic HA and a fast two nodes non-readable synchronous replica.

** Advanced HA – Always On- availability groups, multi-database failover with readable secondaries.

On-premise deployment.

There are 4 costs associated in an op-premise set up.

  1. Infra cost
  2. Hardware
  3. Licenses cost
  4. Personnel

I would like to focus only on licensing cost. There are 2 types of licenses available for SQL Standard editions

  1. Server + CAL license:   Cost of MS SQL server is  $ 931 and $ 209 per Client access license (CAL) which is either used based or device based.
  2. Core based license :  $ 3,717 per core, in 2 core packs. There is no restriction on the number of users or devices which can access the server in this type of license.

On Cloud deployment:  

The benefit of spinning up SQL server on cloud is it’s fast, easy and you also have an option of getting a fully managed SQL instances.

Comparison of costs on Azure, AWS and Softlayer

Screen Shot 2016-09-09 at 6.36.28 PM

Below tables shows the configurations which were considered.

For AWS and IBM SoftLayer
CONF 1 2 8 100
CONF 2 4 16 200
CONF 3 8 32 400
CONF4 16 64 800

For Azure
CONF 1 2 7 100
CONF 2 4 14 200
CONF 3 8 28 400
CONF4 16 56 800

The graph shows clearly that SoftLayer is the cheapest when compared to both AWS and Azure. Following are the added advantages with IBM SoftLayer :

  1. Data download limit of 250 GB with virtual instances and 500 GB with Bare Metal instances
  2. There is no inter DC charges
  3. The instances are not bundled, so you have the flexibility of increasing or decreasing cores, RAM and HDD independently which is not in the case of Azure

Comparing the cost of on-cloud vs on-premise is  little tricky. You need to take the following things in to account :

  1. When is your server hardware refresh due: This is important because assuming you have recently invested in the hardware  and the next refresh is due only after 3 years, then you will incur only the license cost of MS SQL. In this case, most of the times, going for an on-premise will make more sense.
  2. No. of users in the organization:  Assuming you only have 20 -25 users and there is a lot of uncertainty about the increase or decrease of the no. of users, then in this case, most of the times, on-cloud will make sense. You just have to purchase the server license and then you can take CALs from your cloud service provider which comes in a minimal monthly cost.

In case you want to need to know more about the implementation and pricing on SoftLayer and want to do a TCO for your implementation then, you can reach out to me on this link or drop a comment here.


Storage Services in AWS

AWS offers following storage services :

  1. AWS S3 – This is the object storage in AWS Cloud
  2. CloudFront The CDN service of AWS. It makes content delivery faster
  3. Amazon EBS : Network Attached Storage volumes for your VMs
  4. Amazon Glacier  : Low Cost Archival storage

Let’s take a quick look in each of the offering :

AWS S3 : The primary uses of object storage are, backing up the data, storing images and videos which can either be accessed directly or through CDN, and store contents of static websites. The most common Amazon products used with AWS S3 are :

  1. Amazon EC2 :
  2. Amazon Elastic MapReduce :
  3. Amazon SQS
  4. Amazon CloudFront :
  5. Amazon DevPay :

AWS S3 pricing : AWS pricing has following components :

  1. Storage Pricing
  2. Request pricing:
  3. Data transfer pricing

AWS CloudFront : Is the CDN service of AWS. This is mostly use in case of faster downloading and frequently access of data by the user. You either create a distribution or an HTTP server which act as an origin. When a user request the data, it first search in cahce. If it’s not available in cache, the request then goes to origin server.

Amazon EBS :  EBS stands for Elastic Block storage. You can consider this as a HDD attached to your laptop. The only difference is that it’s on the network. One EBS can be used with only one EC2 instance. But multiple EBS volumes can be attached to a single EC2 instance.

Most common usage includes acting as a primary storage for a database  or a filesystem. AWS offers 4 types of EBS:

  • EBS General Purpose – charged based on the amount you provision in GB per month
  • EBS Provisioned IOPS: charged based on data provisioned and IOPS
  • EBS Magnetic:
  • EBS Snapshot

Amazon Glacier : It’s the archival storage offering. It’s used when data is not going to be accessed frequently also known as “cold data” and latency is a major concern.

How does the pricing work ?

It has three components :

  1. Storage pricing – There is no further break up. Simple – it starts with $0.007
  2. Request pricing – Like other storage services AWS charges you for
    1. UPLOAD and RETRIEVAL Requests
    2. Data Retrieval – AWS charges you if you retrieve more than 5% of the data stored. So if you have stored let’s say 10 GB, then after 500 MB you would be charged at $0.001
  3. Data transfer pricing – In Bound data is not charged, if your EC2 is in not in the same region as Glacier, you will be charged and data from Glacier to internet charged