MariaDB to Redis
BladePipe supports data replication from MariaDB to Redis. View supported migration, sync, verification, and connector capabilities.
| Function | Description |
|---|---|
Full Data Migration | Migrate data by sequentially scanning data in tables and writing it in batches to the target database. The default data format is JSON. |
Incremental Data Sync | Sync of common DML like INSERT, UPDATE, DELETE is supported. |
Data Verification and Correction | Verify all existing data. Optionally, you can correct the inconsistent data based on verification results. Scheduled DataTasks are supported. |
Subscription Modification | Add, delete, or modify the subscribed tables with support for historical data migration. For more information, see Modify Subscription. |
Position Resetting | Reset positions by file position or timestamp. Allow re-consumption of incremental data logs in a past period or since a specific Binlog file and position. |
Advanced Functions
| Function | Description |
|---|---|
Cache Expiration Time | Allow setting the cache expiration time (in seconds) for data after it is written to Redis. |
Concatenated Key | Form the target cache key by concatenating source database, table, and primary key value with colons. |
JSON Data Format | Serialize structured source data into JSON format. Allow field name conversion based on the rules, such as keeping the name the same as that in Source, converting the text to lowercase, converting the text to uppercase, or camel case. |
Limits
| Limit | Description |
|---|---|
MySQL Storage Engine | Support InnoDB, MyISAM, AWS XEngine. Other storage engines have not been tested yet. |
MySQL Character Set | Support utf8, utf8mb4, latin1. Other encodings have not been tested yet. |
FAQ
What to do when access to schema in MySQL Source is denied?
Tip: MySQL source-related FAQ also applies to MySQL-based DataSources.
Prerequisites
| Prerequisite | Description |
|---|---|
Permissions for Account | |
Enabling Binlog | [mysqld] |
Parameters
| Parameter | Description |
|---|---|
parseBinlogParallel | Number of threads for parallel parsing of Binlog in Incremental DataJobs. |
parseBinlogBufferSize | Size of the circular buffer for parsing Binlog in Incremental DataJobs. |
maxTransactionSize | Maximum number of data rows per transaction. If exceeded, the transaction will be split and flushed in parts. |
limitThroughputMb | Limit the throughput of incremental Binlogs. |
extraDDL | Support synchronization of additional DDL, including PT, GHOST, ALI_DMS, and PT_GHOST. |
needJsonEscape | Escape special characters in JSON to be written to the target database. |
fullDataSqlConditionEnabled | Add filtering conditions in SQL during source data scanning. It only works in Full Data migration. |
srcTimeZone | Source time zone, e.g., +08:00, Asia/Shanghai, America/New_York, etc. |
Tips: To modify the general parameters, see General Parameters and Functions.
Prerequisites
| Prerequisite | Description |
|---|---|
Port Preparation | Allow the migration and sync node (Worker) to connect to the Redis/AWS ElastiCache port and Sentinel port (if available). |
Parameters
| Parameter | Description |
|---|---|
isSentinel | true represents Redis Sentinel Cluster, while false represents Single Node or Sharded Cluster. |
sentinelUser | Username for connecting to Sentinel. |
sentinelPassword | Password for connecting to Sentinel. |
sentinelMasterName | Master Name specified in the Redis Sentinel configuration. |
secondsToExpire | Use the set command to specify the expiration time of data written to the Target; -1 means no limit. |
Tips: To modify the general parameters, see General Parameters and Functions.