Skip to main content
Question

Access policy performance

  • June 27, 2019
  • 1 reply
  • 4 views

Bryan_H
Forum|alt.badge.img+2

Do we have customer using access policy to limit row and column access, and if so, was there a noticeable impact on performance? Do we have any metrics we can share?

1 reply

LenoyJ
Forum|alt.badge.img+1
  • Participating Frequently
  • July 10, 2019

This KB article shows how performance may be impacted and how you can test it: https://www.vertica.com/kb/Best-Practices-for-Creating-Access-Policies-on-Vertica/Content/BestPractices/Best-Practices-for-Creating-Access-Policies-on-Vertica.htm

Bascially, if row/column access policies are enabled, the query gets rewritten to have these policies included. So you can definitely try to improve performance by having projections that work for the rewritten queries.

For example, if you're masking SSN except the last 4 of the 8 digits, a SELECT ssn FROM customers; will be rewritten to something like SELECT substr(ssn, 6, 4) FROM customers;

Similarly for Row Policies, extra predicates get added to the query.