Pros and Cons of Running SQL Server On-premise vs Azure Cloud

SQLServerF1

Cloud solutions has been growing in popularity of recent with new offerings and more features added in different offerings and reduce or eliminating many traditional and operational overheads of maintaining hardware, servers, OS, Network, SQL Servers, patching, backups, High availability, Disaster recovery, etc. Depending on the type of offering choose, the cost will be impacted and features available. At present, SQL Server instances or databases can be hosted on different environments which include running SQL Server on physical hardware on-premise in client(our own) data center or running SQL Server on virtual machine guest system running on-premise or running SQL Server on Azure VMs(IaaS) or SQL Azure database as service (Paas).

There are many advantages as well as disadvantages of running SQL Server on above mentioned environments, with each one with their own pros and cons which are listed below.
Pros of running SQL Server on Azure
– Running SQL Server on Azure VMs will reduce the cost of hardware maintenance as it will be taken care by Microsoft, thus reduces the load on the data centers and reduces overall maintenance and costs.
– Depending on the type of Azure offering chooses, different administrative or operational costs are reduced. For example, using SQL Azure database as service PaaS will reduce the administrative tasks like Setting up and maintenance of hardware, Installation of SQL Server, maintenance tasks like patching, backups, High availability, etc are taken care by Microsoft. In Infrastructure as service offering IaaS, hardware costs are reduced.
– One of the important advantages of Azure VM and SQL Azure database as service are the flexibility of scaling up or down based on the requirement. For example, it is a common requirement for a test server with similar configuration of production specifications, which can be easily setup on Azure and once testing is complete, we can release or shutdown the Azure database, thus reduces the cost of maintaining the server outside of testing time, which can be significant. Another example, where we may need to scale up the performance of the server like shopping portal during thanks giving day or during festivals when there is high demand for the portal, Azure allows to quickly upscale the performance.

Cons of running SQL Server in Azure
– Although Azure provides cost effective cloud solution, but has its own disadvantages too. On SQL Azure database as service, there is not much control on the features or operations like patching, backups, etc.
– Also, another major concern about running SQL Server on Azure is security. Applications which store critical client data which comes under PII or finance related data, many organizations are not comfortable storing them on third party data centers where they do not have much control.
– The SQL Server instance databases main purpose is to store the data and allow it to be retrieved when required, so there is lot of dependency on the application and other services. So, it is important to consider where other dependent or related applications are running. For example, if applications and other services are running on-premise and SQL database on azure can introduce additional latency and any network issues can cause frustration to users, so any critical applications which are running on-premise may take advantage of SQL Server running on-premise too.
– Also, it is possible that some times the performance of SQL Server on azure is not predictable or consistent, because the SQL Server will be sharing the same hardware resources with other SQL Server instances or other applications, so heavy load from all servers or applications can lead to some resource saturation, thus causing bottlenecks at times, so performance is not always predictable on the azure.

Hope this was helpful.

This is applicable for below versions of SQL Server

SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016

Thanks,
SQLServerF1 Team
In-Depth Blogs on SQL Server, Information about SQL Server Conferences and Events, Frequently asked questions, SQL Server Trainings

 

Differences Between SQL Azure Database and SQL Server in Azure VM

SQLServerF1

Microsoft is making huge investments in cloud technology and is betting big for future growth in this area. Microsoft has started providing cloud services for various products, applications, Operating System or hardware support. Based on the type of service, Microsoft has made available different offerings which include Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). Microsoft cloud support many applications or products out of which SQL Server is one of the Microsoft product which is supported on cloud by Microsoft. There are two different kind of offerings provided by Microsoft for SQL Server, which are Infrastructure as a Service (IaaS), Platform as a Service (PaaS).

Among these two services Infrastructure as a Service (IaaS), Platform as a Service (PaaS) offered by Microsoft, we a DBA or management, we need to understand what best suits our requirement and based on that we can choose the offering. It is important to understand the differences between these two offerings available for SQL Server, so that we can make an informed decision. Each offering for SQL Server from Microsoft has its own advantages and disadvantages interms if features, cost, High Availability, Disaster recovery, which operations tasks are taken care by Microsoft, etc. Below are some of the differences between SQL Azure SQL Database (PaaS) and SQL Server in Azure VM (IaaS).

