Open-source project
shaiwz/data-platform-open avatar
shaiwz/data-platform-open

data-platform-open and a drag-and-drop data integration backend

🔥🔥🔥可视化拖拽式大数据集成平台、大数据平台、大数据,包含数据流、数据源、数据对齐、查询模板、智能问数、AI集成、完善的监控等。像画流程图一样且无代码方式同步、清洗数据。

642 stars76 forksJavaNOASSERTION

At a glance

What is it?
data-platform-open is the Java backend of a visual, no-code data integration platform that builds sync and cleaning pipelines on a canvas, adds consistency checks between sources, and serves query templates as APIs. The interesting parts are the multi-module layout and the deployment model, and the part to read carefully before adopting is the patent notice, because the project restricts use far more than a typical open source licence does.
Who is it for?
data-platform-open is a good fit for a team that wants to build sync and cleaning pipelines visually rather than by writing integration code, and that already runs MySQL, Kafka, StarRocks, Doris, Oracle or ElasticSearch and wants one platform to manage them, because the source, flow, query and monitoring modules cover the whole path from ingestion to a served query.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 5 days ago.
What is it written in?
Mainly Java, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.

Editorial analysis

The pipeline canvas and the no-code claim

The project describes itself as a visual drag-and-drop big data integration platform, and the readme is mostly a walkthrough of the screens behind that claim.

The core surface is the data flow canvas. A flow can be built by dragging components onto a canvas, covering data synchronisation, data cleaning and filtering, and report data generation, with no code written at any point. Downstream nodes support specifying execution order, which matters for a pipeline where one step's output is another's input.

The data source side is plugin-based, so new sources can be added without touching the core. Sources support a sharding algorithm, health checks and data masking configuration, and each source gets its own console, with the readme showing consoles for MySQL, StarRocks, Doris, Oracle, Kafka and ElasticSearch.

Two design points in the flow section are worth calling out. The platform can receive FlinkCDC and Canal messages, and a strategy pattern allows other platforms' data to be plugged in without the sending side needing any change, so an existing producer does not have to be modified to feed this system. And publishing is described as having controllable server resources, automatic fault tolerance, dynamic scaling of nodes where more service nodes mean better performance, multiple versions, and rollback.

The audience is a data engineer or analyst who would rather draw a pipeline than write and deploy a job, and who needs the operational surface, run logs and monitoring, that comes with it.

Data alignment, the feature no other demo screenshots

The data alignment section is the part of the platform that goes beyond integration, and it addresses a problem most sync tools leave to you.

Data alignment lets you configure, through a simple page, a consistency check between any two data sources, of different types, across tables or indexes, and then alert on mismatch and support automated repair. The creation screen configures when the check triggers and the alignment strategy, with options covering matching counts, matching content, random counts and comparison time ranges. There is a list view of alignment tasks, a log view for how each task ran, and a detail view that shows the inconsistent data from a specific run and points out which fields differ.

That is a genuinely different capability from sync. Sync moves data; alignment asserts that two copies of the truth agree, which is what you need when data lands in a warehouse by two different routes and you need to know when they diverge.

The query template section completes the path from source to consumer. A query template creates a query task quickly against multiple data sources, and the stated purpose is that backend developers no longer have to write query reports or provide data query interfaces themselves. Templates support dynamic conditions, rate limiting, logging and caching configuration, plus version control, keys and permission configuration. The preview page carries sample documentation and a quick test, and once the test passes you publish, after which an external service can call it.

So the flow is: consume from sources, align and repair, and expose a stable query API without writing a backend service per report.

The AI parts are assistive, not autonomous

The readme makes a lot of the AI capability, and it is worth reading the specifics rather than the headline.

The stated position is that the platform has deeply integrated AI capabilities, that a single sentence can be used to build a data flow or a query template, and that this lowers the barrier to entry. The mechanism is described in the screenshots section: during flow construction the AI can render, modify or delete components one at a time, and the thinking process is shown.

The incremental point is specific and useful. Modifications can be applied row by row, or as deletions, rather than re-rendering everything, which the readme connects to saving tokens. There is also token usage accounting and a record of the conversation detail, so you can see what the model was doing and diagnose a bad result.

The other AI feature is described as intelligent data querying, where asking a question produces an answer, with a link to a published article about it, and a data dashboard is shown alongside.

The honest reading is that the AI here is an assistant over a structured representation of the platform, not an agent with free rein. It edits components in a canvas and answers questions over configured data. That is a narrower claim than an autonomous data engineer, and it is the kind of assistance that can be reviewed before it is applied.

Five Maven modules and one deploy script

The repository layout shows a Maven multi-module project with a clear split. The modules are data-platform-open-common, data-platform-open-flow, data-platform-open-query, data-platform-open-support and data-platform-open-web, alongside a pom.xml at the root, a Dockerfile, a deploy.sh, a docker directory and a .workflow directory.

The names map onto the feature areas. The common module is shared code, flow is the data flow engine, query is the query template service, support is presumably the shared support layer, and web is the HTTP layer. The build uses Maven with the standard toolchain, and the code is Java.

The Dockerfile shows how a module is packaged, and it is a two-stage build. The builder stage uses a Maven 3.9 image, takes a SOURCE_DIR build argument, copies the tree, and then installs the common module and the selected module separately with separate mvn invocations. It also writes a Maven settings.xml pointing central at an Aliyun mirror, which is a regional optimisation rather than anything semantic.

