Skip to main content

macrometa-target-mongo

macrometa-target-mysql is a Macrometa connector for writing data into MySQL, can be used as a target for any Data Mesh Integration.

Installation

Use PIP for installation:

pip install macrometa-target-mysql

Configuration

The available configuration options for macrometa-target-mysql are:

Property Type Required? Description
host String Yes MySQL host
port Int Yes MySQL port
username String Yes MySQL user
password Password Yes MySQL password
database String Yes MySQL database name
target_table String Yes Destination table name
batch_flush_size Int No Maximum size of batch. Exceeding this will trigger a batch flush
batch_flush_interval Int No Time between batch flush executions
hard_delete Boolean No When hard_delete option is true, DELETE SQL commands will be performed in MySQL to delete rows
add_metadata_columns Boolean No Metadata columns add extra row level information about data ingestion,
(i.e. when was the row read in source, when was inserted or deleted in MySQL etc.) Metadata
columns are created automatically by adding extra columns to the tables with a column prefix _SDC_.
The column names are following the stitch naming conventions documented at
link.
ssl Boolean No If set to true then use SSL for connecting with MySQL.
If the server does not accept SSL connections or the client certificate is not recognized
then the connection will fail.
ssl_check_hostname Boolean No Flag to configure whether SSL handshake should verify that the certificate
matches the DB hostname.
ssl_root_ca_cert File No Specific CA certificate in PEM string format. This is most often the case
when using self-signed server certificate.
ssl_client_certificate File No Specific client certificate in PEM string format. The private key for the client
certificate should be specified in a different parameter, SSL Client Key.
ssl_client_key File No Specific client key in PEM string format.

Configurations can be stored in a JSON configuration file and specified using the --config flag with macrometa-target-mysql.

Usage

cat <input_stream> | macrometa-target-mysql --config <config.json>
  • <input_stream>: Input data stream
  • <config.json>: JSON configuration file

macrometa-target-mysql reads data from a Singer Tap and writes it to a MySQL database. Run Singer Tap to generate data before launching macrometa-target-mysql.

Here's an example of using Singer Tap with macrometa-target-mysql:

tap-exchangeratesapi | target-mysql --config config.json

In this case, tap-exchangeratesapi is a Singer Tap that generates exchange rate data. The data is passed to macrometa-target-mysql through a pipe(|), and macrometa-target-mysql writes it to a MySQL database. config.json contains macrometa-target-mysql settings.

Developer Resources

Initializing the Development Environment

pipx install poetry
poetry install

Creating and Running Tests

Create tests in the macrometa_target_mysql/tests subfolder and run:

poetry run pytest

Use poetry run to test macrometa-target-mysql CLI interface:

poetry run target-mysql --help

Testing with Meltano

Note: This target functions within a Singer environment and does not require Meltano.

Firstly, install Meltano and necessary plugins:

# Install Meltano
pipx install meltano

# Initialize Meltano in this directory
cd target-mysql
meltano install

Then, test and orchestrate with Meltano:

# Call tests:
meltano invoke macrometa-target-mysql --version

# Or execute pipeline with Carbon Intensity sample tap:
meltano run tap-carbon-intensity target-mysql

Reference Links

Metadata

Release files for macrometa-target-mysql 0.0.12

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for macrometa-target-mysql 0.0.12
File Size Uploaded
macrometa-target-mysql-0.0.12.tar.gz 107.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for macrometa-target-mysql 0.0.12
File Interpreter ABI Platform
macrometa_target_mysql-0.0.12-py3-none-any.whl Python 3 none any Details

Total release size: 228.2 kB

Release files / macrometa-target-mysql-0.0.12.tar.gz

Download URL macrometa-target-mysql-0.0.12.tar.gz
Size 107.1 kB
Tags Source
SHA-256 checksum
How to use checksums
070643ca1e1305666b9d33f1e97760b7b58b22c0da7e30d23748f32bc72df3ae
BLAKE2b-256 checksum
How to use checksums
8cecc15133a0a4ce9a873fada73dd2cc011936ef0f98caf531a3438fe6a1f3c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.18

Release files / macrometa_target_mysql-0.0.12-py3-none-any.whl

Download URL macrometa_target_mysql-0.0.12-py3-none-any.whl
Size 121.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4404e4509e6417f6b2e7fd824fa2ccfed35e7d7693af99ed779a166d7ebec421
BLAKE2b-256 checksum
How to use checksums
73161f651bb1636ba5189083a7785708d28dc305abe559a61fb591e0a17f8b21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.18

Release history Release notifications | RSS feed

This release

0.0.12 This release

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page