TIS for Flink, DataX, and Ontology DataOps
Support agile Ontology DataOps Based on Flink, DataX and Flink-CDC with Web-UI
At a glance
- What is it?
- TIS is a Java-based data integration platform with a Web UI, batch and streaming pipelines, and ontology-backed ChatBI. It suits data engineering teams that want one interface for DataX, Flink-CDC, semantic modeling, and AI-assisted pipeline creation.
- Who is it for?
- Adopt TIS when your team needs a shared control plane for batch, streaming, and ontology-oriented data workflows, especially if it already uses the documented DataX or Flink integrations. Do not adopt it as a lightweight standalone script runner without first checking connector availability, deployment dependencies, ontology configuration, and the documentation for your chosen execution mode.
- Can I use it commercially?
- Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 3 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
What TIS is built to manage
TIS addresses the gap between configuring individual data tools and operating them as a shared data workflow. The repository describes it as a DataOps platform built around DataX, Flink-CDC, and a Web UI. That combination targets data engineers, platform teams, and organizations that need repeatable extraction, transformation, loading, and synchronization rather than a one-off script.
The project covers two execution styles. Batch workflows use DataX-style reader and writer components, including examples for MySQL, Elasticsearch, Doris, Paimon, and other destinations. Streaming workflows use a Flink cluster, source and sink properties, and a generated Flink-SQL script. TIS presents both through workflow modeling and a visual console, so the user does not need to edit every execution definition from scratch.
The newer ChatBI feature adds a different layer. TIS v5.1.0 combines an Ontology knowledge graph with GraphRAG retrieval and LLM-generated SQL. The intended result is natural-language analysis for business users, while engineers retain the underlying batch and streaming infrastructure. This is a broad product boundary. TIS is not only an ETL interface, and it is not only a graph database client.
Batch pipelines through reader, writer, and transformer setup
The documented batch workflow starts with selecting a Reader and Writer plugin. A MySQL example then configures the target table and columns. TIS also allows Transformer logic to be attached during the extraction stage. The README names field masking, field concatenation, and substring extraction as examples, and it specifically describes splitting JSON content from a column with `json_splitter`.
The workflow continues by adding an output component. In the Elasticsearch example, the writer is configured with a Schema Mapping, after which TIS creates and executes a MySQL-to-ElasticSearch DataX instance. The console exposes the execution status. This design keeps source selection, transformation, destination mapping, and execution state in one pipeline definition, but it also means that a connector's available parameters matter to the usability of the whole flow.
TIS supports more than a single destination. The documentation links examples for StarRocks, Doris, Kafka, Paimon, Hive, ClickHouse, and Elasticsearch. The repository does not claim that every connector has identical capabilities. It points to a source and sink component catalog instead. That distinction is important when evaluating a migration: the core platform can represent a workflow, while the selected plugin still determines which fields, mappings, and runtime features are available.
Flink-CDC channels and generated SQL
For real-time synchronization, TIS models a Flink-Cluster as part of the workflow. The documentation lists cluster configuration, restart policy, and checkpoint settings. Source and sink properties are then configured, and TIS generates a Flink-SQL script from database metadata information. The generated script is a notable mechanism because it reduces the amount of SQL that a user must assemble manually for common metadata-driven synchronization cases.
Once the channel is created, the console displays real-time synchronization traffic. The documentation also lists rate limiting and `Pause/Resume` controls. These controls place operational actions next to the channel definition, which is useful when a pipeline needs to be slowed or temporarily stopped without treating it as an unrelated command-line task.
The same convenience creates a dependency on the underlying Flink components. TIS is based on extended Flink and Flink-CDC projects listed in the repository dependencies. The README does not provide a standalone compatibility matrix, deployment prerequisites, or a list of supported versions for every component. It therefore supports the claim that TIS can orchestrate Flink-based channels, but not the stronger claim that any Flink or CDC configuration will work in any environment.
Ontology-backed ChatBI and the AI agent
The v5.1.0 ChatBI feature is based on an Ontology knowledge graph stored in Neo4j. The ontology layer defines business terms through a Glossary, aggregation functions such as `SUM`, `AVG`, and `COUNT`, and five semantic roles. The README states that GraphRAG performs four parallel retrieval paths and expands the retrieved subgraph before the LLM generates SQL. The documented flow is question, ontology semantic parsing, graph retrieval, LLM SQL generation, and result visualization.
This design separates business meaning from the query interface. A user can ask for an analysis such as the highest-selling products in East China during the previous month without writing SQL, provided that the relevant entities, relationships, and semantic definitions have been modeled. Neo4j persistence is intended to retain this knowledge across uses. The repository also names DeepSeek, Tongyi Qianwen, and GPT-4 as supported model choices in the ChatBI description.
The Pipeline AI Agent addresses pipeline creation instead. According to the README, a natural-language request can drive plugin detection, parameter generation, and task orchestration. It can also detect and install plugins with LLM assistance. This feature should be treated as an authoring aid rather than proof that arbitrary natural-language requirements can be executed without review. The repository does not document validation boundaries, rollback behavior for generated pipelines, or the exact permissions and credentials required by the agent.
Deployment modes and the first practical setup
TIS documents installation as a three-step package process: download the tar package, extract it, and start TIS. It also lists standalone, Docker, Docker Compose, and Kubernetes deployment options. The README does not provide the exact tar filename, startup command, port, image name, or environment variables. The installation documentation linked by the README is therefore the authoritative source for executable commands.
The following block records the installation entry points exactly as linked in the README. It is not a substitute for the linked procedures, because the README does not state the package filename or startup command.
# TIS installation documentation
# https://tis.pub/docs/install/tis/uber
# https://tis.pub/docs/install/tis/docker
# https://tis.pub/docs/install/tis/docker-compose
# https://tis.pub/docs/install/tis/kubernetesFor a first use, follow the installation page for the selected deployment mode, then use the Web UI to create a pipeline. A cautious first workflow is the documented MySQL batch example: choose a Reader and Writer, select the MySQL reader, define the table and columns, add a simple Transformer if needed, configure the destination mapping, and execute the instance. The expected result in the interface is a created DataX instance with a visible execution status. The README does not specify the browser URL or the success message, so those details must be taken from the installation documentation.
After that workflow, a streaming pilot can add a Flink-Cluster, source and sink properties, restart and checkpoint settings, and the generated Flink-SQL script. The documentation links separate pages for Docker, Docker Compose, Kubernetes, and distributed execution, which is the correct place to verify prerequisites before deployment.
Extension model, maintenance, and adoption limits
The repository contains a large Java multi-module layout, including `tis-console`, `tis-dag`, `tis-plugin`, `tis-web-start`, `tis-k8s`, SQL parser modules, compiler modules, and test modules. TIS says its frontend follows a Jenkins-inspired design and uses micro-frontends, while an SPI mechanism supports new plugins. The dependency list includes separate repositories for web UI components, DataX, Flink, Flink-CDC, Debezium, connectors, packaging, documentation, and a commercial plugin repository. This structure supports extensibility, but it also creates an upgrade surface beyond the main repository.
The repository is not archived. Its last push was on 2026-10-11, and the listed releases include v5.1.0 on 2026-08-20, v5.0.0 on 2025-12-25, and v4.3.0 on 2025-08-19. The README describes the project as Apache2 licensed, while the repository metadata identifies the license as Apache-2.0. Anyone building a distribution should check the actual `LICENSE` file and dependency licenses separately rather than treating the README label as a complete license inventory.
TIS is a poor fit for a team that wants only a small library or a command-line ETL utility. It is also a poor fit for an environment where the required DataX, Flink, Neo4j, plugin, or LLM services cannot be operated. The AI features add model configuration and ontology maintenance. The platform does not document a rollback procedure, a universal connector compatibility table, or a claim that generated SQL and generated pipeline configurations are safe without review. Those boundaries matter more than the number of visible features when deciding adoption.
Editorial conclusion
Adopt TIS when your team needs a shared control plane for batch, streaming, and ontology-oriented data workflows, especially if it already uses the documented DataX or Flink integrations. Do not adopt it as a lightweight standalone script runner without first checking connector availability, deployment dependencies, ontology configuration, and the documentation for your chosen execution mode. The first practical verification should be a small MySQL pipeline using the documented reader, writer, and execution screens, followed by inspection of generated artifacts and operational controls.
Frequently asked questions
What is TIS used for?
TIS is a Java data integration platform for building and operating batch and streaming data workflows through a Web UI. It uses DataX for batch-style processing and Flink-CDC for real-time synchronization, with ontology-backed ChatBI added in v5.1.0.
How does TIS create real-time data pipelines?
TIS models a Flink-Cluster, configures source and sink properties, and generates a Flink-SQL script from database metadata. The console then shows synchronization traffic and provides controls such as rate limiting and `Pause/Resume`.
Does TIS support natural-language data analysis?
The v5.1.0 documentation describes ChatBI, which uses Ontology definitions, Neo4j, GraphRAG retrieval, and an LLM to generate SQL for natural-language questions. The documentation also describes a Pipeline AI Agent that assists with plugin selection, parameters, and task orchestration.
What license does TIS use?
The repository metadata identifies TIS as Apache-2.0, and the README calls the license Apache2. The repository contains a `LICENSE` file, which should be checked for the exact terms and alongside the licenses of bundled or separately deployed dependencies.
Official sources
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.
[](https://hysenlabs.com/projects/datavane-tis)Was this useful?