Skip to content

Commit 49b648d

Browse files
committed
Update documentation for API responses, terms, and operations
1 parent c018f94 commit 49b648d

3 files changed

Lines changed: 91 additions & 2 deletions

File tree

docs/introduction/terms.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,4 +76,17 @@ A lightweight runtime component that executes pipelines. It connects to data sou
7676

7777
## TCM (TapData Control Manager)
7878

79-
The centralized management plane for pipeline orchestration, configuration, monitoring, and deployment. Users interact with TCM to create, modify, and observe pipelines.
79+
The centralized management plane for pipeline orchestration, configuration, monitoring, and deployment. Users interact with TCM to create, modify, and observe pipelines.
80+
81+
82+
## QPS
83+
84+
Queries Per Second. The average number of change events the sync task processes every second. It shows how fast data is replicated from the source to the target.
85+
86+
## Incremental Validation
87+
88+
While the task is running, TapData randomly compares rows in the target with the source to make sure they match. The check keeps going as long as the sync is active. See [Incremental Data Check](../data-replication/incremental-check.md).
89+
90+
## API Server
91+
92+
TapData’s built-in publishing layer. Pick any table and expose it as a [RESTful API endpoint](../publish-apis/README.md). Teams use it to share clean, governed data with mobile apps, third-party systems, or any client that speaks HTTP.

docs/platform-ops/operation.md

Lines changed: 57 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,4 +377,60 @@ a data replication task is used for scenarios that only synchronize incremental
377377
* [Data Services](../publish-apis/README.md)
378378
* Deleting or taking an API offline will render it unavailable.
379379
* [System Management](../system-admin/other-settings/system-settings.md)
380-
* When [managing a cluster](../system-admin/manage-cluster.md), only perform close or restart operations on related services when they are experiencing anomalies.
380+
* When [managing a cluster](../system-admin/manage-cluster.md), only perform close or restart operations on related services when they are experiencing anomalies.
381+
382+
## How to run a TapData health check
383+
384+
Use this checklist to confirm TapData is running normally.
385+
386+
1. Log in to TapData.
387+
388+
2. In the left menu choose **System Management > Cluster Management** and verify [component status](../system-admin/manage-cluster.md):
389+
- TapData Manager, Engine, and API Server are all **Running**.
390+
- CPU and memory are below 70 %.
391+
392+
3. Open **Data Replication** or **Data Transformation** and scan the task list:
393+
- Every task should show **Running**.
394+
- Click a task name and check [metrics](../data-replication/monitor-task.md): lag is acceptable and QPS > 0.
395+
396+
If a task is unhealthy:
397+
- **Read the error log** at the bottom of the monitor page and follow the hints. See [troubleshooting](../platform-ops/troubleshooting/README.md).
398+
- **Test the connection**: open **Connections**, click **Test** on the related source/target and fix any auth or network issues.
399+
- **Check incremental lag**: if QPS spikes for > 30 min, the source may be in a batch window—consider scaling the task. If the target receives no changes, verify CDC prerequisites (e.g. MySQL binlog = ROW). Primary-key conflicts in the log usually mean a config change.
400+
401+
Still stuck? [Contact support](../appendix/support.md).
402+
403+
404+
## How to handle TapData alerts
405+
406+
TapData sends alerts by [email](../case-practices/best-practice/alert-via-qqmail.md). Use the subject line to pick the right playbook below.
407+
408+
**Task-state alerts**
409+
410+
| Alert | What it means | What to do |
411+
| --- | --- | --- |
412+
| **Task error** | Task stopped; replication is down. | Open the task → Logs, fix the issue, restart. Escalate if stuck. |
413+
| **Full load finished** | Bulk copy is done. | Info only. Run a data-validate task if you need a checksum. |
414+
| **Incremental started** | Task is now streaming changes. | Info only. |
415+
| **Task stopped** | Someone clicked Stop. | Restart if it was accidental. |
416+
417+
**Replication-lag alert**
418+
419+
Lag exceeds the threshold you set. Open the task monitor and look for:
420+
421+
- **Slow source reads** – “Read time” is high → ask the DBA to check load or network.
422+
- **Slow target writes / high QPS** – raise “Incremental read size” (≤1 000) and “Batch write size” (≤10 000); keep Agent memory <70 %.
423+
- **False lag** – QPS is 0 but lag still climbs → enable [heartbeat table](../case-practices/best-practice/heart-beat-task.md) on the source.
424+
- **Slow engine** – “Process time” keeps rising → optimise JS code or open a ticket.
425+
426+
**Validation & performance alerts**
427+
428+
| Alert | What it means | What to do |
429+
| --- | --- | --- |
430+
| **Validation diff** | Incremental compare found mismatches. | Auto-repair is on? Do nothing. Otherwise open the task and click **Repair**. |
431+
| **Data-source node slow** | Source/target latency high. | If lag alert fired, treat as “slow source reads” above; else watch and loop in the DBA if lag appears. |
432+
| **Process node slow** | JS node is the bottleneck. | Optimise logic or open a ticket if lag follows. |
433+
| **Validation job error** | Compare task crashed. | Doesn’t affect replication; restart the validation job. Escalate if it keeps failing. |
434+
| **Count diff limit exceeded** | Row counts don’t match. | **Full-sync task**: switch to full-field compare to pinpoint rows. **Incremental task**: wait 1–2 lag cycles and re-validate; repair if the gap remains. |
435+
| **Field diff limit exceeded** | Same as above but field-level. | Same playbook. |
436+
| **Task retry limit** | Task retried and still failed. | Open the task, follow the error message; escalate if you can’t clear it. |

docs/publish-apis/query/query-via-restful.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,3 +57,23 @@ If you'd prefer to use an external tool or automate API testing, [Postman](https
5757
6. Click **Send**. You’ll get a real-time response from the API.
5858

5959
![Query Result](../../images/restful_api_query_result.png)
60+
61+
62+
## Common response codes
63+
64+
| Code | Message | Meaning |
65+
| --- | --- | --- |
66+
| 200 | OK | Request succeeded |
67+
| 401 | Unauthorized error: token expired | Token expired; generate a new one |
68+
| 404 | Not Found error: endpoint not found | API does not exist or is not yet published—check the URL or wait for the publish to finish |
69+
| 429 | Rate limit exceeded. Maximum \${api limit} requests per second allowed | You hit the rate limit; retry later or raise the limit in the API settings |
70+
71+
## FAQ
72+
73+
* Q: The API takes too long to return data or times out
74+
75+
A: Add indexes on every column used in `WHERE`, `ORDER BY`, or joins. If the delay persists, enable response caching or increase the query timeout in the API settings.
76+
77+
* Q: The payload doesn’t look right
78+
79+
A: Check the data-source model and the underlying table—make sure the data is current and that any field-merging logic matches what you expect.

0 commit comments

Comments
 (0)