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.1.1.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

etl_converter_talenttech-1.1.1-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: etl-converter-talenttech-1.1.1.tar.gz
  • Upload date:
  • Size: 6.3 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.1.0 requests-toolbelt/0.8.0 tqdm/4.47.0 CPython/3.6.11

File hashes

Hashes for etl-converter-talenttech-1.1.1.tar.gz
Algorithm Hash digest
SHA256 59cdfe059ec2d75130cfcf8e800807492d75cd2ee361f1bd58207df1cf4d4869
MD5 c6743f725ebdc6972eaa3248273ed675
BLAKE2b-256 66c18ef39c8eca82640633c73649412be1b4d0d357357b434aed19bf47686d28

See more details on using hashes here.

File details

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

File metadata

  • Download URL: etl_converter_talenttech-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.3 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.1.0 requests-toolbelt/0.8.0 tqdm/4.47.0 CPython/3.6.11

File hashes

Hashes for etl_converter_talenttech-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c30da0eb47667c0e571268c8bd8b1bb70c8719f27c6e236cc8210991a7da9a64
MD5 f32739b254d72da8f9c4c9de9d4817a5
BLAKE2b-256 19594c575eae64af3c48ab7e34804b8ddf23238ad9eef1d4d69a1712e4b93368

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