Generate SQL and notebooks

Supported database targets

Every schema targets one SQL dialect. The dialect decides what Kenseme generates: SQL files with stored procedures for six targets, and PySpark notebooks for Databricks and Fabric Lakehouse.

The eight targets

The first column is the name as it appears in the Default Database Dialect dropdown.

Dropdown name Platform Whole-schema output Load logic Notes
Sql Server Microsoft SQL Server and Azure SQL .sql T-SQL stored procedures The most complete target.
Fabric Warehouse Microsoft Fabric Warehouse .sql T-SQL stored procedures No indexes or column defaults; primary keys are NOT ENFORCED.
Postgres PostgreSQL .sql Procedures Native enum types.
MySql MySQL .sql Procedures No MERGE.
Redshift Amazon Redshift .sql Procedures No indexes.
Snowflake Snowflake .sql Procedures No indexes.
Databricks Databricks (Delta Lake) .ipynb Python functions in a notebook Recalc views become materialized views.
Fabric Lakehouse Microsoft Fabric Lakehouse (Delta Lake) .ipynb Python functions in a notebook No primary or foreign keys; no stored procedures.

For the detail behind each note, see Dialect-specific output notes. For what the notebooks contain, see PySpark notebooks.

Choose a schema’s dialect

In the app: Data Model › Schemas › your schemaSettings tab › Default Database Dialect

  • You pick a dialect when you create a schema. You can change it later in Default Database Dialect on the Settings tab. The change saves straight away, and a toast confirms Default dialect updated to <dialect>.
  • The schema’s dialect badge shows next to its name on the schema page.
  • Changing the dialect doesn’t convert anything. Tables are generated from their column definitions in any dialect. Views, procedures, and functions need a script written in the new dialect, or they are skipped. The Create Version dialog warns you about objects with no script in the default dialect.
  • To produce a copy of a schema in another dialect, duplicate it into that dialect. See Create a schema.

Dialect support by feature

Feature Targets
Version scripts, migration scripts, table SQL All eight
Pipelines Generate for the destination schema’s dialect. Databricks and Fabric Lakehouse get Python load functions instead of procedures.
Star schema plans SQL Server, PostgreSQL, Databricks, Snowflake, Fabric Warehouse (chosen as the plan’s Target Platform)
Spark Schemas notebook Databricks and Fabric Lakehouse versions; any table through Spark Schema on its SQL tab
Save to Fabric Fabric Lakehouse

Fabric Warehouse and Fabric Lakehouse as connections

The eight dialects above are what a schema generates for. Fabric Warehouse and Fabric Lakehouse also work as saved database connections: you point Kenseme at a live Warehouse or Lakehouse in your own Microsoft Fabric tenant.

You don’t type a server address or connection string for these. Kenseme reads your tenant and lets you pick the workspace and item from a list. Once saved, the connection works like any other: you can import its structure into a schema or bind ontology entities to its tables and columns. See Fabric database connections.