Back End Developer Interview Questions


Q11: What are the difference between Clustered and a Non-clustered index?

Ans:

  • When using a Clustered index, the rows are physically stored on the disc in the same order as the index. As a result, there can only be one clustered index. A clustered index indicates that you are instructing the database to store values that are physically adjacent to one another on the disc.
  • A Non Clustered index has a second list that contains links to physical rows. You can have many non-clustered indices, but each extra index increases the time it takes to create new data.
  • Reading from a clustered index is typically faster if you wish to get all of the columns. You don't have to go to the index first, then to the table.
  • Writing to a table with a clustered index may be slower if the data must be rearranged.

Q12: What Is CAP Theorem?

Ans: Eric Brewer published the CAP Theorem for distributed computing. This asserts that a distributed computer system cannot give all three of the following guarantees at the same time:

  • Consistency (all nodes see the same data even at the same time with concurrent updates )
  • Availability (a guarantee that every request receives a response about whether it was successful or failed)
  • Partition tolerance (the system continues to operate despite arbitrary message loss or failure of part of the system)

The abbreviation CAP represents these three assurances. This theorem established the foundation for contemporary distributed computing techniques. The world's top high-traffic firms (for example, Amazon, Google, and Facebook) utilize this as the foundation for determining their application design. It is critical to recognize that only two of these three requirements may be guaranteed to satisfy a system.

Q13: What are NoSQL databases, and what do you understand by them? What are the different types of NoSQL databases?

Ans: A NoSQL database is a system for storing and retrieving data not described in the tabular relations used in relational databases (like SQL, Oracle, etc.).

The internet is now laden with large data, big users, big complexity, and so on, and it is also getting more complicated by the day. All of these issues are addressed by NoSQL; it is neither a conventional database management system nor is it a relational database management system (RDBMS). NoSQL is an abbreviation for "Not Only SQL." NoSQL is a database that can handle and sort unstructured, cluttered, and complex data. It's merely a different method of looking at the database.

Types of NoSQL databases:

  • Document Oriented
  • Key-Value
  • Graph
  • Column Oriented

Q14: What are some advantages of using Go?

Ans: Go is an attempt to create a new, concurrent, garbage-collected language with rapid compilation and the following advantages:

  • A big Go application may be compiled in a matter of seconds on a single machine.
  • Go provides a paradigm for software development that simplifies dependency analysis and eliminates most of the overhead associated with C-style include files and libraries.
  • Because there is no hierarchy in Go's type system, no effort is wasted describing the connections between types. Furthermore, while Go includes static types, the language strives to make types seem lighter weight than in traditional OO languages.
  • Go is completely garbage-collected and offers essential support for parallel execution and communication.
  • Go's architecture provides a method for developing system software on multicore computers.

Q15: What REST stands for?

Ans: REST is an acronym that stands for REpresentational State Transfer. REST is a web standards-based architecture that communicates data via the HTTP Protocol. It is based on resources, with each component being a resource and each resource being accessible via a common interface utilizing HTTP standard methods. Roy Fielding initially invented REST in 2000.

A REST Server merely offers access to resources in REST architecture, while a REST client accesses and shows the resources. Each resource is identifiable by URIs/global IDs in this case. To represent a resource, REST employs a variety of formats such as text, JSON, and XML. JSON is now the most often utilized format in online applications.