Skip to content

Commit

Permalink
[FEATURE] Tableau Hyper (#49)
Browse files Browse the repository at this point in the history
<!--- Provide a general summary of your changes in the Title above -->
Provide the capability to write into the Tableau Hyper format, that
allows loading datasource data independently from the Tableau server.

## Description
<!--- Describe your changes in detail -->
Writing data into hyper from List, Parquet, Dataframe.
Reading data from Hyper into Dataframe.
Publishing Hyper to the Tableau server.

## Related Issue
<!--- This project only accepts pull requests related to open issues -->
<!--- If suggesting a new feature or change, please discuss it in an
issue first -->
<!--- If fixing a bug, there should be an issue describing it with steps
to reproduce -->
<!--- Please link to the issue here: -->
#45 

## Motivation and Context
<!--- Why is this change required? What problem does it solve? -->
In certain scenarious loading data into the datasource by means of
Tableau server may take too much time (and depending on Tableau server
timeouts, may even fail). Creating Hyper files independently from
Tableau allows much faster load times.

## How Has This Been Tested?
<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran
to -->
<!--- see how your change affects other areas of the code, etc. -->
Unit tests / Publishing to the Tableau server

## Screenshots (if appropriate):

## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)

## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes
that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [x] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [x] I have read the **CONTRIBUTING** document.
- [x] I have added tests to cover my changes.
- [x] All new and existing tests passed.
  • Loading branch information
maxim-mityutko authored Sep 4, 2024
1 parent 5819ed9 commit c0e3053
Show file tree
Hide file tree
Showing 11 changed files with 904 additions and 0 deletions.
9 changes: 9 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ authors = [
# TODO: add other contributors
{ name = "Danny Meijer", email = "[email protected]" },
{ name = "Mikita Sakalouski", email = "[email protected]" },
{ name = "Maxim Mityutko", email = "[email protected]" },
]
classifiers = [
"Development Status :: 5 - Production/Stable",
Expand Down Expand Up @@ -63,6 +64,11 @@ se = ["spark-expectations>=2.1.0"]
sftp = ["paramiko>=2.6.0"]
delta = ["delta-spark>=2.2"]
excel = ["openpyxl>=3.0.0"]
# Tableau dependencies
tableau = [
"tableauhyperapi>=0.0.19484",
"tableauserverclient>=0.25",
]
dev = ["black", "isort", "ruff", "mypy", "pylint", "colorama", "types-PyYAML"]
test = [
"chispa",
Expand Down Expand Up @@ -180,6 +186,7 @@ features = [
"excel",
"se",
"box",
"tableau",
"dev",
]

Expand Down Expand Up @@ -244,6 +251,7 @@ features = [
"sftp",
"delta",
"excel",
"tableau",
"dev",
"test",
]
Expand Down Expand Up @@ -399,6 +407,7 @@ features = [
"sftp",
"delta",
"excel",
"tableau",
"dev",
"test",
"docs",
Expand Down
Empty file.
Loading

0 comments on commit c0e3053

Please sign in to comment.