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

Uploaded Source

Built Distribution

etl_converter_talenttech-1.2.5-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: etl-converter-talenttech-1.2.5.tar.gz
  • Upload date:
  • Size: 7.0 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.48.0 CPython/3.6.11

File hashes

Hashes for etl-converter-talenttech-1.2.5.tar.gz
Algorithm Hash digest
SHA256 6dba790a50f86bd7b3a8cb5526d693ae169fe07b41ded7b504592fab44c1becc
MD5 e91747f678e35e7c4af2b0e0a49b8f25
BLAKE2b-256 87a34da6b39e660feb7dc773297536646910b51765719b7722cbcf302cfa24fe

See more details on using hashes here.

File details

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

File metadata

  • Download URL: etl_converter_talenttech-1.2.5-py3-none-any.whl
  • Upload date:
  • Size: 8.1 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.48.0 CPython/3.6.11

File hashes

Hashes for etl_converter_talenttech-1.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4a5e84e0459ab55033dab754ae78b9bad3cf0674dc6699981970ebb15a12733b
MD5 bad28368f0274d0f2275ac9d08860cbc
BLAKE2b-256 873ad31bf597301cddc24a480980bfa02bd87f42e4f423abc93b758d520bd136

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