-4

I have a vertica database that using projections. I read vertica docs but docs generally talk about how to issue;

https://my.vertica.com/docs/7.2.x/HTML/index.htm#Authoring/SQLReferenceManual/Statements/CREATEPROJECTION.htm?Highlight=projection

https://my.vertica.com/docs/7.2.x/HTML/index.htm#Authoring/SQLReferenceManual/SystemTables/CATALOG/PROJECTIONS.htm?Highlight=projection

I need to know logic of the projections, why are they ? Just for performance ?

mr.wr
  • 32
  • 5

1 Answers1

4

Projections in Vertica has 3 main usage .

1) Store the data - in vertica when you create table , in the background vertica will create for your data super projection , super projection is the main storage for your data , it include all your columns and has some defaulted which you can play with.

2) Performances - projection is like materialized view of your data ( if you have some Oracle background it will be more easy to understend it ) , you can create them on subset columns of your main tables with different sort order and different segmentation , its very imported in MPP database to have the right design of projection in order to get good performances .

3) Use for HA , for cluster database , in some cases you want to split the data among different nodes on the cluster , such that each node will have partial data set . Using that method you want to have zero downtime when one of the nodes is crash , projection help on that by having part of other nodes data in your node ( vertica manage it automatically , you can look on the documentation for KSAFE )

I hope you will find it useful Thanks

elirevach
  • 404
  • 2
  • 7