Capabilities/Data
Database sync
Enterprise
MAIA's database sync takes tables from your own database and returns them inside your workspace, matched to parcels and refreshed every day.
What it answers#
Questions that need your records beside MAIA's: your customers, your sites, your jobs.
You ask
Which of our customers' portfolios have buildings we haven't served?
What you get#
Each table you choose becomes a table in your workspace. MAIA adds the parcel each row belongs to, so the agent can join your rows to everything else. The sync runs every day, and each sync replaces the table whole, so a project never reads a half-updated copy.
MAIA connects to four kinds of database:
- PostgreSQL
- MySQL
- Microsoft SQL Server
- Snowflake
Connect a database#
MAIA staff turn the feature on for your workspace. After that, a workspace admin sets it up. Other members see "Only workspace admins can connect a database."
- Open the account menu and choose Data connections, then Connect a database.
- Name the connection and pick the database type.
- Sign in on the form MAIA opens. The form belongs to MAIA's replication provider, which holds your login and runs the schedule. MAIA keeps only the provider's connection identifiers. When sign-in succeeds, MAIA lists the tables it can see.
- Choose the tables to sync. A table over 50,000 rows is skipped, and the connection reads Needs attention.
- Choose Save and start syncing. The first sync starts at once.
Note
Address matching works only inside the counties your workspace holds. A national customer list will mostly land "not on the map" until those counties are in your plan. Rows with a geometry or coordinates are placed anywhere.
How rows are placed#
MAIA detects where each table's rows are. It tries three things in order, and you map nothing by hand.
| Order | MAIA looks for | Rows are placed by |
|---|---|---|
| 1 | MAIA looks forA geometry column in WKT, WKB, or GeoJSON | Rows are placed byThe shape itself |
| 2 | MAIA looks forLatitude and longitude columns | Rows are placed byThe parcel the point falls in |
| 3 | MAIA looks forAn address column | Rows are placed byA match against MAIA's own address and parcel data |
An address counts as matched only when exactly one parcel fits. The connection card reports the share of rows Matched to parcels. A table with no location still syncs. It is available as a table and is marked "No location found; not on the map".
Schedule and controls#
The sync runs every day at 02:00 in the time zone of the admin who connected it. The schedule cannot be changed in the app. An admin can Sync now, Pause, Resume, and Disconnect from the connection card.
What the agent sees#
For each synced table, the agent is told the source, how the rows were placed, the last sync time, and the match rate. It is warned when a connection is failing. In a project, it is told to keep to the rows inside that project's county.
What disconnect deletes#
Disconnect removes the connection and the synced tables from your workspace at once. Any copy MAIA still holds is deleted afterward. MAIA keeps a record that the connection existed.
In the app and over MCP#
| Where | How |
|---|---|
| The web app | HowSet up and manage the connection under Data connections |
| MCP | HowConnections are managed in the web app. Once synced, the agent uses the tables in any request |
Related#
- File upload brings in a single file, with no connection to keep.