You are on page 1of 25

Vertica Advisor: Evaluate & Improve

the Health of Your Vertica Cluster


Shrirang Kamat
Johnny Him
Narendra Prabhu
Vertica
Agenda

▪ Vertica Platform for Analytics

▪ Vertica Scrutinize Tool

▪ Vertica Advisor Report

▪ Demo

2
GRASP Analytics
Scrutinize (tar/zip)

All data is loaded in a Vertica database, and internally used to:


– Compare current configuration, usage, and behavior with
historical snapshots to diagnose and resolve issues
Grasp
– Track feature adoption patterns and product areas that need
enhancements
– Make design decisions when implementing new features

Errors and Events Resource Pools


Node Info

Vertica Configs System configs


Vertica Advisor Report

• Evaluate the health of your Vertica cluster, then recommend best


practices to improve system performance

• Report is generated from the data collected by Scrutinize (a diagnostic


script)

4
How This is Achieved

Customer interested in
Scrutinize is downloaded Advisor report gets Report is mailed
health check or has an Collect Scrutinize Upload to S3 bucket
and processed created to customer.
issue
Scrutinize
What is Scrutinize?

▪ When trouble does occur, relevant info can come from a


large number of sources:
- Logs, config. parameters, system settings…
▪ If you’re not sure what went wrong, it isn’t clear which of
these many information sources will be useful
▪ Scrutinize -- a tool that can help collect all the diagnostic
information required for analysis and making
recommendations Scrutinize
Load
▪ Scrutinize does not touch or collect user data!
▪ Work-in-progress – Make Scrutinize collection lightweight Analyze
and efficient
Recommend

7
Information Collected by Scrutinize

• Host OS information
o Mostly OS commands or config files
o uname, uptime, ifconfig, sysctl.conf …
• Log files
o vertica.log, admintools.log, dbLog …
o Rotated logs are also collected
• Vertica-specific Configuration files
o vertica.conf, spread.conf, the entire /opt/vertica/conf directory
Information Collected by Scrutinize (continued)

• DC Tables
o Configuration Changes, Startups, Node State
• System Tables
o vs.resource_pools
• Catalog Objects
o LGE, GlobalSettings
• Database Design
o select export_catalog(‘design.sql’, ‘design’)
How Do I run Scrutinize?

• Usage:
– /opt/vertica/bin/scrutinize --by-minute yes -U < enter username here> -P '<enter
password here>' --tmpdir=<TMP_DIR> -m '<short reason for collection>’
• Use –tmpdir option to specify a directory that has a minimum of 5GB free space.
tmpdir cannot be a NFS or EFS share. NFS and EFS shares are not suited for rapid and
concurrent file creation and deletion due to nfs file metadata cache.
• Collect scrutinize from a node in UP state and avoid passing the arguments; -v, --vsql-
off and --diagnostics
• Pass -- exclude-tasks VerticaLog , if collecting scrutinize for health check purpose
Scrutinize Upload S3 Bucket
• It is write-only S3 bucket for customers.
• Only accepts Scrutinize files and file is Immediately downloaded and removed
• File name format: VerticaScrutinize.20190815230001.tar.gz [Please do not edit the file name S3
generated by scrutinize.]
• Curl command:
– curl --request PUT --upload-file VerticaScrutinize.20190815230001.tar.gz -H 'x-amz-acl:
bucket-owner-full-control' -H "x-amz-meta-email: YOUR_EMAIL" -H "x-amz-meta-account:
YOUR_ACCOUNT_NAME" -H "x-amz-meta-caseid: CASE_ID" https://vertica-scrutinize-
upload.s3.amazonaws.com/incoming/

• AWS CLI:
– aws s3 cp ./VerticaScrutinize.20190911192014.tar s3://vertica-scrutinize-upload/incoming/ -
-acl bucket-owner-full-control --metadata
"email=YOUR_EMAIL,account=YOUR_ACCOUNT_NAME,caseid=CASE_ID"
Scrutinize Upload SFTP/FTP

• Can upload tar file to SFTP site sftp.vertica.com

• Support FTP site using Support Portal

• Support engineer will download Scrutinize file to an internal cluster


Vertica Advisor
What is a VAdvisor Report?

• Lightweight HTML document

• One place to find all information about your Vertica DB

• Health check report

• Best practices guide and training material for new


Vertica users

14
System Configuration

• System specifications Kernel Version NIC buffer

OS Memory OS send buffer Max. conn


o Confirm homogeneity between nodes
Processor TCP/UDP buffer

• Kernel versions and configuration

• Disk and network configuration Eon Mode Depot Machine check events

Disk Space IO Scheduler Program errors Firmware errors


• dmesg errors
Page settings Hardware error

15
Vertica Configuration and Catalog

• Vertica version S Schemas


N Nodes T Tables
M Control Nodes P Projections
• Vertica and Spread configurations K Subnets R ROS's per Node
M Cat. Memory Size limits
10.1.1

• Catalog size and health

• Table and Projection design

• K-Safety and node dependency K=1 Tt Tables with too many projs
Max. Dependency Tu Tables with unused projs
per node = 3
Ts Tables with skew

16
Resource Pools
General Pool

• Resource Pools set up with Query Budgets 55%

• Analyzing workload and resource utilization Query Pool


Sys Query Pool
by pool 35%
45%

• Resource Queues and Cascade history ETL Pool

85%

Recovery Pool

65%

17
Database Operation and Usage
System Utilization Metrics

• Utilization Memory
Usage
Network
Usage
o Memory
CPU Disk
o CPU Usage Usage

o Network
o Disk
• Workload history by query type Best Practices Analyze Recommendations

• Response time history


• Abnormal and resource hogging Workload/ Query Metrics
queries Workload by Abnormal
Query Type Queries

Resource
Response
Intensive
Time
Queries

18
Errors and Events
Insert > 20ms

• Optimizer, Execution Engine

• Slow and Heartbeat Events

• Vertica Errors and Backtraces

• Spread Retransmits and UDP errors

19
Vertica Advisor Home Page

20
Example Section Card

21
How to get VAdvisor Report
• Collect and upload scrutinize to S3 bucket with valid email S3
address

• Request Support Engineer if scrutinize was recently


uploaded.

• Send suggestions and improvement ideas to


shrirang.kamat@microfocus.com

22
Future Plans

• Compare and score health of Vertica DB over two points

• Perform predictive analysis with a ML model to determine common failure points

23
Demo
Thank you

Join the Vertica Academy: academy.vertica.com

You might also like