Skip to main content

TopMind ETL converter

Project description

ETL table converter and creator

The Python Toolkit for converting table from one database to another

Databases types

Supported databases. You have to use short name of database short_name:type of database

  • ch:clickhouse
  • pg:postgresql
  • mysql:mysql
  • vertica:vertica
  • exasol:exasol

Supported database conversions

  • mysql to pg
  • mysql to vertica
  • mysql to exasol
  • ch to vertica
  • pg to vertica

Credentials

sql_credentials = {
    "pg": {
        "database": os.getenv("PG_DATABASE"),
        "schema": os.getenv("PG_SCHEMA"),
        "user": os.getenv("PG_USER"),
        "host": os.getenv("PG_HOST"),
        "port": os.getenv("PG_PORT"),
        "password": os.getenv("PG_PASSWORD")
    },
    "ch": {
        "database": os.getenv("CH_DATABASE"),
        "user": os.getenv("CH_USER"),
        "host": os.getenv("CH_HOST"),
        "port": os.getenv("CH_PORT"),
        "password": os.getenv("CH_PASSWORD")
    },
    "vertica": {
        "database": os.getenv("VERTICA_DATABASE"),
        "schema": os.getenv("VERTICA_SCHEMA"),
        "user": os.getenv("VERTICA_USER"),
        "host": os.getenv("VERTICA_HOST"),
        "port": os.getenv("VERTICA_PORT"),
        "password": os.getenv("VERTICA_PASSWORD")
    },
    "mysql": {
        "database": os.getenv("MYSQL_DATABASE"),
        "user": os.getenv("MYSQL_USER"),
        "host": os.getenv("MYSQL_HOST"),
        "port": os.getenv("MYSQL_PORT"),
        "password": os.getenv("MYSQL_PASSWORD")
    }
}

Usage

pip3 install etl-converter-talenttech
import os
from converter.fields_converter import FieldsConverter

tables = [
    "directions",
    "users"
]
from_db = "mysql"
to_db = "pg"
converter = FieldsConverter(sql_credentials, from_db, to_db, tables=tables)

print(converter.get_columns(tables[0]))
print(converter.get_columns(tables[0], table_from=False))
print(converter.create_list_of_tables(tables, to_create=False, dir=None))

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

etl-converter-talenttech-1.2.1.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

etl_converter_talenttech-1.2.1-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file etl-converter-talenttech-1.2.1.tar.gz.

File metadata

  • Download URL: etl-converter-talenttech-1.2.1.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.8.0 tqdm/4.47.0 CPython/3.6.11

File hashes

Hashes for etl-converter-talenttech-1.2.1.tar.gz
Algorithm Hash digest
SHA256 9d746f7ec78343738c8b417c442464e7cfb22079bc4109cc83b823d8342f26ca
MD5 42d8f752de3fecbc5079bc2854cd348e
BLAKE2b-256 af97bf9b91f3ebd5c82eeb9b42f94ab4e1adfaceab3aae59552b2ff84ad65506

See more details on using hashes here.

File details

Details for the file etl_converter_talenttech-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: etl_converter_talenttech-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.8.0 tqdm/4.47.0 CPython/3.6.11

File hashes

Hashes for etl_converter_talenttech-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7fd2dbb2b69424c2c47959a2f0c3bb88629e623cec360ee9409ac0d6be5acab7
MD5 f4cc20c69760a159afb490a1d0a96d9e
BLAKE2b-256 055ab7e6a8db5b9eebf179d561413cbd10a17137c713497bd5ac09e42f560e1c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page