Provisa / Sources

Fifty-three sources, and one of them is a secret weapon.

Fifty-two of them connect to a system you already know you have. The fifty-third is a crawler, and it tends to find the half of your estate nobody put on the inventory.

The file crawler

It is one source type, and the only one where you register a location rather than a system. Point it at a folder, a bucket, an FTP or SFTP host, or a SharePoint site and it walks the tree recursively, looking for two things: database files, and files with tabular data embedded in them. What it finds gets cataloged as an available table; registering it is still your call, the same as for any other source.

Which is a wider net than it sounds. Not just CSV and Parquet — Excel workbooks, and even Word, PowerPoint, HTML, XML, and Markdown documents, each converted to tables on the way in.

Where it crawls

  • Local & network folders
  • S3
  • SharePoint
  • HDFS
  • HTTP(S)
  • FTP · FTPS
  • SFTP
  • Iceberg

What it reads directly

  • CSV
  • TSV
  • .gz of either
  • JSON
  • Parquet
  • Arrow
  • YAML
  • SQLite · .db

What it converts to tables

  • Excel · .xlsx · .xls
  • Word · .docx
  • PowerPoint · .pptx
  • HTML
  • XML
  • Markdown

The reason it earns the description: the data that runs a department is very often sitting in a share drive, and it has never been anywhere near a governance program. Discovery is the part that used to be a project — after that, what you register lands under the same row-level security, masking, and relationship rules as the databases.

Systems that aren't databases

Connect SharePoint and its lists enumerate as schemas you can query. Run a Splunk search and the results come back as a table you can JOIN to your business data. A live Google Sheet is just another table — and so is a REST, GraphQL, gRPC, WebSocket, or RSS endpoint, registered as a governed table that federated joins reach transparently.

Shaping is a declaration, not a program

Non-relational data is where pipelines are born: the response is nested, the document has an array inside it, the location is a pile of files, so somebody writes code to flatten it and a procedure enters the path permanently. We start from the premise that the variety is smaller than it looks — a modest set of structure types, each with a short declarative rule for projecting it into rows and columns. The path to the collection and the fields to lift from it. A sampled document schema, with the steward's explicit types overriding what was inferred. A crawled location that catalogs what it finds. Once it's flat, everything after it is SQL, and SQL is a thing a machine can read back.

Why that removes the downstream pain

Graph and RDF are first-class

Neo4j and SPARQL sources are not adapters bolted onto a relational core. They participate in the same federated model, the same relationship registry, and the same governance layers — which is what makes a Cypher traversal across a relational source and a graph source a single legal query rather than two queries and a join in application code.

The 53

Every registrable source type, grouped by what it is. Each one registers the same way and lands under the same governance; the per-type connection fields are in the source reference.

Relational

  • PostgreSQL
  • MySQL
  • MariaDB
  • SingleStore
  • SQL Server
  • Oracle
  • Firebird
  • SQLite
  • CockroachDB
  • YugabyteDB
  • Greenplum
  • TiDB

Warehouses & lakehouses

  • Snowflake
  • BigQuery
  • Databricks
  • Microsoft Fabric
  • Synapse
  • Redshift
  • Trino
  • Delta Lake
  • Iceberg
  • Hudi
  • Hive
  • Hive on S3

Analytics & OLAP

  • ClickHouse
  • DuckDB
  • Elasticsearch
  • Apache Pinot
  • Apache Druid
  • Exasol

Graph & semantic

  • Neo4j
  • SPARQL / RDF

NoSQL, cache & streaming

  • MongoDB
  • Cassandra
  • Redis
  • Kafka
  • WebSocket
  • RSS

Files & documents

  • CSV
  • Parquet
  • Google Sheets
  • SharePoint
  • File crawler

APIs & remote schemas

  • REST / OpenAPI
  • GraphQL remote
  • gRPC remote
  • Airport (DuckDB)

Observability & other

  • Prometheus
  • Splunk
  • Soda
  • Great Expectations
  • Ingest
  • Government data

Observability as data

Traces, metrics, and logs are collected via OpenTelemetry, compacted into Iceberg, and registered as queryable tables — so the audit trail is a source like any other, joinable to the business data it describes.