[MUSIC] Hi, we have reviewed what are the main characteristics of a key-value databases and its advantages and disadvantages against relational databases. This week, we will learn the main characteristics of a columnar database, the difference between row store and column store databases and how they impact on OLE DB and OLAP systems. Let's start. Strictly speaking, a columnar store database corresponds to a Binary-Relational model. And it has its origins during the 1970s. Being Chen, the first person to mention it in its transcendental role Entity Relational Modeling towards a unified view of data. The relational model is based on the mathematical concept of relationships. The Binary-Relational model is a particularization of the relational model, with the restriction that all the relations are of degree 2. And it is also a columnar database. Sybase IQ, ParAccel, Vertica, MonetDB and SAND Technologies are examples of columnar databases. [MUSIC] For us, the correct name is Binary-Relational databases. And the commercial DBMS we are going to talk is sub Sybase IQ because it has many years on the market and it is a very strong columnar database managed with SQL. A traditional relational table can be decomposed into a binary-relational model as it is shown in the figure. [MUSIC] In columnar databases, there is an implicit indexing on each column. I mean, it is a vertical store data, which is equivalent to each column in each table is an index. Only the columns involved in a query are touched. This dramatically reduce the number of IO operations or input and output of the system. One-third is lifted for each column individually, then load and query processing are done in parallel. There is a compression when storing on columns, because instead of storing data horizontally, do it vertically and eliminate duplicates. See the following figure. Therefore, in Data Warehouse or OLAP systems, we can forget about traditional relational horizontal storage. There are more benefits on using columnar databases. For instance, the ability to answer more business queries in less time and with same hardware. There are experiments that show the following theories regarding columnar store against row store. 30% disk space savings, maximum 88%. 30% savings on space in computing data center. 30% savings in electricity due to having fewer discs. 30% savings in air conditioning for having to cool fewer discs. 30% less backup storage, such as tapes. 30% less risk for having fewer discs susceptible to failures and that can stop the system. Comparing columnar against row store databases, the relational databases. We can say that columnar saves disk, time, memory, and CPU resources when complex OLAP queries are required. Columnar databases are not good for transactional writes and queries because they require to join every column in order to return a whole record. This takes time and resources. Now we can see how to implement a columnar database. In the case of SAP, Sybase IQ supports SQL. As we can see on the following code and diagram, where we can create tables from multidimensional model for OLAP and execute some OLAP queries. [MUSIC] As we can see, a columnar database is good for OLAP. We can use a columnar database to implement a data warehouse for analytical queries and obtain advantages on performance, compression, disk capacity, etc. [MUSIC] We also have learned how to implement a columnar database. Next session, we will understand document databases. See you next week. [MUSIC]