BladePipe 1.9.0: New data pipelines, faster Oracle writes, and improved stability.
跳到主要内容

PostgreSQL 到 Elasticsearch

选择对端数据库:

数据链路

基本功能

功能说明
Schema Migration

If the target index does not exist, BladePipe will create the index mapping in the target based on the source metadata and mapping rules.

Full Data Migration

Migrate data by sequentially scanning data in tables and writing it in batches to the target database.

Incremental Data Sync

Sync of common DML like INSERT, UPDATE, DELETE is supported.
UPDATE and DELETE for tables without primary keys are not synced.

Data Verification and Correction

Verify all existing data. Optionally, you can correct the inconsistent data based on verification results. Scheduled DataTasks are supported.
For more information, see Create Verification and Correction DataJob.

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.

Index Name Mapping

Support the mapping rules, namely, concatenation with underscores (dataJobName_DB_SCHEMA_table), keeping the name the same as that in Source, converting the text to lowercase, converting the text to uppercase, truncating the name by "_digit" suffix.

DDL Sync

PostgreSQL DDL sync is realized by triggers. The user should have the permissions on triggers and tables. For more information, see Permissions Required for PostgreSQL

Metadata Retrieval

Retrieve the target metadata with filtering conditions or target primary keys set from the source table.

高级功能

功能说明
全量前清空目标数据

运行全量任务前清除老数据,包括重跑任务、定时全量迁移都会触发此能力

重建目标表

运行全量任务前重建目标表,包括重跑任务、定时全量迁移都会触发此能力

ES 时间写入格式

以该字段的第一个时间格式写入 Elasticsearch,如果未设置时间格式,则使用 yyyy-MM-dd'T'HH:mm:ss 格式

ES 时区设置

只有当时间格式的时区为 ZZZZZ 时,才会将页面设置的时区写入到 Elasticsearch

Optional Fields in Indexing

By default, all fields are indexed. Specific fields can be excluded from indexing.

Field-level Analyzers

Allow selecting analyzers for string fields that are indexed. Support STANDARD (default), SIMPLE, and other common analyzers, with the option to specify custom analyzers.

Setting Index _id Field

By default, the _id field is a concatenation of the source primary key values. It can be changed to other field values.

Scheduled Full Data Migration

For more information, see Create Scheduled Full Data DataJob.

Custom Code

For more information, see Custom Code Processing, Debug Custom Code and Logging in Custom Code.

Data Filtering Conditions

Support data filtering using WHERE conditions, with SQL-92 as the SQL language. For more information, see Data Filtering.

Setting Target Primary Key

Change the primary key to another field to facilitate data aggregation and other operations.

使用示例

标题详情
Elasticsearch 对端同步技术详解

文档:Elasticsearch 对端同步技术详解


源端数据源

前置条件

条件说明
账号权限

需要权限如下(以自建数据库为例):

  • GRANT ALL PRIVILEGES ON DATABASE 同步库 TO 同步账号(或同步库 information_schema 中所有视图的 SELECT 权限和需要同步表、索引、约束的 SELECT 权限)
  • ALTER USER 同步账号 REPLICATION
增量同步准备

准备动作按如下步骤进行:

  • 修改 postgresql.conf, 设置 wal_level=logical 和 wal_log_hints = on
  • 修改 pg_hba.conf, 设置 host replication 同步账号 CIDR网段 md5 , host 同步库 同步账号 CIDR网段 md5, host postgres 同步账号 CIDR网段 md5
  • 重启 PostgreSQL
网络准备

迁移同步节点(sidecar)可连接 PostgreSQL 标准交互接口(如 5432)

任务参数

参数名称说明
fullFetchSize

全量扫描数据设置的 fetch size

eventStoreSize

缓存解析完毕的增量事件缓存大小

ignoreGisSRID

解析 GIS 数据类型时是否忽略 SRID

defaultGisSRID

设置 GIS 数据类型的 SRID

Tips: 通用参数配置请参考 通用参数及功能


目标端数据源

前置条件

条件说明
账号权限

具备索引的 create, delete, create_index, delete_index, read, write 权限

网络准备

迁移同步节点(sidecar)可连接 Elasticsearch 节点

任务参数

参数名称说明
maxBulkSizeMb

单表最大攒批容量,超过此容量则刷出数据到写入队列

totalDataInMemMb

攒批写入,内存中最大数据容量,超过此容量或超过 asyncFlushIntervalSec 则刷出数据到写入队列

asyncFlushIntervalSec

攒批写入,等待刷出的间隔时间,超过此时间或超过 totalDataInMemMb 则刷出数据到写入队列

realFlushPauseSec

使用 Bulk Write 刷出数据到 ElasticSearch 的等待时间,0 则不等待

pkSeparator

拼接 _id 的分隔符(字段数 > 1)

enableBulkSizeThreshold

启用批量写入模式(默认开启)

Tips: 通用参数配置请参考 通用参数及功能