A Gentle Introduction to TimeXtender

Mohammad Jabari
6 min readJan 18, 2021

Because time matters

TimeXtender sponsors the Danish Motorsport driver, Mikkel O. Pedersen in his Porsche Mobil 1 Supercup journey.

TimeXtender is a low-code/no-code Data Management Platform that allows users to build and maintain a modern data estate for analytics with minimal time & effort. By eliminating tedious and repetitive tasks, organizations can significantly reduce costs and, most importantly, obtain actionable insights from their data in record time. If in the data world time is your concern, Timextender is your solution.

Three Layers, Data Source, Data Warehouse and Presentation

To obtain the greatest amount of insights from data, many types of data models and analytical methods are required. Data Scientists request raw data extracts to build powerful predictive models. Analysts prefer tables in a relational database to query & aggregate millions of rows of data. Business users need up-to-date curated models to visualize key financial and operational information.

Historically, a data estate robust enough to serve all these users was only obtainable by large enterprises after years of work. However, with TimeXtender’s low-code/no-code interface, even small organizations can quickly build a rich data architecture supporting any type of analytical need. The TimeXtender platform builds & maintains three distinct layers:

Operational Data Exchange (ODX)

Ingest hundreds of sources into a single format & location.
Experienced analysts & data scientists can use powerful tools such as Databricks to uncover new insights from raw data.

Modern Data Warehouse (MDW)

Model, cleanse & consolidation disparate data into a single version of the truth. Analysts & data scientists can benefit from curated & cleansed data to quickly answer critical questions.

Semantic Models

Deliver simple, relevant datasets to multiple visualization tools.
Business users can easily use these models to build dashboards answering known questions.

TimeXtender Environment

To properly configure the TimeXtender environment, it’s important to first understand how the application interacts with other applications and data storage platforms. The TimeXtender platform can be understood as a database abstraction layer on top of Microsoft Data Storage platforms (SQL Server or Azure Data Services) enabling the rapid development and maintenance of a modern data estate. Any working TimeXtender environment primarily consists of 4 working parts, the application (UI), services, project repository, and data storage.

The application (UI) is used to define a set of data models, movements and transformations. Clicking Save stores these “definitions” as metadata in a SQL database known as the project repository. During deployment, TimeXtender uses this metadata to generate instructions (SQL stored procedures or similar) which are sent to the desired data storage. During execution, SQL server will carry out these instructions, loading data from source systems, transforming it and loading it into the defined models in the target databases. The TimeXtender services ensure things like schedule execution and multiple environments continue to work without users present.

The purpose of TimeXtender is to enable you to create and maintain a complete data warehouse solution with as little effort as possible. To achieve this, TimeXtender employs Data Warehouse Automation techniques to automate the tedious parts of the work.

SQL code for the ETL (extract, transform, load) process, MDX code for SSAS Multidimensional cubes, indexes etc. are generated automatically. Most tasks can be accomplished using drag-and-drop in the graphical user interface, and the amount of code you need to write is minimized. However, if and when you need to customize the code, you can do it in your favorite development environment.

Building a Modern Data Estate Final

Choose a Solution

TimeXtender can be deployed via a pre-configured Azure Marketplace Template, or you can configure your own server & storage. Azure or On-Prem that is the question!

Azure: Pre-configured Azure Marketplace Template

Running both TimeXtender and your data storage platform(s) in the Azure cloud provides a number of benefits.

  • Because time matters: When deploying an Azure Marketplace Template your analytics environment can be ready in as little as 30 minutes.
  • Improved Performance: All Azure services are managed and configured for optimal performance as well as active geo-replication ensure near 100% uptime.
  • Security: Azure enforces the strictest data security standards such as Transport Layer Security (TLS) and transparent data encryption.
  • Reduced Cost: By leveraging Azure’s data centers you don’t need to pay for hardware or expensive DBA’s to maintain your infrastructure.

On-Prem: Configure Your Own Server & Storage

Once you have configured your servers, accounts, & databases, you are ready to launch TimeXtender. When deploying on-premises there are 4 steps that you must accomplish before continuing on with the

1.Choose and Deploy the desired Server Configuration
2.Install the Necessary Prerequisites
3.Configure User Accounts & Permissions
4.Install TimeXtender

Choose and Deploy the desired Server Configuration

You have multiple options regarding server configuration depending on where you wish to house the TimeXtender application, Services, and SQL Server databases.

Consolidated BI Server

In this configuration, the TimeXtender application, services and SQL Server databases are all installed on the same windows server. Due to the simplicity of this configuration, it is easier to maintain and offers some performance advantages due to zero network latency.

Separate Application and Database Servers

In this configuration, the TimeXtender application and services are installed on an “Application” server and the SQL Databases are stored on a separate “Database” server. In this configuration, we highly recommend you configure Remote Execution of SSIS Packages to transfer data directly from the source to the database server for significantly improved performance.

Hardware Configuration

There are no minimum hardware requirements for TimeXtender beyond that which is required by Microsoft SQL Server. Analytics environments can be drastically different from one organization to the next and performance can be impacted by any number of factors. Because of this we highly recommend you conduct your own testing and/or obtain an expert recommendation from a qualified professional. With this in mind below are some general guidelines for optimal performance of TimeXtender.

Note: When creating your databases in SQL Server always be sure to place the data and log files on SEPARATE disks drives. Placing them on the same disk can create contention between the files resulting in poor performance. Placing them on separate disks means that they can be written to simultaneously ensuring optimal IO throughput.

Install the Necessary Prerequisites

Once you have chosen your desired configuration and deployed the necessary servers, you must install all the necessary TimeXtender Prerequisites.

Add Required Firewall Exceptions

Please configure your server(s) firewall to allow TimeXtender’s List of Required Firewall Exceptions.

Configure User Accounts & Permissions

After installing the prerequisites, you must Configure User Accounts & Permissions.

Download & Install TimeXtender

Finally, once the user accounts and permissions are in place, you can Install TimeXtender.

Downloads

References

http://www.mikkelopedersen.com/en/om-mikkel-o-pedersen-english/
https://support.timextender.com/
https://logz.io/blog/on-prem-or-cloud/

--

--

Mohammad Jabari

Experimenter in life, Without a single day of making NO mistakes