Joins in NoSQL database

Joins are hard to do in any distributed database. Even on distributed Sql databases. It is not that joins cannot be supported in a NoSql database. It is just that the database is not designed to be efficient for joins (I’ll explain why), and hence there is no point in supporting joins. Because if you

Read More

Key-value database

A key-value database, or key-value store, is a data storage paradigm designed for storing, retrieving, and managing associative arrays, a data structure more commonly known today as a dictionary or hash. Dictionaries contain a collection of objects, or records, which in turn have many different fields within them, each containing data. These records are stored

Read More

Database optimization

While certain queries may, by their very nature, require little or no cost estimation or comparison between plans to determine optimum performance, most queries will benefit from full optimization. One of the most beneficial methods for increasing the performance of queries is the creation of efficient indexes. A well-constructed index will allow a query to

Read More

Database transaction

A transaction symbolizes a unit of work performed within a database management system (or similar system) against a database, and treated in a coherent and reliable way independent of other transactions. A transaction generally represents any change in a database. Transactions in a database environment have two main purposes: To provide reliable units of work

Read More

RDBMS architecture

The design of a DBMS depends on its architecture. It can be centralized or decentralized or hierarchical. The architecture of a DBMS can be seen as either single tier or multi-tier. An n-tier architecture divides the whole system into related but independent n modules, which can be independently modified, altered, changed, or replaced. In 1-tier

Read More

Database relationships

Database relationships are associations between tables that are created using join statements to retrieve data. The following table describes the database relationships. Type of relationship Description One-to-one Both tables can have only one record on each side of the relationship. Each primary key value relates to none or only one record in the related table.

Read More

Data integrity

Data integrity is a fundamental component of information security. In its broadest use, “data integrity” refers to the accuracy and consistency of data stored in a database, data warehouse, data mart or other construct. The term – Data Integrity – can be used to describe a state, a process or a function – and is

Read More

ER Model

The ER model defines the conceptual view of a database. It works around real-world entities and the associations among them. At view level, the ER model is considered a good option for designing databases. Entity An entity can be a real-world object, either animate or inanimate, that can be easily identifiable. For example, in a

Read More

Database Normalization

Normalization is the process of efficiently organizing data in a database. There are two goals of the normalization process: eliminating redundant data (for example, storing the same data in more than one table) and ensuring data dependencies make sense (only storing related data in a table). Both of these are worthy goals as they reduce

Read More

UML – Overview

UML is a standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. UML was created by the Object Management Group (OMG) and UML 1.0 specification draft was proposed to the OMG in January 1997. OMG is continuously making efforts to create a truly industry standard. UML stands for Unified Modeling Language. UML

Read More

Compatibility with previous and future versions

There are two kinds of backwards compatibility: the obvious one of a version of a specification with previous versions of the same, and another one of new technologies with earlier ones. Nobody forgets about the former, because there is nothing the developers of a new version know so well as the previous version they are

Read More

Integration with another systems

System integration is defined in engineering as the process of bringing together the component sub-systems into one system (an aggregation of subsystems cooperating so that the system is able to deliver the overarching functionality) and ensuring that the subsystems function together as a system, and in information technology as the process of linking together different computing systems and software applications physically or functionally, to act as a coordinated

Read More