SQL Azure database as service is best suited for new applications designed or optimized for cloud solutions or which depend on other cloud technologies, so that they can be used together. Developers building software-as-a-service (SaaS) applications can use Azure SQL Database to provide flexibility to support both explosive growth and profitable business models. On the other hand with Infrastructure as a Service (IaaS) is for applications which are already existing ones and cannot be changed easily and need to be migrated on to cloud without much changes to be made. Applications which are dependent on other on-premise resources are best suited for Infrastructure as a Service (IaaS) compared to SQL Azure database as service.

SQL Azure database as service does not support all features available in SQL Server and has many limitations for each feature, many of the features cannot be controlled by DBAs or developers and there is not much control for DBAs for operational tasks like patching, backups, HA or DR. Infrastructure as a Service (IaaS) is just like on-premise SQL Server instance on which DBAss or developers can make configuration changes, performs backups/restores, use required technologies for HA and DR purposes, etc. There are some limitations with SQL Azure database as service like max database size supported as of 2015 is only 500 GB, but this limitation does not apply for Infrastructure as a Service (IaaS). Another limitation include, SQL Azure database as service does not allow resources to be accessed from Azure to on-premise. Infrastructure as a Service (IaaS) does not have any such limitations.

In Infrastructure as a Service (IaaS), hardware, its maintenance costs are eliminated as it is taken care by Microsoft. SQL Azure database as service also eliminates the costs mentioned before, in addition to that, in SQL Azure database as service also eliminates maintenance and administration efforts and costs of patching, backups, HA, DR, etc. in SQL Azure database as service, there are different services available to choose for High Availability and disaster recovery where Point in Time Restore, Geo-Restore, and Geo-Replication to increase can be chosen to increase business continuity. In Infrastructure as a Service (IaaS), the High availability and disaster recovery is to be taken care by DBAs and we can choose any technology of our choice and we are responsible for administering, monitoring and fixing any problems.

Hope this was helpful.

This is applicable for below versions of SQL Server

SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016

Thanks,
SQLServerF1 Team
In-Depth Blogs on SQL Server, Information about SQL Server Conferences and Events, Frequently asked questions, SQL Server Trainings

 

Different offers from Microsoft Azure for SQL Server

SQLServerF1

Cloud solutions has been gaining increased support and many customers moving their data on to cloud technologies or planning to move in future. The reason for increase in popularity of the cloud technologies include that it reduces the operational and maintenance cost of hosting the own hardware and its day to day maintenance. Many operation tasks such as backups, patching, etc can also be taken care by the cloud solutions depending on the kind of offering selected. Microsoft and other companies like Amazon are investing a lot on the cloud technologies and trying to provide features that match the on-premise servers and applications or more than that.

Microsoft is offering its cloud services in different types depending on the services offered. These include Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). These offerings are generic and is applicable for different applications which include SQL Server too. Coming specifically to SQL Server, Microsoft is offering two services SQL Server on Azure VMs (IaaS) and SQL Azure Database (PaaS).
SQL Server on Azure VMs (IaaS) – This is similar to on-premise SQL Server running on a virtual machine which is running on a host system whose hardware is maintained in Microsoft’s data center. In on-premise servers, DBAs or management discuss and decide on the hardware required like CPU, Memory and storage and the Operating System required, on top of which DBAs install SQL Server instances and create or restore databases. in SQL Server on Azure VMs (IaaS), Microsoft provides required hardware(CPU, Memory, Storage) and provides a VM with required Operating System too. DBAs can install SQL Server instance on this VM, configure and manage and administer it just like an on-premise SQL Server instance. If any support is required related to hardware, then DBAs are required to contact the Microsoft support. This is best suited for applications which does not need much changes after moving to cloud technology and where management want more control on the SQL Server.

