What are the timeXtender Table Types (_R and _V)?

When you deploy a staging- or data warehouse table from timeXtender, a number of physical tables will be created.

The two primary tables are:

<TableName>_R is the Raw table, that contains the records as they where extracted from the data source, with eventual lookups added.

<TableName>_V is the Valid table, that contains the records as they are after the data cleansing and data quality process has executed.

It is possible to avoid having the Valid table if the table is not collecting history or is incrementally loaded by de-selecting "Physical Valid Table" in the Table settings screen.

On the Project Level, you can change the setting "Postfix Valid" table to ommit the _V postfix on the Valid table instances.

The reason for having data in a raw and valid instance is primarely to help test and troubleshoot transformations and secondly to avoid having to reload the raw data from the source if the data cleansing process fails for some reason.

There is a truncation setting on the tables where you can choose to truncate the raw table after data cleansing. This option will, however not free any space in the database, since the space allocated will still be reserved for the table - and the space will be needed on the next load.

The two other timeXtender table types are the _L and _M tables.

This article applies to: timeXtender 4.5, tX2012, TX2014. Last updated: 2014-03-24.

Was this article helpful?
1 out of 1 found this helpful


  • 0
    Julian Thomas

    Thanks for the explanation. I have one further the case of keeping history on the target table, will the RAW table only contain the data for that current load? Or does history build up in the RAW table as well?

  • 1
    Thomas Lørup Duun

    The history is gathered in the Valid table. The contents of the Raw table will be used as input to the history process which could be explained like this:

    First it will check if a record in the raw table also exist in the valid table based on the primary key.

    If it does not, then it will be inserted as a new record in the valid table.

    If it does, then it will check if there are any changes in fields declared as Type 2 fields

    If there is, then it will create a new instance of the record in the valid table and adjust the history fields accordingly

    If there is not, then it will check if there are any changes in fields declared as Type 1 field

    If there is, then it will update the existing record in the valid table.

    If not, then we move on to the next record in the raw table.

  • 0
    Haritha Cherukuri

    What is a _T view?

  • 0
    Thomas Lørup Duun

    The _T view is the transformation view. It is a view on the data in the _R table with the transformations added.

Please sign in to leave a comment.