Contents
This sample shows basic usage of the H2O model evaluator. The scenario uses an audit data dataset from the PMML examples at http://dmg.org/pmml/pmml_examples/index.html.
The EventFlow module in this sample shows an example of runtime binomial classification. The input events contain some demographics data about bank customers. The events leave the flow enriched by the Target information computed by the model.
In StreamBase Studio, import this sample with the following steps:
-
From the top-level menu, select
> . -
Enter
h2o
to narrow the list of options. (Note that this is H-two-oh, not H-two-zero.) -
Select Performing modeling operations using H2O from the Large Data and Storage Analysis category.
-
Click
.
StreamBase Studio creates a single project for the H2O operator samples in your current Studio workspace.
Run this sample in Studio as follows:
-
In the Project Explorer view, open the sample you just loaded.
If you see red marks on a project folder, wait a moment for the project to load its features.
If the red marks do not resolve themselves after a minute, select the project, right-click, and select
> from the context menu. -
Open the
src/main/eventflow/
folder.packageName
-
Open the
file and click the Run button. This opens the SB Test/Debug perspective and starts the module.audit.sbapp
-
In the Feed Simulations view, select the
audit.sbfs
file and click Run. -
In the Output Streams view, select All Output Streams and view the data emitted by the StreamBase application. It should start with tuples similar to the following:
Target=0, Age=38.0, Employment=Private, Education=College, Marital=Unmarried, Occupation=Service, Income=81838.0, Gender=Female, Deductions=0.0, Hours=72.0 Target=0, Age=35.0, Employment=Private, Education=Associate, Marital=Absent, Occupation=Transport, Income=72099.0, Gender=Male, Deductions=0.0, Hours=30.0 Target=0, Age=32.0, Employment=Private, Education=HSgrad, Marital=Divorced, Occupation=Clerical, Income=154676.74, Gender=Male, Deductions=0.0, Hours=40.0 Target=0, Age=45.0, Employment=Private, Education=Bachelor, Marital=Married, Occupation=Repair, Income=27743.82, Gender=Male, Deductions=0.0, Hours=55.0 Target=0, Age=60.0, Employment=Private, Education=College, Marital=Married, Occupation=Executive, Income=7568.23, Gender=Male, Deductions=0.0, Hours=40.0 Target=0, Age=74.0, Employment=Private, Education=HSgrad, Marital=Married, Occupation=Service, Income=33144.4, Gender=Male, Deductions=0.0, Hours=30.0 Target=1, Age=43.0, Employment=Private, Education=Bachelor, Marital=Married, Occupation=Executive, Income=43391.17, Gender=Male, Deductions=0.0, Hours=50.0 Target=0, Age=35.0, Employment=Private, Education=Yr12, Marital=Married, Occupation=Machinist, Income=59906.65, Gender=Male, Deductions=0.0, Hours=40.0 Target=0, Age=25.0, Employment=Private, Education=Associate, Marital=Divorced, Occupation=Clerical, Income=126888.91, Gender=Female, Deductions=0.0, Hours=40.0 Target=0, Age=22.0, Employment=Private, Education=HSgrad, Marital=Absent, Occupation=Sales, Income=52466.49, Gender=Female, Deductions=0.0, Hours=37.0 Target=0, Age=48.0, Employment=Private, Education=College, Marital=Divorced, Occupation=Service, Income=291416.11, Gender=Female, Deductions=0.0, Hours=35.0
-
When done, press F9 or click the Terminate EventFlow Fragment button.
The artifact management sample demonstrates how you can use a TIBCO Artifact Management Server to feed data into the H2O operator to load new versions of models at runtime.
The TIBCO Artifact Management Server is a separately installed product. This sample assumes that you have a running Artifact Management Server (AMS) that is accessible by StreamBase. Refer to the product documentation for more information regarding AMS.
This sample also requires that you do the following:
-
Create a project folder in the Artifact Management Server called
sample
. -
Navigate to
sample/models-h2o
from your StreamBase installation directory and upload theaudit.pojo
file to the AMSsample
project folder. Note that thesample/models-h2o
directory in StreamBase is a different directory from the AMSsample
project folder.
Run this sample in Studio as follows:
-
In the Project Explorer view, open the sample you just loaded.
If you see red marks on a project folder, wait a moment for the project to load its features.
If the red marks do not resolve themselves after a minute, select the project, right-click, and select
> from the context menu. -
Open the
src/main/eventflow/
folder.packageName
-
Open the
file and click the Run button. This opens the SB Test/Debug perspective and starts the module.artifactmanagement.sbapp
-
The application will try to pull the artifacts from AMS. Note that the
Required On Startup
option is selected for all operators, which means all the artifacts must be loaded from the AMS system before the application will run. If all artifacts cannot be loaded within a specific period of time, the system will fail with anartifact timeout
exception. -
In the Feed Simulations view, select the
audit.sbfs
file and click Run. -
In the Output Streams view, select All Output Streams and view the data emitted by the StreamBase application. It should start with tuples similar to the following:
Target=0, Age=38.0, Employment=Private, Education=College, Marital=Unmarried, Occupation=Service, Income=81838.0, Gender=Female, Deductions=0.0, Hours=72.0 Target=0, Age=35.0, Employment=Private, Education=Associate, Marital=Absent, Occupation=Transport, Income=72099.0, Gender=Male, Deductions=0.0, Hours=30.0 Target=0, Age=32.0, Employment=Private, Education=HSgrad, Marital=Divorced, Occupation=Clerical, Income=154676.74, Gender=Male, Deductions=0.0, Hours=40.0 Target=0, Age=45.0, Employment=Private, Education=Bachelor, Marital=Married, Occupation=Repair, Income=27743.82, Gender=Male, Deductions=0.0, Hours=55.0 Target=0, Age=60.0, Employment=Private, Education=College, Marital=Married, Occupation=Executive, Income=7568.23, Gender=Male, Deductions=0.0, Hours=40.0 Target=0, Age=74.0, Employment=Private, Education=HSgrad, Marital=Married, Occupation=Service, Income=33144.4, Gender=Male, Deductions=0.0, Hours=30.0 Target=1, Age=43.0, Employment=Private, Education=Bachelor, Marital=Married, Occupation=Executive, Income=43391.17, Gender=Male, Deductions=0.0, Hours=50.0 Target=0, Age=35.0, Employment=Private, Education=Yr12, Marital=Married, Occupation=Machinist, Income=59906.65, Gender=Male, Deductions=0.0, Hours=40.0 Target=0, Age=25.0, Employment=Private, Education=Associate, Marital=Divorced, Occupation=Clerical, Income=126888.91, Gender=Female, Deductions=0.0, Hours=40.0 Target=0, Age=22.0, Employment=Private, Education=HSgrad, Marital=Absent, Occupation=Sales, Income=52466.49, Gender=Female, Deductions=0.0, Hours=37.0 Target=0, Age=48.0, Employment=Private, Education=College, Marital=Divorced, Occupation=Service, Income=291416.11, Gender=Female, Deductions=0.0, Hours=35.0
-
From AMS, deploy the model again to the running
artifactmanagement.sbapp
application using the following properties:-
Target Type:
-
StreamBase Service Name
The node name that appears in the studio cluster view for this application
-
-
When done, press F9 or click the Terminate EventFlow Fragment button.
When you load the sample into StreamBase Studio, Studio copies the sample project's files to your Studio workspace, which is normally part of your home directory, with full access rights.
Important
Load this sample in StreamBase Studio, and thereafter use the Studio workspace copy of the sample to run and test it, even when running from the command prompt.
Using the workspace copy of the sample avoids permission problems. The default workspace location for this sample is:
studio-workspace
/sample_operator_models_H2O
See Default Installation Directories for the default location of studio-workspace
on your system.