High availability of the computing layer is used to ensure the query stability.
In distributed scenarios where you perform routine query and analysis tasks, machine failure is inevitable. How to avoid query failures caused by exceptions such as machine failure must be taken into account to ensure the high availability of the computing layer.
- Interactive mode
- In interactive mode, AnalyticDB for MySQL utilizes a massively parallel processing (MPP) architecture and in-memory pipelining mode. No intermediate query results are saved. In scenarios that are both latency-sensitive and have downed compute nodes, the computing engine retries queries to ensure the query stability.
- Batch mode
Data cleansing tasks such as data extract-transform-load (ETL) take a long time to complete and consume a large amount of resources. In these cases, generated costs may spiral out of control due to the increase of query retries.
In batch mode where computing is implemented stage by stage, failovers can be implemented by task to minimize the cost of failures.
For execution nodes, intermediate query results can be written to disks in batch mode. If a node is down, the computing task on the current node fails. Task lineage can be used to find the latest intermediate query results that persist on disks. Only the failed computing task is rescheduled and executed based on the results. For coordinator frontend nodes, query metadata is persisted. A new coordinator node loads the query metadata to continue scheduling the failed computing task without affecting your business.