MOT消费者层FDW API的功能和用途如表4-35所示。其中,计划、执行阶段请参考《SELECT/UPDATE/DELETE(计划阶段)》以及《SELECT/UPDATE/DELETE(执行阶段)》两小节。
表4-35 MOT消费者层FDW接口简介
| 函数名 | 使用阶段(数字为调用顺序) | 描述 |
| GetForeignRelSize | 计划1 | 查询过程中表的每个实例均调用,以评估大小 |
| GetForeignPaths | 计划2 | 有索引情况下调用,确定哪些索引可用于从当前查询中的表中获取数据 |
| GetForeignPlan | 计划3 | 创建用于从表中取数据的执行计划 |
| PlanForeignModify | 计划4 | 在数据修改查询时调用。设置数据修改的附加信息 |
| AddForeignUpdateTargets | 计划5 | 向查询输出添加其他结果列 |
| BeginForeignScan | 执行1 | 在数据提取开始时,对查询中的每个表实例调用 |
| BeginForeignModify | 执行1.1 | 修改查询 |
| IterateForeignScan | 执行2 | 调用以获取相应的记录 |
| ReScanForeignScan | 执行3 | 应重新启动迭代时调用 |
| EndForeignScan | 执行4 | 调用以完成取数据 |
| EndForeignModify | 执行4.1 | 在通过修改查询启动数据扫描时调用 |
| ExecForeignInsert | 执行过程 | 满足其他条件时调用以完成记录插入 |
| ExecForeignUpdate | 执行过程 | 满足其他条件时调用以完成记录修改 |
| ExecForeignDelete | 执行过程 | 满足其他条件时调用以完成删除记录 |
| ExplainForeignScan | 输出计划 | 执行explain时调用以打印详细计划信息 |
| AnalyzeForeignTable | 分析1 | 对表做analyze操作 |
| AcquireSampleRows | 分析2 | 收集采样信息用来做analyze操作 |
| TruncateForeignTable | 截断 | 调用以清空表数据 |
| VacuumForeignTable | 垃圾回收 | 清理表 |
| NotifyForeignConfigChange | 配置 | 在数据库配置更改事件中调用 |
| ValidateTableDef | DDL | 查询数据定义时调用 |
| IsForeignRelUpdatable | 信息 | 调用以确定FDW支持的操作(SELECT/INSERT/UPDATE/DELETE) |
| GetFdwType | 信息 | 提供FDW类型 |
| GetForeignMemSize | 统计信息 | 以字节为单位提供MOT引擎的内存使用情况 |
| GetForeignRelationMemSize | 统计信息 | 以字节为单位提供存储表/索引数据的内存使用情况 |
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