SQL Azure Database (PaaS) – SQL Azure on the other hand is a Database as a Service offering of SQL Server. This SQL Server runs on a VM which is maintained by Microsoft and this server will be hosted on Microsoft Data Center. In this offering DBAs does not need to install, or manage things like patches, backups, upgrades, etc, as these things are taken care by Microsoft team either through automated scheduled tools to by manual maintenance depending on the type of the task. There are many things which are offloaded from DBA like high availability, disaster recovery, patch maintenance, etc. If high availability is required, we need to choose the right offering and license which provides the high availability. Here we can choose which server needs which features and based on the features used and the usage the price will be decided. DBAs or managers get access to Azure portal where we can setup new SQL Azure instances, configure them, choose required features, and find the connection strings to be used in the application or to use in SSMS to connect to this instance locally from out laptop or other devices. From SSMS or other applications, we can create databases, tables, users, etc and use the databases to store and retrieve the data. This is best suited for new applications which just need access to data and does not want to spend time and efforts on maintaining SQL Server like backups, patches, high availability, etc. One of the major limitation in this is that the existing applications are required to be rewritten to able to work on SQL Azure.

During initial stages when the SQL Azure service was introduced, there were lot of limitations, so was not used much, but as in 2015, the offerings have increased a lot and can support many applications to move their data to SQL Azure and use it without much issues. However there are still many limitations, when compared to on-premise SQL Server instances, which almost does not have any limitations.

Hope this was helpful.

This is applicable for below versions of SQL Server

SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016

Thanks,
SQLServerF1 Team
In-Depth Blogs on SQL Server, Information about SQL Server Conferences and Events, Frequently asked questions, SQL Server Trainings

 

Considerations for SQL Server Instances and Databases for Virtualization

SQLServerF1

Virtualization has growing demand and implementation after many success stories. Previously SQL Server instances were installed on servers with their own physical hardware, but that also introduced challenges of effective usage of the available hardware. Over a period of time, the hardware has dramatic changes which made available high configurations for cheaper price and smaller sizes and servers have become more powerful and can support a lot of CPUs, high amount of memory in terabytes, support for high storage, local, SAN and SSDs. So, virtualizaiton helps in using these powerful tools in an effective manner by allowing to create multiple virtual machine guests on one host server, thus making the hardware usage effectively.

With latest virtualization technologies have their own virtualization operating system which is installed on top of hardware even before the installation of the Windows Server Operating Systems. Once the Virtualization OS is installed, now it allows creation of multiple virtual machines each with certain set of CPU, Memory and Storage. Each VM acts as independent server and any operating system can be installed and any applications can be installed, this helps segregate multiple applications running on server server to running each application on its own virtual machine. When it comes to SQL Server, where the SQL Server instances are spreads cross many different servers need to be consolidated and moved into their own virtual machine or combine multiple databases and host them on their own VM and SQL Server instance.

To consolidate multiple SQL Server instances on different physical servers into their own VM ot on to a single SQL Server instance, we will need to follow a proper approach or consider various options to choose what suits the requirement better. Below are some of the options to consider inorder to choose which databases, instances and servers can be consolidated.

Version upgrade paths – Need to understand if we can group the databases which does not have issues upgrading to higher versions as soon as one is available. If the databases cannot be upgraded and requires lot of planning and testing before hand then such databases are better of to have their own dedicated VMs.
Maintenance Windows – Need to group databases which can have maintenance performed at certain time, such can be hosted on same VM and which have different maintenance times, can be moved to their dedicated VMs.
Security – Databases or applications which require high security are better of hosted on their own VMs.
Performance – Critical servers which require high performance can be left running on its own physical hardware or on a server which is shared by non-critical applications to avoid other servers using high amount of resources from the host server.
High Availability – Databases or applications which are very critical and require high availability needs their own dedicated VMs.
Licensing – If licensing cost needs to be reduced, then need to try and group databases with similar characteristics on one SQL Server instance or few SQL Server instances on different VMS.
Backup and Restore – Databases or applications which require very good planning for recovering data and time taken to recover the data is very small, such are to be hosted on own servers.

Hope this was helpful.

This is applicable for below versions of SQL Server

SQL Server 2005
SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016

Thanks,
SQLServerF1 Team
In-Depth Blogs on SQL Server, Information about SQL Server Conferences and Events, Frequently asked questions, SQL Server Trainings

 

Planning and Designing a SQL Server Database System

SQLServerF1

