Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
A columnar database is a database management system (DBMS) that stores data in columns rather than in rows as relational DBMSs do. The main differences between a columnar database and a traditional row-oriented database are centered around performance, storage necessities and schema modifying techniques. The goal of this type of database is to effectively read and write data to and from the secondary storage in order to be able to speed up the processing time in returning a query.
A columnar database may also be known as a column-oriented database
The data that is stored appears in record order, meaning the entry in the first column is related to the entry in the second column and other columns if the entry appears in the same row. For example, the 100th entry in column 1 belongs to the same record as the 100th entry in column 2. This makes it possible for individual data to be accessed in columns as a group rather than accessing it individually and row by row. Data is stored from top to bottom rather than from left to right as in a row-oriented RDBMS.
Columnar databases are beneficial because the data can be highly compressed, which permits columnar operations to be performed at a fast pace. It is also self-indexing and uses less disk space when compared to an RDBMS. However, the loading process can take time depending on the size of data that is involved. It also becomes a challenge for the database if there are incremental loads, which adds problems in terms of system performance.