Database Administration (Guide to becoming a Full Stack Developer)

In the continuation of the last blog Back-End Stack (Guide to become Full Stack Developer). In this, we are covering the area of Databases, Types of Databases, Role of a DBA and pathway to become DBA.

So first of all, What the heck is this Database?

In a laymen term, a database is a collection of information that is organized so that it can be easily accessed, managed and updated. Or, a database can be considered as a collection of data where it is organized into indexed rows, columns, and tables to make it easier to find relevant information. Data gets updated, expanded and deleted as new information is added. Databases process workloads to create and update themselves, querying the data they contain and running applications against it.

Types of Database

Well, there are tons of types of databases nowadays. Many companies develop their own databases to adapt them to their needs. But let’s get to it. There are mainly two categories of database

The Relational Databases is the first kind of database, where data is stored on the disk in table-like schemes. This kind of database is pretty good to store business data. Here is where MySQL, Postgres, SQL Server came into action.

Then there are NoSQL databases. This kind of database covers a wide amount of technologies where you can find key-value databases, document databases, graph databases, streaming databases and so on. The only thing in common that they have is not following the relational scheme. Here you would find databases like MongoDB, Cassandra, Neo4j among these MongoDB is the topmost in NoSQL Database and Cassandra is one of the databases used in Facebook Data Management.

There’s a new kind of database that come into action in recent days i.e., NewSQL. The NewSQL databases are a kind of databases that follow a relational scheme but they work on memory instead of the disk so they outperform the traditional relational databases. However, they are limited by the memory and that’s where they lose against the traditional relational databases. Here you can find databases like VoltDB, MemSQL.

Role of a DBA?

The database administrator — or simply DBA — is a critically important role in many of today’s IT departments, and by extension, their organizations overall. The DBA is the person who manages, backs up and ensures the availability of the mountains of data produced and consumed by today’s organizations via their IT systems. Database administrators develop, install, test, troubleshoot and safeguard the massive data systems inside corporations that store information. Database developers work on commercial or e-commerce websites. They develop and secure the network structures that store and return information based on Internet queries.

So, the question that arises now is, How to become a DBA? or From where should I begin?

  1. For that, the first and foremost thing is to start learning the SQL programming language. SQL is the programming language that database queries are written in.
  2. Then you need to check various kind of databases available and their working. And according to that, you need to choose one of the kind and make some case study on these.
  3. A good DBA should pose experience in database designing which is essentially responsible for any further working of the project.
    Designing of the database includes a case study of the problem set (often call as use cases), aERD of the proposed schema (nowadays EERD are more preferred than ERD). For any single problem statement there are various ERD available, but while designing our own, we need to keep in mind that what is the scope of our project and how much alteration can it have in future.
  4. After designing the database, the next important thing is the queries. Complexity of queries affects the overall performance of the project as they directly affect the response time of the system.
  5. The integrity and security of the data in a database are what we cannot ignore. So, while designing and developing any database we need to check the integrity of data and its security in terms of protection from any kind of data leak and data loss.

All of the above are the major steps which on the pathway to become DBA, rest depends on various case studies and working experience on the Database, as each new problem statement have a new kind of database design as well as Database Architecture and Technology Stack.