In the Open Source BI Helical Insight enterprise edition 5.2.2 onwards, we are providing an in-built driver to connect to JSON and also a lot of other kind of flat files like Excel, CSV, JSON, and Parquet.
We are providing detailed information on how to connect to and use JSON files in this tutorial:
1. Log in to your Helical Insight application and go to the “Data Sources” module.
2. Once you are on “Data Sources” module, you will see many options to connect to different databases. Out of that you need to choose “Flatfile json”. Reference image is provided below:
3. Once you click on ‘Flatfile json‘ and choose ‘Create‘ a popup will open. A reference image is provided below
4. Host: It can be provided in two ways:
- Upload the file: If we upload a json file using the upload option, it will be filled automatically.
- Manually provide the json file path: In this case, the file must be present on the same server where the Helical Insight server is installed.
Example for linux path: /usr/local/customerData.json
We recommend using the UI driven JSON file Upload option
5. In the “Datasource Name” section, we can provide any name of our choice with which the connection name will be saved and listed.
6. In the ‘Configuration Editor‘ we need to provide the details based on the type of flat file you are using. The configurations will vary for each flat file. All the sample configuration details are provided on the icon next to the ‘Configuration Editor‘ An image is provided below
7. Once you click on this icon, it will open a pop up with all the configurations for different flat files.
You will get direct “Copy to clipboard”, option which you can use to copy the content. You need to made necessary changes based on your details.
Explanation of configuration options :
1. tableName:
Value: "mydata" Explanation: This specifies the name of the table that will be created or referenced in the metadata. In this case, the table will be named mydata.
2. strategy:
Value: "in-memory" Explanation: Specifies the data processing strategy. "in-memory": Data will be processed and stored temporarily in memory, without persistence to a physical location( Recommended) "persistent": Data will be persisted to a physical database file for storage.
3. persistentLocation:
Value: "" (empty string) Explanation: Indicates the location for persistent storage when the strategy is set to "persistent". If the strategy is "persistent", a valid file path must be specified here (e.g., C:\\dbs\\test.duckdb).
4. extensions:
Value: ["excel", "spatial"] Explanation: Specifies the supported file types or processing extensions. "excel" enables the configuration to handle Excel files. "spatial" may indicate support for spatial
5. config:
This section contains additional configuration details for processing the flat file.
a. layer:
Value: ["sheet 1"] Explanation: Specifies the sheet(s) in the Excel file to be processed. Here, only "sheet 1" is included for processing. If there were multiple sheets, their names would be listed in the array. For JSON data don’t use this setting.
b. open_options:
Value: ["HEADERS=FORCE", "FIELD_TYPES=AUTO"] Explanation: These are options for interpreting and processing the data. "HEADERS=FORCE" ensures that the first row of the sheet is treated as headers, even if this is not explicitly set in the Excel file. "FIELD_TYPES=AUTO" enables automatic detection and assignment of field types (e.g., string, integer, date).
8. We have uploaded the “CustomerData.json” file using the ‘Upload‘ option and provided the required configuration in the Configuration Editor
{ "tableName": "Customer Data", "strategy": "in-memory", "persistentLocation": "", "extensions": [ "spatial" ], "config": { "auto_detect": true } }
The JSON data inside the file is :
9.Click on Test Connection, it gives The connection test is successful
(If there are no issues with configuration) click on Save Datasource
10. Go to the metadata page and expand the Flatfile json data source. Then expand the Customer Json Data connection. Expand ‘memory‘ and then ‘main’ and it will show the table name that we provided in the data source connection configuration. Drag the table into metadata. Save this metadata.
11. Create a report using the metadata and save it
In case of any questions please reach out to support@helicalinsight.com