Database
What is a database?
A database stores data in kdb Insights Enterprise. Available databases are listed under Databases of the Overview home page. If not available, create a database, insights-demo, to store your data.
Every kdb Insights Enterprise database has a schema to transform data to a format compatible with a kdb+ database, and a stream to process event data like real-time prices.
I want to learn more about databases.
I want to learn more about schemas.
Build a database
-
From the Overview page, choose Build a Database:

Select a database to activate, then deploy. -
Give a Database Name; guided walkthrough uses the database name
insights-demo. - Click Next.
-
Define schema; for small data sets, continue with the Column Input. However, a JSON Code View option is available for adding large schema tables.
-
Create four tables for each of
weather,subway,health, andcrimedatasets; re-naming the initialtable1, and adding new tables with [+]. Column descriptions are optional and can be left blank here.column type timestamp timestamp sensor symbol airtemp float name symbol borough symbol longitude float latitude float color symbol column type trip_id symbol arrival_time timestamp stop_id symbol stop_sequence short stop_name symbol stop_lat float stop_lon float route_id short trip_headsign symbol direction_id symbol route_short_name symbol route_long_name symbol route_desc string route_type short route_url symbol route_color symbol column type name string lat float long float neighborhood string airquality float trafficcongestion float bikeacccnt integer caracccnt integer timestamp timestamp column type event_id symbol incident_time time nypd_precinct symbol borough symbol patrol_borough symbol call_x_geo long call_y_geo long radio_code symbol description string crime_in_progress string call_timestamp timestamp dispatch_timestamp timestamp arrival_timestamp timestamp closing_timestamp timestamp latitude float longitude float -
Review the schema partitions; these are set automatically to the
timestampcolumn, but in the case of multipletimestampcolumns select one.setting value Type partitioned Partition Column timestamp setting value Type partitioned Partition Column arrival_time setting value Type partitioned Partition Column timestamp setting value Type partitioned Partition Column arrival_timestamp -
Remove
On-Disk Attributeson all tables; by default, these are set on the first column.Expand the first column by clicking the down arrow, set both
On-Disk Attributesto None.setting value On-Disk Attribute (Ordinal Partitioning) None On-Disk Attribute (Temporal Partitioning) None 
Update theOn-Disk Attributeto set to None. -
Click Next
-
Review your database.

Review the starter database with schemas.
- Click
in the top-right -
Paste the JSON into the code editor:
insights-demo schema
JSON code for the four walkthrough examples.
[ { "name": "weather", "type": "partitioned", "primaryKeys": [], "prtnCol": "timestamp", "sortColsDisk": [], "sortColsMem": [], "sortColsOrd": [], "columns": [ { "type": "timestamp", "name": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "sensor", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "airtemp", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "name", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "borough", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "longitude", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "latitude", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "color", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" } ] }, { "columns": [ { "type": "symbol", "name": "trip_id", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "arrival_time", "type": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "stop_id", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "stop_sequence", "type": "long", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "stop_name", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "stop_lat", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "stop_lon", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "route_id", "type": "long", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "trip_headsign", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "direction_id", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "route_short_name", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "route_long_name", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "route_desc", "type": "string", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "route_type", "type": "long", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "route_url", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "route_color", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" } ], "primaryKeys": [], "type": "partitioned", "prtnCol": "arrival_time", "name": "subway", "sortColsDisk": [], "sortColsMem": [], "sortColsOrd": [] }, { "columns": [ { "type": "string", "name": "name", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "lat", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "long", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "neighborhood", "type": "string", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "airquality", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "trafficcongestion", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "bikeacccnt", "type": "int", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "caracccnt", "type": "int", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "timestamp", "type": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" } ], "primaryKeys": [], "type": "partitioned", "prtnCol": "timestamp", "name": "health", "sortColsDisk": [], "sortColsMem": [], "sortColsOrd": [] }, { "columns": [ { "type": "symbol", "name": "event_id", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "incident_time", "type": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "nypd_precinct", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "borough", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "patrol_borough", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "call_x_geo", "type": "long", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "call_y_geo", "type": "long", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "radio_code", "type": "symbol", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "description", "type": "string", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "crime_in_progress", "type": "string", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "call_timestamp", "type": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "dispatch_timestamp", "type": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "arrival_timestamp", "type": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "closing_timestamp", "type": "timestamp", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "latitude", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" }, { "name": "longitude", "type": "float", "primaryKey": false, "attrMem": "", "attrOrd": "", "attrDisk": "" } ], "primaryKeys": [], "type": "partitioned", "prtnCol": "arrival_timestamp", "name": "crime", "sortColsDisk": [], "sortColsMem": [], "sortColsOrd": [] } ] -
Applythe JSON -
Click
Nextto review your database.
Review the starter database with schemas.
-
-
Savethe database

Saved database at the end of the wizard process.
- Go to Databases in the left hand menu and deploy the database.
I want to learn more about databases.
Deploy a database
Data is stored in an active database. Select the database created previously. Deploy the database to activate it, so it can receive data.

Select a database to activate, then deploy.
Activating a database starts a series of processes to prepare the database.

Deploying a database runs a series of processes.
| item | description |
|---|---|
| Mount | When a database is mounted, it is available for use. Mount(s) can be an hdb, idb or rdb. |
| Storage | Database is ready to store data. |
| Data Access | Data stored on the database is ready to be queried. |
| Stream | Database is ready to receive event data; e.g. real-time prices. |
| Pipeline | Data pipelines (if any) associated with the database are now active. |
| Query Environment | Data is ready to be queried. |
Database warnings
Once the database is active you will see some warnings in the Issues pane of the Database Overview page, these are expected and can be ignored.
Active databases
Active databases will show a green circle with a white tick. Databases receive and store data when active.

An Active database.
Add data to database
Next, add data to the active database.