Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page is for data modellers who want to connect to an external database, either to load data or to export processed data back to it.

Overview

A datasource is a modelling object whose properties provide the information needed to connect to an external database and transfer data to and from it. You must have one datasource for each type of database to which you need to connect. Optionally  In an analysis model, you can configure several datasources for the same type of database.

The datasource properties are affected by:

  • the Privilege Allow anonymous updates on datasources. Only a user with this privilege can change the Allow Anonymous Export tick box.
  • the System Configuration option Allow anonymous export by default. When selected, this system option sets Allow Anonymous Export to be ticked by default on new datasources.

    add:

    The datasources you create appear in the Basic Settings → Datasource list in collector and exporter properties.



    Panel
    borderColor#7da054
    titleColorwhite
    titleBGColor#7da054
    borderStylesolid
    titleSections on this page

    Table of Contents
    maxLevel2
    indent12px
    stylenone


    Each datasource must have at least one datasource instance. You can add several instances if you want to configure different settings. For example you may want to connect to the same database using a different username and password for different scheduled tasks. 

    In the properties for collectors and exporters, you can optionally specify the datasource instance using the Advanced → Datasource Instance Expression.

    Datasource Properties

    Insert excerpt
    _standard_settings
    _standard_settings
    nopaneltrue

    In addition to the standard icons, the properties toolbar includes 

    Insert excerpt
    _datasource_show_tables
    _datasource_show_tables
    nopaneltrue
    , which opens a list of tables visible for this datasource using the default login details; see the Table Details window.

    For a datasource, you must:

    • Enter a Name.
    • Select a Driver class.
    • Add at least one datasource instance.
    • Tick the Enabled check box when it is ready to use.

    We recommend you tick Protect during import to prevent this datasource being updated or deleted during import.

    Basic Settings

    FieldDescription
    Name

    Enter the name for this datasource

    object. You will use this name to specify this datasource in other collector and exporter objects

    . It is helpful to use a name that reflects the type of database to which it will connect. This name appears in the Datasource  drop-down list for database collectors and exporters.

    Enabled

    Insert excerpt
    _check_box_ticked
    _check_box_ticked
    nopaneltrue
     when the configuration is complete and the datasource is ready to be used.

    URL INSTANCEEnter the URL to connect to the datasource; see Connection URLs below. This option has gone. How does the datasource know where the database is?Allow Anonymous ExportUse this option when a datasource is connected to an exporter that will be run by a task, such as a scheduled task.  
    Protect during import

    Insert excerpt
    _check_box_ticked
    _check_box_ticked
    nopaneltrue

     to allow anonymous export of data via the datasource. The target database must permit anonymous updates.

    The datasource uses the anonymous username and password configured for the specific instance (see below)

    You must have the Allow anonymous updates on datasources privilege to change this option.

    Use User Credentials on ExportUse this option when a datasource is connected to an exporter being run interactively. This may be via an application action or when a user clicks  Insert excerpt_run_analysis_run_analysisnopaneltrue. Insert excerpt_check_box_ticked_check_box_tickednopaneltrue  to connect to the target database using the PhixFlow username and password of the current user.
    Note
    The target database must already have the same username and password with the required permissions. Contact the database administrator to do this. 
    Protect during import

     to preserve this datasource during import. This prevents the datasource being updated or deleted.

    Exception: The datasource will be deleted when its parent application is deleted by the import. This prevents orphaned datasources persisting in PhixFlow.

    Driver Class

    Select the driver class for the type of database to which the datasource connects. 

    Tip

    The drop-down list may contain driver classes that are deprecated and do not have the necessary database drivers; see Driver Classes


    Datasource Instances 

    This section has a toolbar with standard buttons.

    The grid contains a list of datasource instances that belong to this datasource. Double-click on a row to open the datasource instance properties. 

    To add a datasource to the list, click

    Insert excerpt
    _add
    _add
    nopaneltrue
     . PhixFlow opens the properties for a new datasources instance; see Datasource Instance Properties, below.

    To remove a datasource instance from the grid, use the toolbar button 

    Insert excerpt
    _delete
    _delete
    nopaneltrue
    .

    Database Collectors

    This section has a toolbar with the  

    Insert excerpt
    _list_show
    _list_show
    nopaneltrue
     and  
    Insert excerpt
    _refresh
    _refresh
    nopaneltrue
     buttons; see standard buttons.

    The grid contains a list of database collectors that use this datasource. Double-click on a row to open the database collector properties. You can change whether or not the collector uses this datasource or whether the collector is enabled.

    Note

    Any changes you make will affect the analysis models in which the collector is used.

    Datasource Instance Properties
    Anchor
    instance
    instance

    Insert excerpt
    _standard_settings
    _standard_settings
    nopaneltrue

    For a datasource instance, you must:

    • Enter a Name.
    • Enter the URL for the database.
    • Specify theUsername and Password.
    • Tick the Enabled check box when it is ready to use.

    Other settings are optional.

    Basic Settings

    FieldDescription

    Name

    Enter the name for this instance. In the properties for collectors and exporters, you can specify this instance by using its name in the Datasource Instance Expression.

    Enabled

    Insert excerpt
    _check_box_ticked
    _check_box_ticked
    nopaneltrue

     to prevent this datasource being updated or deleted during import.

    When a parent application is deleted by the import, its datasources will also be deleted. This prevents orphaned datasources persisting in PhixFlow.

    Driver Class

    Required. Select the driver class for the type of database to which the datasource connects. 

    Tip

    The drop-down list may contain driver classes that are deprecated and do not have the necessary database drivers; see Driver Classes

    Database Instance

    Advanced have these gone away? I don't see an Advanced section?

     when the configuration is complete and the datasource is ready to be used.

    URL

    Enter the URL for the target database.

    Example URLs

    • Oracle
      jdbc:oracle:thin:@hostname:1521:phixflow
    • Oracle for versions above 12c, with PDB containers 
      jdbc:oracle:thin:@hostname:1521/phixflow
    • SQL Server 
      jdbc:sqlserver://hostname\myservice;databaseName=phixflow
    • MySQL 
      jdbc:mysql://hostname/phixflow
    • Big Query
      jdbc:bigquery://@hostname:@port;ProjectId=@Project;
    Authorisation Type

    Select:

    • Local: to provide user credentials from PhixFlow. When you select this option, the Username and Password properties are available.
    • External: to provide user credentials from the secure keystore. When you select this option, the Username Key and Password Key properties are available.
      Use this option for greater security.
    UsernameEnter a username.

    These options are available when Authorisation Type is Local.

    This username and password must match an account that is configured to access the datasource instance. PhixFlow connects to the datasource using this username and password.

    PasswordEnter a password.
    Username Key

    Enter the alias that identifies the username in the keystore.

    These options are available when Authorisation Type is External.

    The aliases must match a username and password stored in the keystore and these are configured to access the datasource instance. PhixFlow connects to the datasource using this username and password.

    Insert excerpt
    _keystore
    _keystore
    nopaneltrue

    Password KeyEnter the alias that identifies the password in the keystore.

    Advanced

    Only use these options if you know about database connections and SQL queries. For help with these options, contact support@phixflow.com.

    FieldDescription

    Check Query

    Use this field when connections to the target database might go

    "

    stale

    ", e.g.

    . This can happen if the target database disconnects long-running connections.

    Setting this field causes PhixFlow to run

    Enter a database query that will return a row from the database.

    PhixFlow runs the query against the database just before each use of a

    "

    pooled

    "

    connection. If the query does not return a row, the connection is discarded and a new connection is created. To avoid any performance impact, the query should execute quickly.

    See also database collectors for guidance on writing

     

    See the Query String section of the Database Collector page for information about writing SQL queries in PhixFlow.

    Datasource Profile

    Use this field when

    connections to

    the target database

    have certain

    has additional requirements

    that are

    not covered by

    PhixFlow's default external Datasource configuration. The value entered in this field will determine which

    the datasource and datasource instance properties.

    Enter the path to an external datasource connection profile

    that this datasource instance

    .

    PhixFlow will use the configuration information in the profile to connect to the target database

    .
    Connection URLs Anchorurlurl Still needed if URL option has gone away?

    A datasource instance must have a name, a URL, and a username and password used to connect to the external datasource. The URL should be in one of the following formats:

    Platform
    Example Connection String

    Oracle

    jdbc:oracle:thin:@hostname:1521:phixflow

    Oracle > 12c with PDB containers

    jdbc:oracle:thin:@hostname:1521/phixflow

    SQL Server

    jdbc:sqlserver://hostname\myservice;databaseName=phixflow

    MySQL

    jdbc:mysql://hostname/phixflow

    Big Queryjdbc:bigquery://@hostname:@port;ProjectId=@Project;

    DescriptionOptionally enter a information about the advanced configuration.

    Remember to click 

    Insert excerpt
    _finish
    _finish
    nopaneltrue
     to save and close the  datasource instance properties and return to the datasource properties tab.