Adding a Pre-Compile Query Step

The first time a user runs an analytic query against AnzoGraph, AnzoGraph performs a code compilation process to generate the code for running that query. It then executes the query using that compiled code, and the same code is reused for subsequent runs of the query. If you determine that a particular query has a long code compilation time, you can add that query to a Pre-Compile Query Step. That way the query is run during the graphmart load and the compiled code is available before an end-user runs that query. Follow the instructions below to add a step that pre-compiles a query.

  1. In the Anzo application, expand the Blend menu and click Graphmarts. Anzo displays a list of the existing graphmarts. For example:

  2. On the Graphmarts screen, click the name of the graphmart that you want to change.
  3. Click the Data Layers tab. Anzo displays the existing data layers.
  4. Click the menu icon () on the layer for which you want to create a step, and then select Add Step/View. Anzo opens the Add step dialog box.

  5. Follow one of the options in this step, depending on whether you want to create a step from scratch or clone an existing step for reuse:
    • If you want to create a new step, select Pre-compile Query Step, and then click OK. Anzo opens the Create step screen. Proceed to the next step.

    • If you want to clone an existing step and add it to this layer, click the Existing Steps tab and follow these steps:
      1. Select the pre-compile query step that you want to clone and click OK. Anzo displays the Clone dialog box, which asks if you want to copy the permissions from the existing step.

      2. On the Clone dialog box, click Yes to copy the permission configuration from the existing step or click No to copy the step without the permission configuration.

        Anzo clones the step, adds the copy to the layer, and returns to the Data Layers screen.

      3. On the Data Layers screen, click the menu icon () on the cloned step and select Edit. Anzo opens the Edit load data step screen. Proceed to the next step.
  6. On the Details tab, type a name for the step in the Title field and add an optional description in the Description field.
  7. By default the Enabled option is selected, indicating that the step is enabled and will run when the layer is loaded. If you want to disable the step so that it is not processed, clear the Enabled check box.
  8. Specify what action, if any, you want Anzo to take if this step fails. The step includes the following two settings that control how Anzo treats the layer or graphmart if the query fails:
    • If the precompile query fails, the layer will be marked as failed: Select this option if you want Anzo to abort the load of the data layer if this step fails. The graphmart and other successful data layers continue to load.
    • If the validation query fails, the whole graphmart will be marked as failed: Select this option if you want Anzo to abort the load of the entire graphmart if this step fails.

    If you want Anzo to proceed to load the data layer if this step fails, leave both options blank.

  9. Click the Source drop-down list and configure the source data for this step. Steps can build upon the data generated by steps in other layers or can be self-contained, applying changes that relate only to the data defined in the layer that contains this step. You can select any number of the following options:
    • Self: This option is selected by default and means that the query runs against only the data that is generated in the layer to which this step belongs.
    • All Previous Layers Within Graphmart: Choosing this option means that the query runs against the data that is generated by all of the layers in the graphmart that precede this layer.
    • Previous Layer Within Graphmart: Choosing this option means that the query runs against only the data that is generated by the one layer that precedes this layer.
    • Layer Name: The Source drop-down list also includes options for specific layer names. You can choose a specific layer to run the query against only the data that is generated by that layer.

      You can remove any of the source options by clicking the X to the left of the option name.

  10. Click the Query tab to add the query that this step will run. The tab includes the syntax for writing a SPARQL SELECT query.
    SELECT *
    ${fromSources}
    WHERE{
    }

    The template includes the source graph parameter ( ${fromSources}). Using the configured Source data options from the Details tab, Anzo automatically populates the query with the appropriate source graph URIs when the query runs. Edit the template to add the query that you want to pre-compile.

  11. Click Save to add the step to the data layer. Anzo adds the step as the last step in the layer. If you want to change the order of the steps, click the black bar on the left side of a step and drag it up or down.
Related Topics