Versions Compared

Key

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

This section explains how you can to upgrade to WSO2 DAS 3.0.1 from WSO2 BAM 2.5.0 and WSO2 DAS 3.0.0. For more information on release versions, see the Release Matrix.

This section provides information on how you can upgrade from WSO2 BAM 2.5.0 to WSO2 DAS 3.0.1. For more information on release versions, see the Release Matrix.

Note

You cannot roll back the upgrade process. However, it is possible to restore a backup of the previous database so that you can restart the upgrade progress.

Localtabgroup
Localtab
titleUpgrading from BAM 2.5.0
Warning
titleWSO2 DAS is not backward compatible with WSO2 BAM

The artifacts of WSO2 DAS are not backward compatible with the artifacts in WSO2 BAM due to the major differences in the architecture between the two products.

 

Preparing to upgrade

The following prerequisites should be completed before upgrading.

Upgrading the database

The instructions in this section describe how you can perform a data migration to upgrade the BAM 2.5.0 database for use in DAS 3.0.1.

  1. Before you upgrade to DAS 3.0.1, create a new database and restore the backup of the BAM 2.5.0 database in this new database.

    Info
    titleNote

    You should NOT connect WSO2 DAS to an older database that has not been upgraded.

  2. Select the relevant script for the upgrade from here and run it on the new database. Running this script will ensure that the new database is upgraded to have the additional tables and schemas that are required for WSO2 DAS 3.0.1.

    Info
    titleNote

    There are three migration scripts available:  migration-service-provider.sql , migration-identity.sql and  migration.sql. However, only the  migration.sql script is required to be executed for the DAS database upgrade.

Migrating the configurations

Handling event flow related configurations

Configurable objects used for realtime processing in WSO2 DAS are different to those in WSO2 BAM as explained in the table below. Therefore, they need to be manually reconfigured instead of migrated.

Artifact Type in BAM  

Replaced in DAS ByNoteRecommended Action
  • Input Event Adapter
  • Event Builder
Event Receiver

The Event Receiver artifact in DAS 3.0.1 embeds both the Input Event Adapter and Event Builder artifacts in BAM 2.5.0.

Identify the input event adapters and event builders used in combination in BAM 2.5.0, and redefine them as event receivers. For detailed instructions, see Configuring Event Receivers.

  • Event Stream
N/AThe Event Stream artifact in DAS is different to that in BAM since a DAS event stream can be a real time event stream or a persistent event stream, whereas BAM event streams are always defined for persistent data.

