What is tap?

In a nutshell, tap makes it simple to stand up APIs from data files.

Here's what you need to do to get a performant, documented and secured HTTPS API:

  1. Upload your data: Start with a spreadsheet or any other data file (see supported file formats).
  2. Shape it how you need it: Optionally, transform your data to make it perfect for your use case. Make use of the full power of SQL (the language of data), to:
    • Choose which columns to include (great for hiding sensitive information).
    • Clean up your data (remove invalid entries, fix inconsistent formatting, etc.).
    • Combine it with other datasets (for example, add location coordinates to address data).
  3. Make it available: Set up a unique web address where other systems can access your data, with whatever search and filtering options you need.

That's it! Your data is ready for other systems to connect to with all the essentials built in. No complex coding and no server setup.

How it works

tap architecture diagram

tap is built on top of Apache DataFusion. This is the query engine for our in-memory database. With this, we can avoid ever having to persist your data (note: bring your own data lake is a paid feature), guaranteeing no data leaks, while still having blazing fast performance. All we have to store is metadata, for which we use PostgreSQL.

The secret sauce is generating optimised Parquet snapshots for the desired access patterns.

What to use it for

We think it's currently best for when you need or want to provide row level access or filtering from large, slow changing, read-only datasets through an API. Think open data, reference files, etc.

  • Large, because small datasets can just be handled in code.
  • Slow changing (by which we mean update at most every few days), as while versioning is a feature of tap, you don't want to be uploading a new dataset every few hours.
  • Read-only, because tap does not support write operations.

In particular we think you'll make best use of it if:

Next

Go through the tutorials or learn the key concepts.

Looks good? Missing something you need? We need your feedback.

Let us know if you need to get your data and applications talking, or you want to save money on complex, inefficient data platforms and integration tooling. We'd love to discuss and see how tap could help.

tap is built by DigitalSociety – we build bespoke digital tools for complex requirements in web applications, data engineering and cloud.