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

Uploaded Source

Built Distribution

etl_converter_talenttech-1.2.2-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: etl-converter-talenttech-1.2.2.tar.gz
  • Upload date:
  • Size: 7.1 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.2.tar.gz
Algorithm Hash digest
SHA256 a349937d81c3d3aea6d78cd0bb437c1d7b3cfe67664a4f5be42c24d50d80e751
MD5 4530a0ae34cdcab647fa202d8c872eac
BLAKE2b-256 f68ced4f0effecfff30272e3e0a76701afb8eada6369498290fc0efad21bcd59

See more details on using hashes here.

File details

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

File metadata

  • Download URL: etl_converter_talenttech-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 7.9 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9d4e253324c52cd5912333037748b88e27a50c41e4d9c8d67a38df5912f5f9c9
MD5 202921fbeaa335bf9dcd2eeeea0f4591
BLAKE2b-256 164e028950e26e3346c51496b4838594003b3721b0a989e2f9c47efa9cfcd322

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