DSA brings together entities like devices, services, and applications into one data model that updates in real time. By representing these entities as one system, DSA makes possible or simplifies various tasks, such as analytics, inter-device communication, distributed computing, and application development.
You can read more about DSA on the DSA home page.
DSA represents each of the entities in the system as one of the following types:
A downstream entity requests permission, and an upstream entity grants or refuses that permission. A broker is always upstream from its DSLinks. A broker can be either upstream or downstream from another broker. Upstream and downstream connections are important concepts to understand when you configure permissions for multiple servers or multiple brokers on one server.
When you connect two DSA installations, one is an upstream broker and the other is a downstream broker.
For an example, see this video.
To connect two DSA installations:
http://localhost:8081/conn
.To remove the downstream broker from quarantine:
DSA supports the following data types:
[2,3,5,7,11]
. An example array of map values is [{"hello":"world","number":1},{"hello":"world"}]
.{"hello":"world","primes":[2,3,5,7,11]}
.\u001Bytes:
and ends with a byte array encoded in base 64.To install DSA on Mac OS X, Microsoft Windows, Linux, or other platforms, follow the steps in the relevant video on this page, depending on your platform.
If you are installing DSA on a Raspberry Pi, BeagleBone Black, or DGBox, you can also follow the steps in this blog post and video.
If you install DSA with DG Solution Builder, and do not have a DG Solution Builder license, follow the steps to request a license when you are prompted to do so.
The following image shows the Data panel and Metrics panel in DG Solution Builder when DSA is used.
1 | data node | 2 | downstream node | 3 | sys node |
4 | sys > links node | 5 | metrics at the currently selected node (downstream > System) |
To store data on the DSA Server:
Choose Add > Node or Add > Value.
The Value option lets you specify a data type.
Without moving the mouse pointer away from the pop-up menu, enter a node name, and optionally choose a data type.
A top-level data node is created.
To set a value:
To invoke an action on a metric:
In the Metrics panel, right-click the metric on which you want to invoke an action.
A pop-up menu of available data actions is displayed.
To install a DSLink:
Without moving the mouse pointer away from the pop-up window, click Invoke.
When the link has been successfully installed, a "Success" message appears.
To start the link, right-click the link under sys > links > [link name], and choose Start Link.
When the link has started successfully, it appears under downstream > [link name].
To update a DSLink:
DSA installations feature a dataflow DSLink, also referred to as remote dataflow. This tool is similar to DGLux5 dataflow, described here, also known as local dataflow.
Differences between the two are:
To create a remote dataflow model:
Block property values in a remote dataflow model appear as metrics in the Metrics panel. They can be used like any other metric. The following image demonstrates an example of remote dataflow metrics.
See also: Tokens.
When quarantine is enabled on a broker, any downstream broker or link without an authorized token is held in quarantine. The system can read, subscribe to, and command nodes that are in quarantine, but a node that is in quarantine cannot access other nodes in the system.
Whether quarantine is enabled is specified in dsa/dglux-server/server.json
.
To remove a node from quarantine, you can authorize or deauthorize the node. An authorized node is granted access as the permission group that you specify. A deauthorized node is refused access and removed from the system. You can also deauthorize any downstream broker or node that has previously been authorized.
When quarantine is disabled on a broker, any link can connect to the broker without approval.
To authorize a broker or link:
Right-click sys > quarantine > Authorize.
A list of quarantined nodes appears.
To deauthorize a broker or link:
Right-click sys > quarantine > Deauthorize.
A list of quarantined nodes appears.
In DSA, you assign permission groups to users. Permission groups are defined within dsa/dglux-server/server.json
. Information about permission groups can be found here. Any user with "superuser" enabled has the maximum permission level and does not need a permission group defined.
More information about DSA permissions can be found here.
To create a new user:
To edit a username:
To edit a user password:
To edit a user's permission group, landing page, or other user properties:
To delete a user:
Using This Wiki