Redefine the event streams in DAS 3.0.1 using the following procedure.

  • Log into the WSO2 BAM Management Console, and go to the Main tab.
  • Under Registry, click Browse to open the Browse page.
  • Navigate to <Top_Folder>/system/governance/StreamDefinitions/<relevant_event_stream>/<relevant_stream_version> as shown in the example below.
    Image Removed
  • Click on the stream version. This will open the Detail View tab for the event stream version you selected.
  • Click Display as Text to view the event stream configuration as a JSON array.
    Image Removed  
  • Copy the JSON array to the clipboard.
  • Log into the DAS Management Console and go to the Main tab.
  • Click Streams to open the Available Event Streams page.
  • Click Add Event Streams to open the Define New Event Stream page.
  • Click switch to source view.
  • Clear the existing text in the source view and paste the JSON array you copied to the clipboard

    .

  • Click Add Event Stream.
  • If you want the event stream to persist events, follow the instructions in Persisting Data for Batch Analytics.
  • Alternatively, you can redefine the complete event stream configuration as described in Understanding Event Streams and Event Tables.

    • Output Event Adapter
    • Event Formatter
    Event PublisherThe Event Publisher artifact in DAS 3.0.1 embeds both the Output Event Adapter and Event Formatter artifacts in BAM 2.5.0.

    Identify the output event adapters and event formatters used in combination in BAM 2.5.0, and redefine them as event publishers. For detailed instructions, see Creating Alerts.

    • Execution Plan
    N/A

    The Siddhi Query Language in DAS 3.0.1 is different to that in BAM 2.5.0.
    Therefore, the Siddhi queries of an execution plan directly migrated from BAM cannot function in DAS 3.0.1.

    Redefine the execution plans in DAS 3.0.1.

    For detailed instructions on defining execution plans, see Creating a Standalone Execution Plan and Creating a STORM Based Distributed Execution Plan.

    For the modified Siddhi Query Language, see Siddhi Query Language.

    Migrating data

    Run the <DAS_HOME>/bin/analytics-migrate.sh script to migrate data from WSO2 BAM to WSO2 DAS. For detailed information, see Analytics Migration Tool.

    Info

    WSO2 BAM uses Cassandra as the event store. In WSO2 DAS, you can select either Cassandra, RDBMS or HBase as the event store. The analytics-migrate.sh script migrates Cassandra data to the new event store in WSO2 DAS, however, migrating other databases such as the User Store database should be done separately.

    Handling indexes

    The indexing mechanism in WSO2 DAS is different to that in WSO2 BAM. Therefore, the Cassandra custom and secondary indexes cannot be directly migrated to WSO2 DAS.

    Recommended action

    WSO2 DAS uses Apache Lucene for indexing. To use the Lucene indexing functionality, select the required stream attributes as index columns as described in Configuring Indexes.

    Handling scripts

    Scripts that analyze data in WSO2 BAM are written in the Apache Hive query language whereas the scripts in WSO2 DAS are written in the Apache Spark SQL query language. Therefore, the syntax of the scripts differ in WSO2 BAM and WSO2 DAS. Due to this, scripts cannot be directly migrated from WSO2 BAM to WSO2 DAS.

    Recommended action

    Redefine the required scripts in WSO2 DAS in the Spark query  language. For detailed information on writing queries in the Spark SQL query language, see Spark SQL query language.

    Handling dashboards and gadgets

    The BAM Dashboard in WSO2 BAM is replaced with the Analytics Dashboard in WSO2 DAS. Since the two dashboards and their gadgets are configured differently, dashboards and gadgets cannot be directly migrated from WSO2 BAM to WSO2 DAS.

    Recommended action

    Redefine the required dashboards and gadgets in the Analytics Dashboard.

    Handling reports

    The reporting feature is WSO2 BAM is deprecated in WSO2 DAS. Therefore, reports cannot be migrated from BAM to DAS.

    Migrating artifacts

    BAM toolbox functionality is not available in DAS. Therefore, it is not possible to migrate a toolbox from BAM to DAS. If you need the artifacts in a BAM toolbox for a particular user case, you need to create a corresponding C-App and deploy it in DAS. For more information on creating and deploying C-Apps, see Packaging Artifacts as a C-App Archive.

    Info

    The artifacts deployed in the C-App should be DAS artifacts and not BAM artifacts. e.g., The scripts included should be Spark scripts instead of Hive scripts.

     

    Testing the upgrade

    1. When the database upgrade scripts are executed, the following are some of the new tables that will be created in the database:
      • UM_DOMAIN
      • UM_SYSTEM_USER
      • UM_SYSTEM_ROLE
      • UM_SYSTEM_USER_ROLE
    2. Deploy the C-Apps you created to correspond with the relevant BAM toolboxes and check whether all the required artifacts are successfully created in your DAS environment.
    3. Publish data to WSO2 DAS and check whether they are received by the event receivers configured in DAS.
    4. Execute the scripts you redefined in the Spark SQL query language, and use the Data Explorer and/or the Analytics Dashboard to view the results.
    5. Verify that all the required scenarios are working as expected. This confirms that the upgrade is successful.
    Localtab
    titleUpgrading from DAS 3.0.0

    This section explains how to upgrade to DAS 3.0.1 from DAS 3.0.0.

    Table of Contents
    maxLevel3
    minLevel3

    Preparing to upgrade

    The following prerequisites should be completed before upgrading.

    ...

    Reindexing data

    ...

     DAS versions 3.0.0 and 3.0.1 use the same databases. Therefore, you are able to use the same data by connecting to the same databases as DAS 3.0.0 via configuration files. Once

    ...

    DAS 3.0.1 is connected to the same databases as DAS 3.0.0, you need to reindex the data using the

    ...

      Analytics Data Backup / Restore Tool.

    Migrating artifacts

    To migrate event streams, event receivers, event publishers, execution plans, scripts, dashboard and gadgets, pack them into a C-App and deploy the C-App in DAS 3.0.1. For more information, see Packaging Artifacts as a C-App Archive.