Planning, Designing and setting up a new server to host SQL Server instance and databases and customers data requires lot of knowledge about the process, requires lot of practical experience of solution delivery and track record. There are many factors which are involved in planning and designing a SQL Server database system. The SQL Server should be able to provide best performance, security, strong disaster recovery, high availability, easy scalability, etc. There are various processes, documentation, pre-planning, delivery, coordination, communication, testing, etc.

In this post, we are trying to highlight some of the top steps architects need to consider which planning and designing a strong SQL Server system for hosting critical data. First, we need to understand the requirement of what data will be stored, like OLLTP, OLAP, etc. What kind of data is stored, meaning structure data, unstructured data or semi-structured data. How many users will be accessing the system and over a period of 5 or more years what is the expected growth in number of users and amount of data. What kind of security measures are expected. Once we have the requirements available, these needs to be documented and signed off by all stake holders.

Next comes planning phase on how these requirements can be implemented, like how many resources are required to get this implemented and from which technology these resources are need to be from and the level of knowledge expected from the resources. Decide on a time frame on when this needs to be completed and this needs to be realistic to consider planning, implementation, testing, making any further changes, testing, planning and going live with the system. Need to select the versions like the operating system, SQL Server version, hardware to be used, etc. Planning of the hardware is very important as it is the one which decides how we can achieve performance, security, disaster recovery, high availability, scalability, etc. Need to consider future growth as well, because at the time when the plans are laid, the data size may be small and the number of users expected to use the system may be small, but over a period of time this may change and will require additional CPU, Memory, Disk or Network resources, so planning for future growth expectations will reduce the number of attempts to meet the growth requirements in future.

Next steps would be to buy the required hardware as planned before, and using the resources to build the server with best practices, get the Operating System installed with latest patches, ensure latest drivers are installed. Next install latest version of the SQL Server and patches and configure the OS and SQL Server settings as per best practices. Once the server is ready, restore the databases configure logins, jobs, etc and handover to testing. If testing is successful, then we can move forward with going live with the system, if there are any problems noticed, then we need to identify the cause and fix the issues and test again to ensure everything is working as expected. Load testing is one of the important tests to ensure best performance. Once testing is successful, need to involve all resources and plan step by step how to go-live with the system and perform a test go-live if possible and test the system. If all is good, then final go-live can be performed and new system to be monitored for few days to ensure there are no issues. We can then handover the server to the teams which will maintain and administer it going forward.

Hope this was helpful.

This is applicable for below versions of SQL Server

SQL Server 2005
SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016

Thanks,
SQLServerF1 Team
In-Depth Blogs on SQL Server, Information about SQL Server Conferences and Events, Frequently asked questions, SQL Server Trainings

 

Introduction to Remote Database Administration (DBA) Services

SQLServerF1

Almost every organization produces data and has need to store and retive data in an efficient manner. There are various database management products like SQL Server, Oracle, MySQL, DB2, Sybase, Informatica, TeraData, etc are available in the market and every organization uses one or more of the database management products. Most of the large and medium organizations have dedicated DBA team or atleast one or two DBAs who manage the databases and many organizations outsource their DBA operations to other reputed companies which provide Database Administration and related services.

The companies which employees DBAs and support Database Administration and Management operations may have dedicated office at different locations around the globe and DBAs visit the office daily and connects to the servers or databases and provides day to day support. However with recent development in the hardware and software industry the access to the servers or databases has become far more easier and flexible which allows DBAs to connect and manage servers or databases from any where with just having an Internet connection. There are various security measures taken to safe guard the data and the servers.

With these recent developments there is now an increase options of remove DBA services where in a company employees DBAs across the world and allow them to work from their houses and connect to the client environment through secure methods and then perform day to day activities from home itself without having to visit clients office or the vendors office. In future this will only further increase with the current success with the remote DBA services. Remote DBA services companies specialize in multiple Database Management and related softwares.

Management of databases systems is not plain simple as there are lot of things involved, thus many companies outsource their database operations to remote DBA service companies so that they can concentrate on their core business instead of worrying about the operations and management of non core stuff which is an overhead. Also, many organizations may not be able to afford to have DBAs available 24×7 as it may get very costly, instead they can avail 24×7 reliable DBA services by spending lesser amount or money. Currently remote DBA services are popularly used by many organizations for SQL Server, Oracle, Oracle E-Business  Suite, MySQL, DB2, Sybase, etc.

