New features Dec 28th
Hey everyone! We are happy to announce the release of 4 new major features which we have been working on for a while.
Geo Data Support
From now on, Mona supports a new type of field - Geo_point. In some cases, geo points may reflect specific features in the model or even the runs of the models themselves. With this new field type, users can now send data of specific geographical points to Mona, segment the data on a grid, view the grid on a map, and use our internal ETL functions to create more fields derived from those geo_points.
We also already support Geoshape typed fields. Geoshape fields are fields constructed from GeoJSON data, which is an open standard format designed for representing simple geographical features.
In the near future, geo_points will also be supported in insight generation.
Geo Point formats
Mona now supports 4 different formats for Geo_points data:
{
“geo_point_1”: "69.16318550274269, 62.75081140117096"
“geo_point_2”: "POINT (69.16318550274269 62.75081140117096)"
“geo_point_3”: {
"lat" : 69.16318550274269,
"lon" : 62.75081140117096
}
“geo_point_4”: [
69.16318550274269,
62.75081140117096
]
}
Geo Point Field Configuration
To configure a Geo Point field on Mona, use the following field configuration:
{
"geo_point_1": {
"type": "geo_point",
"segmentations": {
"original": {
"type": "grid",
"zoom": 7,
"default": true
}
}
}
}
For now the only segmentation option for Geo Points is “grid”, with a zoom option from 0 to 29. Changing the zoom will affect the segmentation of a point in the data and in the investigations page map.
Field Build Functions
As part of this feature, new Field Build Functions were created for Geo Data:
- Distance: A directive for calculating the distance between two points. The input should be two given Geopoints.
- Area: A directive for calculating the area of a polygon.The input should be a polygon in the format of a GeoJson (json or WKT) or a TopoJson.
- Geo_intersect: A directive for calculating the intersection of two given polygons. The input should be GeoJson or TopoJson format or WKT (as a json or a json string) and the output will be returned as WKT string.
Timestamp Type Fields
Mona now supports setting time data as timestamp typed fields. In some cases, users might have a process where a record might have a number of relevant timestamps (e.g., when several models run in the same context but in different times, or when there’s a start and end time to a process and both are relevant), and users might need to view the data in the perspective of these different timestamps.
This new field type allows users more flexibility in determining according to which timestamp to view the data and generate insights. Until now, insights were generated only according to their default timestamp set by the export_timestamp key in each record, but from now, users can generate insights according to other timestamp fields as well.
Timestamp Field Configuration
To configure a timestamp field on Mona, use the following field configuration:
{
"timestamp_field_name": {
"type": "timestamp"
}
}
Investigations Page
Once a timestamp field has been configured, the Investigations page time controls (located on the top of the page), will show a new “Timestamp” control which allows users to change the timestamp on which to view the data. This can be changed ad hoc but the default will stay the record’s export_timestamp.
Insight Generation
All verses now allow a new parameter called “timestamp_field_name” which lets the user choose a timestamp field according to which insights will be generated. Once generated, insights that were created not based on the default timestamp will be marked with a clock icon and the name of the timestamp field on which they were generated.
Also, a new filter was added to the Insights page which allows users to filter insights shown according to their timestamp field.
Field Build Functions
The following are pre-existing Field Build Functions that take a timestamp as an input:
- day_of_week_from_timestamp_seconds
- hour_of_day_from_timestamp_seconds
- month_from_timestamp
- season_from_timestamp
- timestamp_delta_days