Download the PHP package keboola/table-backend-utils without Composer

On this page you can find all versions of the php package keboola/table-backend-utils. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package table-backend-utils

Table backend utils

Common stuff for table backends (Snowflake|Synapse|Redshift) shared between apps.

Interfaces

Database

Keboola\TableBackendUtils\Database\DatabaseReflectionInterface

Schema

Keboola\TableBackendUtils\Schema\SchemaReflectionInterface

Function to retrieve information's about schema:

Table

Keboola\TableBackendUtils\Table\TableReflectionInterface

Function to retrieve information's about table:

Keboola\TableBackendUtils\Table\TableQueryBuilderInterface

Queries to work with table:

Keboola\TableBackendUtils\Table\TableStatsInterface

Table statistics

Column

Keboola\TableBackendUtils\Column\ColumnInterface

Table column definition:

View

Keboola\TableBackendUtils\View\ViewReflectionInterface

Function to retrieve information's about view:

Auth

Keboola\TableBackendUtils\Auth\UserReflectionInterface

Keboola\TableBackendUtils\Auth\GrantQueryBuilderInterface

Development

Preparation

Set up envs:

Set TEST_PREFIX= ENV

SYNAPSE

Create synapse server on Azure portal or using CLI.

set up env variables:

Teradata

Prepare Teradata servers on AWS/Azure and set following properties. See

create new database for tests:

set up env variables:

AWS

In order to download TD odbc driver, create a user who can access S3 bucket with the driver package.

set up env variables:

Exasol

Run Exasol on your local machine in docker (for this case .env is preconfigured)

Run Exasol server somewhere else and set up env variables:

issues:

Snowflake

Prepare credentials for Snowflake access

set up env variables:

Bigquery

To prepare the backend you can use Terraform template. You must have the resourcemanager.folders.create permission for the organization.

After terraform apply ends go to the service project in folder created by terraform.

  1. go to the newly created service project, the project id are listed at the end of the terraform call. (service_project_id)
  2. click on IAM & Admin
  3. on left panel choose Service Accounts
  4. click on email of service account(there is only one)
  5. on to the top choose Keys and Add Key => Create new key
  6. select Key type JSON
  7. click on the Create button and the file will automatically download
  8. convert key to stringawk -v RS= '{$1=$1}1' <key_file>.json >> .env
  9. set content on last line of .env as variable BQ_KEY_FILE

setup envs:

Tests

Run tests with following command.

Unit and functional test can be run sepparetly

Code quality check

Full CI workflow

This command will run all checks load fixtures and run tests

Teradata connection

You can use following method to get connection to Teradata for your queries

If you want to use connection via PHPStorm DataGrip or other DB client, remove port when you setting up connection in client. Otherwise test connection will fail.

License

MIT licensed, see LICENSE file.


All versions of table-backend-utils with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
ext-json Version *
ext-odbc Version *
ext-pdo Version *
doctrine/dbal Version ^3.3
google/cloud-bigquery Version ^1.23
keboola/common-exceptions Version ^1
keboola/php-datatypes Version ^7.6
keboola/php-utils Version ^4.1
keboola/retry Version ^0.5.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package keboola/table-backend-utils contains the following files

Loading the files please wait ....