Working with Existing Data
Working with Existing data
Now that we have a web browser open into our example dataset, let’s explore its data. Later, we will put some of our own data into the database. But for now, let’s just browse what is there.
The Nexus web interface allows us to extract the data from the database. Every item placed in the database is assigned three things: an Item (which is the data file itself), a Dataset (the data it comes from) and a Session (the analysis session during which it was produced). You can use these (or combinations of them) to filter the database and recall the items via queries.
For example, you might use three different EnSight sessions on a single dataset to analyze the velocity, the pressure, and perhaps the net lift on an object. Once you push the data coming from these analyses into Nexus, they will all belong to different Sessions, but they will all have the same Dataset associated with them. Therefore, if you wanted to find all the analyses done on that dataset, you could do a query for the Dataset, and you’d get these items, regardless of what Session they belong to. Let’s now assume that you have done the same for multiple datasets. Now you have a collection of Items, so that each Dataset has three different Sessions (one for velocity, one for pressure, and one for net lift analysis).
In addition to Sessions and Datasets, everything in Nexus can have any number of user-defined tags associated with them. These tags can be simple strings, like “sensors” or “baseline”, but could also have values, like “variable=velocity” or “angle=84”. These tags can also be used to locate report Items when querying a database.
Suppose that you want to retrieve all the analyses done for velocity on all the datasets you processed. To do so, you want to find the Sessions that generated the velocity analysis. An easy way to do so is to assign a tag to each Session that tells you which analyses are associated with it. For example, you might assign tags like “analysis=pressure”, “analysis=velocity”, and “analysis=lift” to the Sessions. With this method, when you do a query for Session Tag with the value “analysis=velocity”, Nexus would show you the list of all items assigned to that analysis type, even if they come from different datasets.
You can see how different queries give you access to different subsets of the data contained in the database, based on your interest in that given moment.
In this Getting Started manual, we will browse all the Sessions and Datasets and then report Items on the local Nexus server.
First let’s query by Session.
You are presented with the search dialog:
This is the section where we will design our queries. For the moment, skip entering any values and just click Run Query. This will allow us to find all Sessions. This is usually not advisable in a real database with a large number of Sessions. For our more limited example database, the resulting dialog is as shown below, where each entry is a different Session.
Let’s look at one Session more in detail. Click on one of the Sessions to see the contents:
Click on the second Item, named “Query source”, to see the detailed description of this data Item. A data Item is a single entity: an image, a table of values, a set of 3D geometry, a string, a movie, etc. We can browse down from all Sessions to a single Session and look at its referencing Items in a list, and click on one of these to see an individual data Item.
Note that this data Item has no tags. In practice, data Items will have tags to make it easier to identify subsections of data. However, this example database simply illustrates the hierarchy of the data.
Finally, you can see that the Report Item has reference to the unique Session ID and the Dataset ID of this Item. Further, this Item shows up automatically in our web browser as a plot, with the corresponding data available for export to a comma-separated value (CSV) file.
You can query a Datasets at a later date, with similar results as querying Sessions, so we are going to move on to querying for a data Item.
Let’s do a query on the report Items. Select Query>Report Items. This time we will apply a query filter to identify only a subset of all the data Items.
We want to get only the Items that are tables and come from the dataset “crash.case”.
To form this query, we need to specify two separate filters. The first one will be on the Dataset. Set the Field to “Dataset filename”, Comparison to “Contains any of”, and Value(s) to “crash.case”.
Now click on the plus sign on the right to add a new query, and make it an ‘and’ query. In this new query, set Field to “Item types”, Comparison to “Include”, and Value(s) to “Table”. Your filters should look like the figure below.
Click Run Query and look at the query report results. There are quite a number of table Items that match our search.
Notice that this view shows some tags, which may be useful to refine the search at a later point.
Under Source, one of the Items has the value “commandline”. Let’s refine our search and try to tailor our query for just this item. Click on the “Back to query” button, and then add another ‘and’ query item. This query item will request that the Item Source contains any “commandline”, as shown below.
Now click Run Query to see that we have, indeed, narrowed down our search of data Items to only one, which is from this specific dataset, and is a table, whose source is “commandline”.
Click on the item “test” to see its contents.
Now let’s look at the Nexus documentation. In the Nexus web interface, click on Information>Documentation. It will open https://nexusdemo.ensight.com and display the current Nexus help documentation. You can browse topics on the left list and read about current Nexus capabilities.
Browse the docs