From legacy on-premise ERP/POS databases to AI over dashboards, on AWS.
ETL (Vansync) → DWH (Amazon Aurora MySQL) → BI (Amazon Quick Sight) → AI (BI Agent for QuickSight with Claude)
A program that pulls legacy RDBMS data directly at the source (on-premise) and lands it in Amazon Aurora MySQL. If your system has an API, we pull the data from the API into the same DWH.
- Database engines: FirebirdSQL, dBase (DBF), Visual FoxPro, Sybase SQL Anywhere, Microsoft SQL Server, MySQL, MariaDB. If you need a different DB engine, just contact us.
- Just a few examples of the ERP/POS systems we have connected to: Volante POS, POSitouch, Microsip, Aspel SAE, Intelisis, Soft Restaurant, Maxirest, Softland, and so on.
- Specify which data to sync and how often: in a simple JSON file you specify which queries to run against the source database and, with the Task Scheduler, how often to refresh.
- Incremental loads: set several date fields to watch and each run extracts exactly the time window you need, so large tables never need a full reload.
- Google Sheets as one more source: built with Apps Script, a dedicated ETL that validates data in Google Sheets and copies it automatically to Amazon Aurora MySQL. Use cases: budgets and sales targets, catalog groupings, and any external information that does not exist in the ERP/POS.
- Simple yet powerful data warehouse: we use Aurora MySQL as the best cost-benefit option to land and transform the data with standard SQL. MySQL is by far the most used database out there, simple to run on RDS, and the Aurora version has native integration with S3 and Lambda.
- Upserts by primary key: rows with a matching primary key are updated and the rest are inserted, so re-running a sync never duplicates data.
- Schema managed for you: tables are created or altered to match the source schema on every sync, and columns are never dropped.
- Transformation layer: apply business rules before and after data lands in your DB with stored procedures, invoked automatically by the backend on every sync.
- Widest compatibility: the MySQL protocol and its standard JDBC/ODBC drivers are supported natively by virtually every BI tool, integration platform and programming language.
- SPICE in-memory engine: dashboards query SPICE, not the DWH, so filters respond almost instantly. Each dataset refreshes automatically right after every sync.
- Decoupled DWH: because dashboards read from SPICE, the Aurora server can be shut down outside the sync window, or taken down for maintenance, and every dashboard stays up.
- Datasets on views, not physical tables: rename a customer, product line or warehouse in the catalog and the whole history updates on the next refresh. Databases synced separately are consolidated with views.
- Analysis vs. Dashboard: build in the analysis without touching production. Publish when ready, as a new dashboard (a QA version, for example) or replacing the current one, and choose which sheets to publish.
- Assets as code: data sources, datasets, analyses and dashboards can be backed up, versioned in Git and deployed to another AWS account through the QuickSight API and CLI.
- Row-level security: driven by a CSV or a MySQL table, for example a user-to-store mapping maintained in Google Sheets and synced to MySQL.
- QuickSight Open Source: our Lambda automations over the QuickSight API: on-demand SPICE refresh, duplicate datasets and analyses, create assets from JSON objects in S3, asset inventory, asset backup to S3, and asset deletion.
- Try it: public Restaurants demo (read-only credentials on the page).
Claude on top of your QuickSight dashboards: ask in plain language, get the answer from the dashboards you already use. Open source components:
scraper-quicksight-core: Node.js / TypeScript core that automates browser interaction with QuickSight: navigate dashboards and sheets, read and set filter controls, extract data from visuals, export to CSV/PDF. MPL-2.0.scraper-quicksight-browser: the Playwright browser layer used by the core. MPL-2.0.quicksight-knowledge-creator: a Claude skill that builds the dashboard map from the dashboard definition JSON exported from QuickSight.