我最近设置了我的第一个“etl”流来从远程服务获取数据,修改它以适合我的本地模型,然后保存它。现在我已经完成了,由于几个原因,感觉很怪诞
mysource
是来自远程服务的 JSON
my用新定义的 localtransform
替换每个,基于原始row
model
source
row
transform
还查看各种值并定义其他本地关系
destination
然后调用.save
我新替换rows
的现在是 ORM 中的模型。
- 我应该如何根据外部数据源创建本地记录?我的模型看起来不像远程源。
row
用我的新模型对象替换条目是否正确? - 如果我应该
row
用我的本地模型替换值,那么我假设我应该将每个后续操作拆分为transform
新行(现在是模型)上的一个?
总之,我的 .etl 看起来像
pre_process do
@some = <Go To DB and fetch data>
@variables = <Setup More Information>
end
source MyRemoteSource
transform DoABunchOfWork,@some,@variables
destination CallSaveOnModels
DoABunchOfWork 类有大约 6 个方法,它们process
将调用以各种方式操作或设置关系