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
-------------
```sh
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
```sh
pip3 install etl-converter-talenttech
```
```python
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))
挣扎的蓝藻
- 粉丝: 14w+
- 资源: 15万+
最新资源
- 机械设计六轴同步焊接机sw17可编辑项目全套技术资料.zip
- 基于springboot的精品在线试题库系统源码(java毕业设计完整源码+LW).zip
- 基于springboot的新闻稿件管理系统源码(java毕业设计完整源码+LW).zip
- 机械设计破冰除雪机sw18项目全套技术资料.zip
- 基于springboot的作业管理系统源码(java毕业设计完整源码+LW).zip
- 机械设计潜伏式磁导航AGV-sw14项目全套技术资料.zip
- 基于Springboot+Vue大学生就业招聘系统毕业设计源码案例全部资料(高分项目)
- 基于springboot的在线教育系统源码(java毕业设计完整源码+LW).zip
- 基于springboot的卓越导师双选系统设计与实现源码(java毕业设计完整源码+LW).zip
- PHP最新仿WX即时聊天源码支持视频语音聊天
- 证件照处理方法与工具比较
- 十进制与二进制互相转换方法及Python代码实现详解
- 数据结构oj答案PDF
- 基于springboot的健身房管理系统源码(java毕业设计完整源码+LW).zip
- 基于微博数据的舆情分析项目,包括微博爬虫、LDA主题分析和情感分析源码+资料齐全
- 基于多维分类的知识管理系统源码(java毕业设计完整源码+LW).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