HonestManXin opened a new issue, #57884: URL: https://github.com/apache/doris/issues/57884
### Search before asking - [x] I had searched in the [issues](https://github.com/apache/doris/issues?q=is%3Aissue) and found no similar issues. ### Description Similar to other catalogs, we implements ExternalCatalog, ExternalDatabase, and ExternalTable. In the implementation of ExternalTable, it will pull OLAPTable from the peer Fe and generate an ExternalOLAPTable (a subclass of OLAPTable) on the local Fe. when generating query plan, once it is determined to be an External Doris table, just like generating an OlapScanNode for an inner table, all subsequent processes will be the same as those for the original OlapScanNode (only the judgment regarding Colocate must be forced to be for inner tables, we can dig more to see if can do colocate when two table in same catalog). In the generation of distributed execution plans (Fe Coordinator), instead of generating a map from backendId->Address for some logical processing in the handling of Backends, it is now processed in the manner of catalogId->backendId->Address, mainly to accommodate the case where backendIds in different clusters may be the same. Through the above solution, it is basically equivalent to treating the BE of the external cluster as if it were the BE of this cluster. The query performance is comparable to that of internal tables, and subsequent optimizations related to execution plans basically do not require additional adaptation. Currently existing optimizations such as topn & runtime filters can all be utilized. ### Use case _No response_ ### Related issues _No response_ ### Are you willing to submit PR? - [ ] Yes I am willing to submit a PR! ### Code of Conduct - [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
