Skip to content

Shotover

L7 data layer proxy

Get started

What is Shotover?

Shotover is a high performance, configurable and extensible L7 data-layer proxy for controlling, managing and modifying the flow of database requests in transit. It can be used to solve many different operational and interoperability challenges by transparently intercepting and transforming queries. It is transparent in the sense that it can be plugged into your architecture without requiring application change.

What problems does Shotover solve?

More broadly, Shotover is designed to be used for a very wide ranging class of problems where it is useful to transparently intercept a database call and redirect it. This allows you to change the behaviour of running applications at the infrastructure level without change to the application code itself. Some examples where we envisage Shotover could be deployed include:

Moving very large or very hot tenants/customers/keys to a separate data store by intercepting and redirecting queries for those particular keys
Dual writing and/or query translation to allow the underlying storage technology to be changed
Adding auditing, encryption or other security measures
As an alternative to Change Data Capture technology to send writes to a message stream such as Apache Kafka

Name

Shotover refers to the Shotover (Kimi-ākau) river in Otago, New Zealand - close to Queenstown and eventually flowing into Lake Wakatipu via the Kawarau River, it's famous for white water rafting, bungy-jumping, fast rapids and jet boating.