Skip to content
This repository has been archived by the owner on Dec 22, 2021. It is now read-only.
/ trext Public archive

TRExt - Tableau Refresh Extract (Externally)

License

Notifications You must be signed in to change notification settings

AtheonAnalytics/trext

Repository files navigation

https://travis-ci.org/AtheonAnalytics/trext.svg?branch=master https://coveralls.io/repos/github/AtheonAnalytics/trext/badge.svg?branch=master Documentation Status

TRExt

TRExt is short for Tableau Refresh Extract (Externally).

TRExt is a means to refresh a Tableau Extract (.tde files) externally so the Tableau Server can serve visual content without having to compete for resources while refreshing extracts internally.

Dependencies

The main dependencies are:

The repo also supports

Installation

You need pip to install TRExt.

You can install the latest version of the package straight from PyPI using:

$ pip install trext

You can also directly install from GitHub directly using:

$ pip install git+git@github.com:AtheonAnalytics/trext.git

or

$ pip install git+https://github.com/AtheonAnalytics/trext.git

Usage

Create an extract

>>> import trext
>>> tde = trext.Extract()
>>> connection_string = "appropriate db connection string"
>>> tde.create("db.schema.table", conn_string=connection_string, dbtype='exasol')
Created!
>>> tde.location
/temp/extract.tde

Publish to Tableau Server (overwrites existing extract)

>>> tableau_auth_details = ("username", "password")
>>> publish_details = ("site_content_url", "project_name")
>>> tde.publish("tableau server address", auth=tableau_auth_details, params=publish_details)
Published!

Refreshing an extract is now replaced with creating and publishing an extract. You can use this is conjunction with TabAuto (not yet open source) or with Tableau's server-client-python library to get the datasource names that need refreshing.


Documentation

More detailed documentation is available at http://trext.rtfd.io


Disclaimer

TRExt is still a Work-in-Progress

I wrote most of this codebase when Tableau SDK was released for Tableau 8 and never got around to moving it from a POC/local copy to open source, so this a rough-and-ready type of library.

This is fair warning to anyone who uses this library: there will be bugs, bad documentation and no tests for a short while till I fix it up. So please use with care and if you find issues submit a bug report or a PR.

If you want to contribute and add tests, better documentation, new connectors, cleaner interface etc, please do and submit a PR.

Oh and don't forget to add yourself to AUTHORS

Note: I have tested TRExt only on a Linux distro, so if you find any issues on other Operating Systems please do create a bug report and I can try to fix it, but if you do know how to fix it please also submit a PR.