非专业版是否支持数据库处理?
Is database processing supported for the non Pro version?
我是 Ruby 的新手,想要进行概念验证并与 ETL 项目的 Apache Camel 进行比较。
不清楚与数据库支持专业版的区别。那么,使用(不是专业版)Kiba 的数据库处理可以做什么?
似乎所有文档代码片段都是文件示例...
我是 Kiba 的作者。
Kiba Pro 提供了一组维护良好、精心制作的数据库相关组件(以及未来其他主题的其他组件),但您也可以在没有 Kiba Pro 的情况下使用数据库。
例如,如果您使用 ActiveRecord
(与 Rails 一起使用的最常见的 ORM),您可以编写一个源来获取这样的记录:
class ActiveRecordSource
def initialize(model:)
@model = model
end
def each
@model.find_each do |instance|
yield instance
end
end
end
然后像这样使用:
source ActiveRecordSource, model: User.where('age > 21)
您还可以利用其他 Ruby 数据库工具,例如 Sequel (which Kiba Pro leverages), or tools like ActiveRecordImport。
您也可以从 kiba plus 中获取灵感,尽管有命名,但我并不维护这个库,但我相信它提供了与数据库相关的组件。
一旦基本组件正常工作,您就可以使用 Kiba 本身做很多事情,包括数据处理、数据迁移等。
希望这能提供一个好的起点,如果这能正确回答您的问题,请告诉我!
我是 Ruby 的新手,想要进行概念验证并与 ETL 项目的 Apache Camel 进行比较。
不清楚与数据库支持专业版的区别。那么,使用(不是专业版)Kiba 的数据库处理可以做什么?
似乎所有文档代码片段都是文件示例...
我是 Kiba 的作者。
Kiba Pro 提供了一组维护良好、精心制作的数据库相关组件(以及未来其他主题的其他组件),但您也可以在没有 Kiba Pro 的情况下使用数据库。
例如,如果您使用 ActiveRecord
(与 Rails 一起使用的最常见的 ORM),您可以编写一个源来获取这样的记录:
class ActiveRecordSource
def initialize(model:)
@model = model
end
def each
@model.find_each do |instance|
yield instance
end
end
end
然后像这样使用:
source ActiveRecordSource, model: User.where('age > 21)
您还可以利用其他 Ruby 数据库工具,例如 Sequel (which Kiba Pro leverages), or tools like ActiveRecordImport。
您也可以从 kiba plus 中获取灵感,尽管有命名,但我并不维护这个库,但我相信它提供了与数据库相关的组件。
一旦基本组件正常工作,您就可以使用 Kiba 本身做很多事情,包括数据处理、数据迁移等。
希望这能提供一个好的起点,如果这能正确回答您的问题,请告诉我!