In the initial phase of the database we have few records and slowly as our business grows so does our database. The performance that we used to get slowly declines. It takes a lot of time to get the result. Reporting and aggregating the data will be troublesome. For this, we will need to understand how relational database work and how they store the data. Indexing is the way to solve these problems. So will be deep diving into Indices, from basics of what is an index is to how we can use them optimally according to our need and what are the best practices in creating and using the indices. To understand how the database is working we first need a way to monitor, profile the database. With the correct profiling in place, we can find out what is the problem and where the database is low in performance. Once we have the correct index in place we will need to extend further by partitioning and sharding our database according to need.
I am currently working as a Sr. Software Engineer at CloudFactory. I love solving problems, learning, and experimenting with things. I also like expressing my work and learning through different mediums like writing blogs. I write blogs for freecodecamp and hackernoon publications. I have been working with ruby on rails for more than 5 years. Beside ruby, I also like working with JS. I am entering now the new world of Golang. AWS for infra. Sometimes I also like taking my camera, going around the city and doing street photography. I love exploring around the city with my camera and around the web with different technologies.