Vertica Blog

Vertica Blog

Best Practices

Quick Tip on a blue enter key on a keyboard

Setting Session Authorization to Troubleshoot

There are possible scenarios in which a dbadmin would want to run queries as another user to troubleshoot or test. You can use SET SESSION AUTHORIZATION to impersonate another user and run queries. Let's understand this with an example. Here we create a user named test, resource pool named userpool, and make this a default...

UNNEST vs EXPLODE Functions

Vertica provides two functions, UNNEST and EXPLODE to expand arrays into one or more rows. These functions offer the same functionality with subtle differences in syntax and output. Let's understand with a simple example. We have 3 array columns in the table. Let us expand 1 array column for a particular order key. Explode provides...

Checklist for Inconsistent Execution Time of Same Query in Eon Mode

In Eon Mode, when a query is executed and if the ROS containers associated to the tables in the query are not present in depot, it will fetch results from the communal storage bucket. In the next immediate run, the query should provide results to the user from the files present in the depot. However,...

Vertica’s Server-Based Replication

Empowering Seamless Data Copying in Vertica Eon Mode Overview In our latest installment of exploring the untapped potential of Vertica, we delve into the exciting new feature introduced in version 23.3 - Server-Based Replication. This cutting-edge functionality allows users to efficiently copy data from one Eon Mode database to another, revolutionizing the way data replication...
Quick Tip on a blue enter key on a keyboard

Using Fallthrough Authentication

Prior to Vertica 12.0.x, if a user failed to log in with a some authentication method, they could not attempt to log in again with some other method. For example, if a user used failed to log in with hash authentication, they could not attempt to log in with LDAP in the same connection attempt....

How To Filter a Behavioral Pattern in a Time Series

Behavioral patterns in time series are something that many analysts are keen to find in time series. A clickstream analyst wants to find the series of clicks that happened between coming to the website, browsing one or more articles in the web site, and finally filling the basket and checking out; a financial analyst wants...
A key with a key hole and Unlock Vertica Potential in text at the bottom

How to Use Database Designer to Optimize Vertica Physical Data Model in Six Steps

Vertica provides out-of-the-box a powerful tool to tune its Physical Data Model: Database Designer (DBD from now on). You can run DBD using the Management Console GUI but in this article we will focus on what they call “programmatic interface” (read... plain SQL) and – as practical examples are often more enlightening than “theoretical” documentation...

Creating Iceberg External Tables in Vertica

From Vertica 12.0.4 onwards, we support creating external tables with parquet files in Apache Iceberg Table format. Iceberg is a high-performance table format which uses advanced filtering techniques and provides better performance by avoiding file listing. The striking feature of the external Iceberg tables is that there is no need to specify columns when defining...
Tips in bright neon red letters on a dark background with touchscreens.

Default Custom User Resource Pool

In Vertica versions 12.0.4 and later, you can set a default user resource pool for all users instead of defaulting users to a general pool, using the DefaultResourcePoolForUsers configuration parameter. How to set it? As a dbadmin user, create a user resource pool. The pool name can be used to configure the DefaultResourcePoolForUsers option. In...

Load Balancing on Elastic Kubernetes Clusters

Your long-running sessions could fail after you deployed Vertica on Elastic Kubernetes Cluster (EKS) with Load Balancer as the service type. When the load balancer type is not specified in yaml, by default, EKS generates a classic load balancer with a default connection idle timeout of 60 seconds. The aws-load-balancer-connection-idle-timeout can be set up to...
Helpful Tips in blue text with magnifying glass

Restrict Modifying Table Rows (UPDATE/DELETE) Irrespective of User Privileges

Do you have a table with critical information such as SIEM events or credit card transactions? Do you want to be able to block user access to UPDATE/DELETE rows in those tables? From version 12.0.0, you can do this by setting the tables as IMMUTABLE. This means you can only insert data and not modify...
Tips in bright neon red letters on a dark background with touchscreens.

High Availability for a Vertica in Eon Mode Database with Read-Only Mode

When Vertica is deployed in Eon Mode, there are two major requirements for high availability: maintaining quorum and shard coverage. If either of them is lost, the whole cluster goes down. Before going into details, let us understand what quorum and shard coverage mean. Quorum: In Eon Mode, more than half of the primary nodes...