在项目中,我想很多人都会有各种数据导出,在构建数据仓库 ETL 报表分析系统的过程中,从不同数据源大量的数据同步,关联数据处理,不要太繁琐烦人。
https://github.com/snower/syncany
支持特性:
数据同步完成后,我想 kibana、superset、Grafana 都是很不错易于使用的图表系统了,直接写入 Execl 也可以大幅解放烦琐的数据导出需求。
简单导出规则示例:
{
  "extends": ["json/database.json", "json/log.json"],
  "name": "user_order",
  "input": "&.mysql_order.user_order::order_id",
  "output": "&.exports.用户订单.xlsx#订单列表::订单号",
  "querys": {
    "order_at|datetime": [">=", "<"]
  },
  "schema": {
    "订单号": "$.order_id",
    "用户 ID": "$.uid",
    "用户名": ["$.uid|ObjectId", "&.mongo_user.user::_id", "$.username"],
    "用户昵称": ["$.uid|ObjectId", "&.mongo_user.user::_id", "$.nickname"],
    "订单类型": {
      "name": "case_valuer",
      "key": "order_type",
      "case": {
        "groupbuy": "团购订单"
      },
      "default_case": "普通订单"
    },
    "订单金额(元)": ["@div", "$.total_fee", 100],
    "订单状态": ["$.status", "&.json.status.json::status", "$.verbose_name"],
    "下单时间": "$.order_at|datetime %Y-%m-%d %H:%M:%S"
  }
}
也可看详细 demo 示例: https://github.com/snower/syncany/tree/master/examples/demo
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.