数据导出工具设计

目标

根据导出参数,将目标系统中的数据生成导出文件

接口设计

命令/入口名

databox 数据工具箱

子命令

list 列举所有模块
show [module_name] 导出某个模块或所有模块的数据依赖图文本文件(mermaid 格式)到 ./graphs 目录
ripper company_code [module_name] 导出某个模块或所有模块的数据到 ./{company_code}_data 目录
clean company_code 清空公司的导出数据
stitcher dirpath [module_name] 恢复指定目录下的某个模块或所有模块的数据

技术方案

命令行参数解析 python-fire:
考虑可扩展性和界面友好性,应该使用 click。但是考虑到 python-fire 更省时间,故仍然使用 python-fire。

数据依赖图呈现 https://mermaid-js.github.io/mermaid-live-editor/
语法上选择 mermaid,该语法既可以手写又可以代码生成。呈现上选择由命令行工具生成符合 mermaid 语法的文本文件,然后手动复制到在线编辑器中进行查看。
本地生成图片过于复杂耗时,本地 md 编辑器渲染字体过小,故弃而不用。

数据导出:
ripper 在待导出的系统环境中运行,共享同一套环境。
同一个模块的数据导出到同一个模块中。

坚持原创技术分享,您的支持将鼓励我继续创作!