gpt4 book ai didi

r - 可以创建每天将 SQL 数据库写入 MongoDB 的管道吗?

转载 作者:行者123 更新时间:2023-12-03 12:14:01 26 4
gpt4 key购买 nike

电话:DR 我想将 BigQuery 的强大功能与我的 MERN 堆栈应用程序结合起来。 (a) 使用 nodejs-biquery 是否更好?直接使用 BigQuery 编写 Node/Express API,或者 (b) 创建一个日常作业,将我的(整个)BigQuery 数据库写入 MongoDB,然后使用 mongoose用MongoDB 编写 Node/Express API?

我需要确定将创建 BigQuery 数据库的数据 ETL 工作流与 react/node Web 应用程序相结合的最佳方法。数据 ETL 使用 Airflow 创建一个工作流,该工作流 (a) 将日常数据备份到 GCS,(b) 将该数据写入 BigQuery 数据库,以及 (c) 运行一堆 SQL 以在 BigQuery 中创建额外的表。在我看来,我唯一的两个选择是:

  • 每天从 BigQuery 数据库到 MongoDB 执行一次写入/转换/传输/迁移(无论正确的动词是什么)。我已经有一个使用 mongoose 编写的 Node/快速 API,连接到 MongoDB 集群,这种方法可以让我保留该 API。
  • 使用 nodejs-biquery 库创建直接连接到 BigQuery 的 Node API。我的应用程序将从 MERN 堆栈 (BQ)ERN 堆栈更改。我必须重新编写 node/express API 才能使用 BigQuery,但我不再需要 MongoDB(也不必每天将数据从 BigQuery 传输到 Mongo)。但是,如果我要查找单个条目,BigQuery 可能是一个非常慢的数据库,因为它不打算用作 Mongo 或 SQL 数据库(它没有索引,一行检索查询运行速度慢于全表扫描)。我的大部分 API 调用都是针对数据库中很少的数据。

  • 我不确定哪种方法最好。我不知道为 1 个 Web 应用程序使用 2 个数据库是否是一种不好的做法。我不知道是否可以通过从一个数据库到另一个数据库的每日传输来执行 (1),而且我不知道如果直接将 BigQuery 与我的 API 一起使用它会有多慢。我认为如果将 (1) 添加到我的数据工程工作流程中很容易,这是首选,但同样,我不确定。

    最佳答案

    我和(1)一起去。编写从 BigQuery 查询表、转换并将集合写入 Mongo 的 Python 脚本应该不会有太多工作。有一些事情需要处理(增量更改等),但是这比编写全新的 Node/bigquery API 更容易处理。

    关于r - 可以创建每天将 SQL 数据库写入 MongoDB 的管道吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61330033/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com