Login

SkyFoundry

SkySpark crystal ballSkySpark

SkySpark by SkyFoundry is a software suite designed to transform the data from smart devices into business solutions. SkySpark may be used to centralize how you manage and store all your smart device data including:

Our unique tag oriented database lets you "tag" your data, making it easy to slice and dice for visualization and analytics.

Once you have your data in SkySpark, apply our visualization technology to present the information as web pages. SkySpark includes a rich library of widgets such as tables and charts. Building polished, professional looking web pages for your data is a snap.

The real secret to SkySpark's power is Axon - a simple, but powerful programming language designed to query and transform your data. Like SQL you can use Axon to perform basic queries against the tag database looking for data with specific tags or tag values. Unlike SQL, Axon allows you to perform sophisticated data transformations:

SkySpark makes it easy to find the data that matters most to your business.

blueprintArchitecture

SkySpark is composed of three different subsystems:

The following diagram illustrates how the major subsystems fit together:

SkySpark Architecture

The SkySpark server is bundled with a web server and interacts with external subsystems using a simple HTTP REST API. External systems can treat SkySpark as just a normal database and push/pull information using the REST API. Fresco itself is run completely in the browser using HTML5 and JavaScript, it communicates with the server using the same REST API. SkySpark also includes a suite of drives to integrate with existing data sources using oBIX or a RDBMS.

databaseFolio

Folio is a non-relational database in the mold of Document Oriented Databases. Data is structured using a three level hierarchy:

Folio is a schema-less database. Projects are structured as a flat list of recs - no tables, schema, or tree structure is used. Instead records are organized strictly by a set of free-form tags. Here is a simple example of a rec which models a space temperature sensor:

id: 1316badd-623fd82d
point
spaceTemp
val: 76.2
unit: "fahrenheit"
room: "204" 

The first thing to note is that all records have a special tag called id which identifies the record using a UUID. This record has the marker tags point and spaceTemp. Marker tags don't have a value, but are used to make it easy to retrieve data. For example this record will show up in any "point" or "spaceTemp" query. The val and unit tags define the current real-time value of the temperature sensor. We can also define arbitrary meta-data tags such as room which might be useful for visualization or analytics.

Tags may be formally defined or ad-hoc. Formal tags are defined themselves as a record. SkySpark ships with a set of predefined tag libraries. For example the std project provides standard definitions for tags like spaceTemp. You can define your own custom tag libraries for use in your own projects.

chartFresco

Fresco is a visualization framework built using the Fantom Widget Toolkit. It runs in a web browser as a set of HTML, CSS, and JavaScript components. It leverages HTML5 features like the Canvas to implement charting and other graphical visualizations.

You can build your own custom Fresco pages using our widget library. But in many cases web pages can be automatically generated by how you have tagged your data in Folio. For example data tagged with the "geoLon" and "geoLat" tags is automatically visualized with a map.

Because Fresco is built with standard web technology, it is easy to integrate into existing web sites as part of your solution. Or in some cases Fresco may only be used to administer the SkySpark server, and an existing web site might simply make calls to SkySpark as just a specialized database.

gearAxon

Axon is a programming language designed specifically to query the Folio tag database and create data transformations which can be used for business logic rules or data mining. Axon is a dynamically typed, functional language with an extremely simple syntax structure.

Here are some basic examples which provide a feel for the language:

// query all records with the spaceTemp tag
readAll(spaceTemp)

// shortcut for above
spaceTemp

// query all the spaceTemp points, and get historical data for last 7 days
readAll(spaceTemp).hisQuery(pastWeek)

// rollup on spaceTemp to get daily max value for last 30 days
readAll(spaceTemp).hisQuery(pastMonth).hisRollup(max, 1day)

Axon makes it a piece of cake to string together functions much like the Unix pipe operator. You can use these pipes to perform sophisticated data transformations such as creating baselines for electrical consumption against energy usage, weather patterns, and equipment in a given facility.

You can save your functions away as records in a Folio project to build up libraries of reusable functions. Functions which perform business logic can be scheduled to run periodically such as every night. Or you can configure your functions to trigger off a real-time event such as a tag value change.

userDemo

SkySpark by SkyFoundry is a software suite which turns data from the Internet of Things into business solutions. To summarize how it works:

If you would like learn more about SkySpark and schedule an online demonstration please contact us!