Remote DBA services generally operate on hourly price model, where a client buys certain number of hours per month and the DBA team installs an monitoring tool or uses existing monitoring tools already installed and works on the incidents raised by the monitoring tools. In addition to the regular monitoring, remote DBA service teams also provide many proactive tasks like health checks, performance reviews, security reviews, backup reviews, etc. The contracted hours can also be flexible like it can be increased if there are any new projects and can be reduced once the projects completes.

If you are looking for low cost remote DBA services for less than 5 critical SQL servers during US non-business hours for SQL Server technology, please contact us at SQLServerF1@GMail.Com

Hope this was helpful.

Thanks,
SQLServerF1 Team
In-Depth Blogs on SQL Server, Information about SQL Server Conferences and Events, SQL Server Frequently asked questions, SQL Server Trainings.

 

Tips to Earn Money Online for SQL Server Database Administrators DBA

SQLServerF1

Internet revolution started somewhere in 1990’s and has grown tremendously since then and has become part of billions of peoples life. People of all the countries of the world rely on Internet to get information, gain knowledge, get things done quickly and remotely and for business purposes. Internet is used for different purposes like E-Mails, quicker communication over Instant Messengers, Audio and Video calls with different people over web thus reducing the cost of communication, and in the World Wide Web like Discussion Forums, Blogs, Social Networking Sites, and E-Commerce or Online shopping sites, Job Portals, etc. Many Government organizations and Private Organizations host their websites over Internet which is accessible to people all over the world in just few seconds.

With the revolution of Internet, all Software and IT related business enabled more opportunists and allowed employees to work remotely without having to sit in Data Centers or in front of servers. Employees can connect to the servers remotely from any where in the world and perform their duties thus allowing spreading and segregation of duties across the world.

If we look from SQL Server Database Administrators perspective, most of the SQL Server DBA’s remotely connect to the servers from office of home through secure Internet connection and perform their duties.
Servers are generally hosted in one or two locations and then DBA’s can connect to them from any where in the world.

Traditionally so far, company which require DBA’s either have in-house DBA teams or DBA operations are outsourced to other reputed company’s or sometimes the Developers or Network team engineers handles DBA activities as well. So mostly SQL Server DBA’s work either directly or as contractors, but there are some SQL Server DBA’s who gain more indepth knowledge about different technologies and provide consultant services.

Below are some of the options for SQL Server DBA’s to earn money online by working from HOME.

– There are company’s which allows their employees to work from home where they remotely connect to the servers. This option is similar to the regular job, the difference being you do not have to visit office daily.

– If you have more indepth knowledge over different technologies like SQL Server DBA concepts, SQL Server Developer skills, Windows Operating System knowledge, Network related insights, etc then they can provide freelance consulting services. However it is important to promote their skills to get opportunity to find a client.

– Setup your own website and write blogs and articles which are helpful to the SQL Server Database Administrators community. You can later deploy some Advertisements in your website and thus earn some money. But it is not easy to earn money through websites as it requires lot of time, effort and patience.

– There are also many websites which pay money to write articles or Blogs. You need to have lot of experience for this as the articles or Blogs which you write need to be valid, and you may be paid very less for writing articles and may have to write many blogs to earn decent amount of money. This is most often used to earn some part time money.

If you want to write some articles for www.SQLServerF1.com, then please reach out to sqlserverf1@gmail.com

– Another way to earn money online for SQL Server DBA’s include affiliate marketing. Example, you can research and study a particular tool used by SQL Server DBA community and then you can register in their product’s website as an affiliate. You can earn some percentage of money when any uses buys the product through your reference. It is not easy to make some one buy a product through you, it need lot of marketing skills.

From all the above you can choose which option best suits your skill and can proceed with the same. None of these are easy as earning money online is not at all easy, requires lot of skill, time and effort. Beware of fraud websites who try to cheat people in the name of showing ways of earning money online.

All the best. Hope this article was helpful to you.

Thanks,
SQLServerF1 Team
In-Depth Blogs on SQL Server, Information about SQL Server Conferences and Events, SQL Server Frequently asked questions, SQL Server Trainings.

 
1 2