The runtime stage is a single jar on an OpenJDK 21 base image:

dockerfile
FROM registry.cn-beijing.aliyuncs.com/daodao-bot/openjdk:21
ARG SOURCE_DIR
COPY --from=builder /build/${SOURCE_DIR}/target/*.jar app.jar
VOLUME /tmp
EXPOSE 80
ENTRYPOINT ["java","-jar","/app.jar"]

The SOURCE_DIR argument is what makes one Dockerfile serve all five modules: the same image definition is built once per module, with the argument selecting which pom.xml to package. The container exposes port 80 and declares a volume at /tmp, which is where the JVM writes temporary files.

The base images come from a private Aliyun registry rather than Docker Hub, so a deployment needs access to that registry or a locally built equivalent. The deploy.sh script and the docker directory are where that orchestration lives, and the readme does not document them in detail.

Monitoring, and the operations surface the readme leads with

The home page is described as a composite dashboard for checking system operation, data consistency, data source health rate and alerts, and the readme opens its feature walkthrough there.

Data flow statistics monitor the running situation of data flows and the pressure on the flow server. Clicking the processor or the memory figure shows server run information, and the same server details are also available in the service monitoring section. Query template statistics show how often templates are being called and the query server's run information.

The readme also lists data flow real-time run logs and data flow publication records, so the operational history of a pipeline is a first-class part of the product rather than something you reconstruct from a log aggregator.

The query template call log is described as complete and traceable, which is what you need for an API you are exposing to other services.

Taken together, the monitoring story is what separates this from a pipeline editor. The readme's own summary of the platform is that it includes data flow, data source, data alignment, query templates, intelligent data querying, AI integration and complete monitoring, and monitoring is what makes the rest usable in production rather than in a demo.

The licence is the real constraint, not the code

The readme contains a statement that anyone adopting this should read carefully rather than skim.

The project states that it has applied for a design patent and an invention patent, and that without explicit written authorisation, no organisation or individual may copy, duplicate, modify, distribute, reverse engineer or use it commercially in any illegal form. It states a statutory fine of one million renminbi and possible legal liability for violations, and offers a cash reward of 40 percent of the actual fine for reporting infringement.

The repository listing shows the licence as one GitHub cannot classify, and the tree does contain a LICENSE file, so the precise terms are in that file rather than in the readme. But the readme's own language is restrictive in a way that is not the same as an open source grant, and the reference to a statutory fine suggests the project is relying on the patent system rather than on copyright licensing alone.

That has a practical consequence. A team that wants to run this internally, modify it, offer it as part of a product, or provide it as a service needs to establish what authorisation is required, and the readme offers contact channels for exactly that: a QQ number, an email address at qq.com, and an official site. This is not a legal opinion, but it is a clear statement that the permissions differ from a permissive open source licence, and the readme's own framing of the project as free of charge should not be read as a grant of rights.

There is also a sibling product in the readme, a visual drag-and-drop rule platform at ruleplatform.com, which suggests the code here is the backend of a commercial product family rather than a standalone community project.

Editorial conclusion

data-platform-open is a good fit for a team that wants to build sync and cleaning pipelines visually rather than by writing integration code, and that already runs MySQL, Kafka, StarRocks, Doris, Oracle or ElasticSearch and wants one platform to manage them, because the source, flow, query and monitoring modules cover the whole path from ingestion to a served query. It is a poor fit for an organisation that needs a permissive licence, since the repository states that the software has applied for design and invention patents and that copying, modifying, distributing, reverse engineering or commercial use are all prohibited without written authorisation. Before adopting, read the LICENSE file and the patent statement in the readme and get your own legal view, confirm the front end you intend to pair with it, since the front-end repository is hosted separately on Gitee, and check the deploy.sh script and the docker directory for how the five modules are meant to be started.

Frequently asked questions

What does data-platform-open provide?

It is the Java backend of a visual data integration platform covering data flows, data sources, data alignment, query templates, intelligent data querying, AI integration and monitoring, with a drag-and-drop canvas for building sync, cleaning and filtering pipelines without writing code.

What is the data alignment feature in data-platform-open?

It configures consistency checks between any two data sources, of different types, across tables or indexes, and supports alerting and automated repair. You choose when the check triggers and the strategy, such as matching counts, matching content or a comparison time range, and the detail view shows the differing fields.

How is the data-platform-open project built and packaged?

It is a Maven multi-module project with common, flow, query, support and web modules, and a two-stage Dockerfile that builds a chosen module with a SOURCE_DIR argument and runs it as a single jar on an OpenJDK 21 base image exposing port 80, with a deploy.sh script and a docker directory for orchestration.

What are the licensing terms for data-platform-open?

The readme states the project has applied for design and invention patents, and prohibits copying, modifying, distributing, reverse engineering or commercial use without explicit written authorisation, mentioning a one million renminbi fine. The repository licence is listed as one GitHub cannot classify, so the LICENSE file holds the actual terms.

Official sources

  1. Issues
  2. Project website
  3. README
  4. shaiwz/data-platform-open on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/shaiwz-data-platform-open.svg)](https://hysenlabs.com/projects/shaiwz-data-platform-open)

Was this useful?