同步MySQL数据到ElasticSearch
Project description
MySync
同步MySQL数据到ElasticSearch
支持全量同步
必须有自增id
安装
$ pip install mysync
$ mysync
# run config test
$ mysync -t config.yml
# run sync
$ mysync -c config.yml
默认的配置文件default_config.yml
# 输入配置
input:
# 数据库配置
mysql:
db_url: ~
# 或者
host: '127.0.0.1'
port: 3306
database: data
username: root
password: ''
# 主键列名
primary_key: id
# 主键类型
primary_type: int
# 同步的表名,必填
# table: ''
# 需要同步字段
fields: '*'
# 分页大小
size: 10
# 生产者,会按照路径导入
producer: 'mysync.producer.mysql_producer@producer'
# 启用同步点
sync_point: true
# 同步点文件
sync_file: ~
# 数据处理管道
pipeline:
handlers: ~
# 输出配置
output:
# ES配置
elasticsearch:
hosts:
- 'http://127.0.0.1:9200'
# 索引名,必填
# index: ''
# 操作:index, update
action: 'index'
# 文档type
document_type: 'doc'
# 文档id
document_id: 'id'
# 是否在控制台输出json
stdout: false
# 数据消费者
consumer: 'mysync.consumer.es_consumer@consumer'
默认的处理器
# 生产者,会按照路径导入
producer: 'mysync.producer.mysql_producer@producer'
# 数据消费者
consumer: 'mysync.consumer.es_consumer@consumer'
# 可选的数据处理器
handlers:
- mysync.pipeline.field_mapping_pipeline@pipeline
接口说明
生产者
def producer(config):
处理器
def pipeline(config, rows)
消费者
def consumer(config, rows):
TODO
1. 配置文件继承
extends
2. 配置文件运行前检测 -t
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
MySync-0.0.13.tar.gz
(7.4 kB
view details)
Built Distribution
MySync-0.0.13-py3-none-any.whl
(11.6 kB
view details)
File details
Details for the file MySync-0.0.13.tar.gz
.
File metadata
- Download URL: MySync-0.0.13.tar.gz
- Upload date:
- Size: 7.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6c9303b297b731754c0bc2a907f7b3a54c73833b49152a7e7b5372621eb688f |
|
MD5 | 241fbb8c5d152ef5fbae342f58b5e2a8 |
|
BLAKE2b-256 | 9dbe6646432bd5b07bbf7b091979f40d59f4ef75058ba01c7d52c6a46e942969 |
File details
Details for the file MySync-0.0.13-py3-none-any.whl
.
File metadata
- Download URL: MySync-0.0.13-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85b26d3c26cdcc35b7da461fc94aaa698085bf17962b7084713c2875a55cc732 |
|
MD5 | 73f4930c2dd9c07cdb482d0a0605e7da |
|
BLAKE2b-256 | 06556e24e65ffd1715a5c409f54fd28facffa14233dcd74c085e6ba95053070e |