Wiki source code of 03b. Amalgamated Data Source Wizard
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{box cssClass="floatinginfobox" title="**Contents**"}} | ||
| 2 | {{toc/}} | ||
| 3 | {{/box}} | ||
| 4 | |||
| 5 | Using the Amalgamated Data Source Wizard, two or more existing Indexes can be joined based on a number options to de-duplicate and filter the resulting output. | ||
| 6 | |||
| 7 | To create an Amalgamated Index, click **Wizards**, then **Amalgamated**. | ||
| 8 | |||
| 9 | Click the **New** button to begin the process. | ||
| 10 | |||
| 11 | = Creation Process = | ||
| 12 | |||
| 13 | == Details == | ||
| 14 | |||
| 15 | Enter the name that will be given to the Data Source, Data Source Group and Index in the **Name** text box. | ||
| 16 | |||
| 17 | Use the **Tags** text box to add associated search terms to the Index structure. This allows the components to be searched using alternative strings when using the search bar. | ||
| 18 | |||
| 19 | To automatically restrict access to the Index once built, enable the **Sensitive** option. Only users with explicit permission will be able to access the Index. | ||
| 20 | |||
| 21 | The **Index Method** drop-down list specifies the build method to be used when building the Index. Only **Complete** is currently available as an option. | ||
| 22 | |||
| 23 | The **Complete** option will result in all items in a data source being indexed when a refresh takes place. Once refreshed, a new version number is applied to the Index. Each run completely refreshes the Index. | ||
| 24 | |||
| 25 | Use the **Index Size** drop-down list to specify the expected number of records the resulting Index will contain. This is an indicative value and does not need to be exact. | ||
| 26 | |||
| 27 | Using this drop-down list allows the system to work out how many folders to split the Index into. The higher the specified Index size, the less folders created. A lower number of folders results in less threads used to query the Index, as a single thread is allocated per folder. This decreases the speed of individual queries, but reduces the performance impact of multiple concurrent users querying the system simultaneously. | ||
| 28 | |||
| 29 | Use the **Add to Search Engine** drop-down list to select the relevant search engine the Index will be added to upon completion and the **Add to Collection** drop-down list to select an existing Collection to which the Index will be added. | ||
| 30 | |||
| 31 | Enable the **Build Now** option to build the Index as soon as the creation process is complete. If disabled, the settings are saved for the Index to be built at a later time. | ||
| 32 | |||
| 33 | == Field Search == | ||
| 34 | |||
| 35 | If editing a pre-existing Amalgamated Index, use the **Joins** drop-down list to highlight a join where the field is present. Enable the **Include unselected** checkbox to highlight the join where the Index field is present but not currently included as part of the configuration. | ||
| 36 | |||
| 37 | == Joins == | ||
| 38 | |||
| 39 | Each Join will have its own tab. | ||
| 40 | |||
| 41 | Click the **View Preview** button to display a breakdown of the current setup in text. The **View Form** button will return to the GUI layout. Click the **Edit** button for a join to change the display name of the join. By default, joins are automatically labelled Join 1 to Join //n//. | ||
| 42 | |||
| 43 | Select the first Index to be joined using the **Index 1** drop-down list, and choose the other Index using the **Index 2** dropdown list. | ||
| 44 | |||
| 45 | The **Join Type** will now need to be specified. An **Inner** join will compare the two Indexes and will only return results where a match is found. Records that exist in both Indexes will be duplicated. A **Left Outer** join will maintain all records from **Index 1** and insert NULL values where matches are not returned while a **Full Outer** will return matched and unmatched rows from both tables while adding NULL values where matches are not returned. | ||
| 46 | |||
| 47 | The data used for the join can be further filtered, similar to using a WHERE clause in SQL, by loading a saved query for each Index. Click the **Filter** icon to open the **Saved Reports** window and select the relevant query, if required. When a saved query is loaded for an Index, the **Filter** icon will be changed to an **X** icon that can be used to remove a loaded query. To expose the location of the saved query, hover the cursor over the added query name to reveal the path. | ||
| 48 | |||
| 49 | Use the **Display Fields** checkboxes to configure the visible fields from each Index when the join has been made. Leaving every field unselected will result in all fields being used. To establish the join without adding additional fields, enable the **Ignore Display Fields** option. | ||
| 50 | |||
| 51 | Use the **Alias** text boxes to add a prefix to each column name depending on its source Index. This allows fields in the output to be easily identified once the joins have been established. | ||
| 52 | |||
| 53 | The **Links** options are used to specify fields that will be linked between the two Indexes to avoid duplication. Use the **Field From Index 1** and **Field From Index 2** drop-down lists to select the fields to be linked and the **Match Type** drop-down list to configure the required relationship. If joining date fields with differing formats, the format from the field specified in the **Field From Index 1** drop-down list will be used in the output. | ||
| 54 | |||
| 55 | If the join requires more than one link, click **Add Link** to reveal additional dropdown lists to configure. To remove additional links, click the **X** icon. | ||
| 56 | |||
| 57 | If a join to an additional Index is required, click **Add Join**. This will provide the options to complete as detailed above. Click **Remove Join** to delete the join and all entered details. |