32
loading...
This website collects cookies to deliver better user experience
GET /user/notifications
/user/notifications
in this casePOST /tweets
{
"content": "I just wrote my first blog on HashNode"
}
{}
. This kind of representation of data is called JSON (stands for JavaScript Object Notation) and it is a very popular way of sending data between client and server.GET
request on the url /notifications
. The HTTP requests also contain a lot of other information about user session, browser, etc which helps the server code identify where the request is coming from and which user is requesting this information. Relational database management systems (RDBMS). These are databases where information about different entities is stored in different tables. For example, say we use a users table to store all the users, a tweets table to store all the tweets, a notifications table to store all the notifications. And these tables have references between each other. For example, the tweet table can contain a user id column which is a reference to the users table. Interaction with RDBMS (storing, retrieval of data, creation and modification of tables, etc) is supported through another programming language called Structured Query Language (SQL, also pronounced as Sequel). SQL is very different from other programming languages we've discussed earlier for example Python, Java, C#, JavaScript, etc. Some find it easy, some find it hard but as a backend developer, it is an essential skill to have and good SQL knowledge helps you write efficient code.
Non relational databases (also called NoSQL databases). The challenge with many relational databases is that it becomes expensive to scale them up when data grows (think of Terabytes of data). In order to solve this problem, many NoSQL databases came into existence. Some of the examples are MongoDB, Redis, Aerospike, Cassandra, CouchDB, Elasticsearch, DynamoDB, Neo4j. These databases don't support SQL and have either their own domain specific language or provide drivers in various programming languages to interact with them. Which ones to use depends purely on the type of problem you're trying to solve and we won't be going into the specifics of each. Also, which one to learn purely depends on the type of jobs you're applying for. But if you want to start on a career path of a backend developer, I would recommend starting with learning a programming language for writing backend code along with SQL for interacting with relational DBMS.
32