Best Practise for installing 3rd Party Software in Azure VM. Azure Disks.
-
Hi,
I have a query with regards to Azure VM Disks. When you create a VM, you get:
-OS Disk, C Drive.
-Temporary Disk
-The option to add a data Disk.My question is if you are installing software such as A/V and SQL Express. Do you install this on the C drive or a Data Disk, what is the norm?
Thanks.
-
I hope all is well. It depends on what your company standard might be, and/or what security concerns that you have and may be addressing as part of the build of the VM in question.
There is no "RIGHT" or "WRONG" approach here, just a matter of policy and preference.
There are potential performance issues that you would have to consider and address depending on the nature of the workload(s) being installed and used on the VM, which may require separate disks to be used for logging and data storage....
If you have specific questions, please let me know, and I will be happy to answer anything I can.
Good Luck ...
Cheers,
Adam
-
Can you please elaborate on the performance issues? If we install SQL Express onto say an attached data disk, are we likely to experience performance issues compared to installing the software on the C:? I am setting up the infrastructure from scratch and I want to make sure that it is setup correctly. Why would you choose a certain drive over another drive? Are you able to give examples of scenarios and the decision making process behind why you would select one over the other, or is there any difference? Many thanks
-
I hope all is well. Traditionally, the performance issues that we attempt to address when deploying/using a database server arise from the limitations of the disk subsystem and our ability to access information quickly enough to allow for acceptable performance under load.
Databases can be heavy users of the disk(s) in/on the system(s) where they are installed, and as a result you need to plan for the type of usage that you are likely to experience over the lifetime of the database and it's usage.
The standard approach is to separate the data and logging functions of the database by installing and configuring them to use separate physical/virtual drives. This allows the system to use 1 drive for accessing/storing/processing data and any requests/needs around those activities, and a distinctly different drive for the logging that will take place as part of the use of the database.
If you choose to further optimize your configuration, you can decide to deploy with SSD drives instead of traditional HDD drives, as these will allow for much better read and response times for writes.
There are additional issues to consider, such as the amount of RAM (memory) that you are allocating to the VM/machine that will run the database(s). The simple rule is the more RAM, the better the performance, BUT the real secret is to understand that you need to have enough RAM available to load the entire database into memory so that it is able to run faster.
In addition, the real trick ultimately to database optimization is the data itself and the queries used to access it, along with the structure(s) used to store and work with the data across the database (the tables).
You can take a look at the URL's below for some basic introductory guidance on how to examine and optimize your data and queries as well as longer term performance monitoring to ensure everything stays healthy once you optimize:
How to optimize SQL Server query performance:
https://solutioncenter.apexsql.com/how-to-optimize-sql-server-query-performance/How to Check and Improve Server Performance With SQL Query Optimization and Tuning:
https://www.dnsstuff.com/sql-server-query-optimizationSQL and Database Performance Tuning Guide and Checklist: Expert Tips:
https://www.dnsstuff.com/sql-and-database-performance-tuning-guide-and-checklist-expert-tipsGood Luck !!
Cheers,
Adam