ga('create', 'UA-102273033-1', 'auto'); ga('send', 'pageview');

Monthly Archives: November, 2018

ericvanier.com database performance

15: Factors that affect Database Performance

Posted by MySQL NEWS No Comment yet

With every business going online lately, the demand for high capacity and an efficient database has become the need of the hour. To cater to this need it is very crucial to ensure a high performance of the database.

To ensure a high performing database, it is very important to know the factors which affect the Database Performance in one way or the other.

Before we get into the details of the factors affecting database performance, let us first understand what a database performance is and why it is so important.

What is Database Performance?

Database Performance is the speed with which the database responds to the requests of accessing data. Though it might be sounding really simple, it has many layers unto it making it complicated, especially for DBA (Database Administrators), who spend most of their time ensuring a high performance of the database.

Why is Database Performance so important?

What makes Database Performance more important is the dependency of several operations on the data they access from the database. So, any kind of a slowdown from the database could subsequently slow down the entire operations. This would cause the end user to put off from the service.

Thus, Database Performance is substantial for a good user experience.

Factors that affect Database Performance

Here is the list of factors that affect the Database Performance, and which have to be well taken care of for a higher Database Performance.

Workload

 

ericvanier.com database performance workload

One of the primary factors which affect the performance of a Database. Workload defines the data access requests sent to the Database by the system or end user. Clearly, a higher number of requests would mean an increased workload, which would require more processing from the Database end.

 

A workload is a cumulative of online transactions, batch jobs, ad hoc queries, analysis, business

intelligence queries, utilities and system commands which are directed via DBMS (Database

Management System) at any given point of time.

 

It is a dynamic entity and changes from time to time. While sometimes it could be predicted due to

some possible reasons such as peak business hours etc. but it often remains unpredicted making it a

challenging job for the DBA.

 

This way in an overall manner workload makes it as one of the primary reasons which largely affect

the Database Performance and thus is often monitored carefully by the diligent Database

administrators.

 

Throughput

Throughput plays an important part in the Database Performance being the measure of the input/output speed of the entire process. This input/output speed depicts whether the queries are responded in a fast or slow manner.

 

Throughput is not just dependent on the hardware factors such as the CPU speed and capacity but

also relies on the software of the system, such as the Operating System, Mainframes, software

programs, and their integration.

 

If the hardware and the software perform efficiently, then the throughput of the database is

observed to efficient resulting in better performance of the database.

Resources

These play an important role in database performance and affecting the throughput and other factors directly. Efficient hardware and software resources such as CPU, memory, cache controllers and microcode play an important role in a high performance of the Database.

Optimization

ericvanier.com database performance optimized

An optimized system means a better performing system. This makes optimization of the database a crucial factor in ensuring a higher performance of the database.

 

An efficient Database Administrator ensures that the SQL queries are well optimized, by following

diligent optimization and database tuning practices. Thereby, writing an optimally efficient code for

better performance.

Contention

Contention usually happens when the workload on a database increases and many queries try to access same resources causing system conflicts. This usually results in a slowdown affecting the database performance.

 

This happens when one of the operations tries to access or update data on which another operation

is already making some changes causing conflicts. To avoid such conflicts during contention, DBMS

ensures a locking mechanism, which locks the access for other users on the piece of data when a

user is already updating it.

 

A lower contention means a better performance of the Database, due to fewer conflicts and

subsequent slowdowns.

In a nutshell

Improving these factors would definitely result in a high performing database, which would ensure more seamless business operations. Thus, Database Performance is analysed to the behest of business operations.

abstract-ai-art-373543

14: Five Ways to Improve Database Performance

Posted by MySQL NEWS No Comment yet

Five Ways to Improve Database Performance

 

Have you ever heard of the term ‘Big Data’? Chances are you have and most of the businesses both big and small work with data. Owing to the increasing demand of data, data management is more important than ever. The need to manage data while increasing efficiency has lead to the need for database optimization. This is very important for any Database administrator who aims to improve their database performance.

 

 

Because of multiple technologies being curated it important to understand how one can make the most of their database management system. So let’s have a look at some of the most important database performance improvement techniques.

 

Query Optimization

 

Managing the data is one thing but the way one fetches the data plays a major role. Most of the times, query optimization is necessary for good database performance. There are times when it is hard to differentiate between subqueries and joins and which one to use.

 

The efficiency of the query is directly proportional to the performance of the system. This mainly because of the amount of load put in order to fetch the data.

 

Hence, query optimization is one of the most important database performance improvement techniques.

 

Indexing

 

Index is a major part of the database management system and is a major contributor to the database optimization process. An index basically contains keys to different parts of the table hence making it easier to locate data and decreasing the processing time. In case of a missing index, the search operation will run through the entire set of data in the table and put load on the system. Indexing is also necessary for query optimization which we discussed above.

 

Memory Allocation

 

When planning your database performance improvement techniques, memory allocation should be considered based on the realistic data requirements. Memory allocated to a database has a major impact on your system performance. Just like it needs powerful hardware, database needs ample free memory to boost system performance and speed up the processing.

 

A common method to keep a check on memory availability is through the number of page faults. The higher the number the lower is the memory. This has a negative impact on the database optimization process.

chips-circuit-board-computer-4316

 

Thus, developers are advised to allocate higher memory to the database (approximately 70% of the total memory in case of the only application on the server). To modify the memory allocated, developers have to access the configuration file and use the innodb_buffer_pool_size key in the .cnf file.

 

Defragmenting the Data

 

According to Wikipedia, “ In computer storage, fragmentation is a phenomenon in which storage space is used inefficiently, reducing capacity and performance.” This is a very common scenario in database management systems and thus it is necessary to defragment the data.

 

Over time, the data stored starts to fragment. This impacts the performance of the system. But running disk defragmentation combines similar data thus decreasing the processing time.

 

Moreover, defragmentation solves our previously mentioned problems of memory allocation and query optimization.

 

Disk Type

 

Choosing the right disk type for your database is essential to the performance of the system.It is related to the hardware part of the optimization process. Just like a faster CPU and higher memory, the hardware properties of the memory disk can improve the performance of the system.

 

One of the most efficient disk types used are the solid-state drives (SSD). The performance relies highly on the performance of the hardware and the I/O processes will respond to the system proportional to the speed of the disk where the data is stored and secured. Thus, working with a faster disk drive, preferably SSD will help improve your database optimization process.

analogue-business-close-up-117729

 

Conclusion

 

Database optimization is an ongoing process. There are numerous methods which can be used to speed up the process. Most of these will vary based on the requirements and the data. Thus, above mentioned are some common tips to improve database performance.

 

I’ve been a database performance expert for almost two decades. I have worked with many organizations, some of which belonged to the fortune 500. Get in touch with me today and we can discuss how I can help you to improve your production database performance.