数据仓库直接从db或api获取数据

时间:2016-03-18 17:19:27

标签: mysql database architecture data-warehouse

我们需要将数据提取到我们的数据仓库中。其中一个数据源来自内部。 我们有两种选择: 1.要求数据源团队通过API公开数据。 2.要求数据源团队每日转​​储数据,授予我们只读数据库凭据以访问转储。 有人可以提出一些建议吗?

非常感谢!

2 个答案:

答案 0 :(得分:2)

这很大程度上取决于数据的大小和性质,您使用的工具类型,数据源团队是否知道“API”等。

我认为我们需要更多信息才能在此提出明智的建议。我真的建议您与DBA进行对话,了解他们可以使用哪些选项,并认真考虑他们的建议。他们可能比我们对你的问题最有效的东西有更多的见解。

答案 1 :(得分:1)

API解决方案缺点:

  • 成本。您的数据源团队必须构建api。然后,您必须构建客户端应用程序以从api读取数据并将其插入到数据库中。您还必须在某处托管api以及设计部署过程。这是相当多的工作,我认为这是不值得的。
  • Pefromance。没有必要但通常在涉及数据仓库时,这意味着必须处理大量数据。使用api,您很可能必须首先转换数据,然后才能使用数据库的批量插入功能

每日数据库转储解决方案看起来对我来说更好,但如果我是你,我会稍微改变它。我会用一个平面文件。大多数数据库都具有从文件批量插入数据的功能,它通常是完成任务的最快的数据库。

因此,根据我的问题,我认为您应该遵循以下内容:

  1. 以数据文件格式与您的数据源团队合作。这样您就可以独立工作甚至使用不同的RDBMS。
  2. 选择数据源团队db和数据库都可以快速访问的良好共享。
  3. 要求数据源团队对文件实施导出逻辑。
  4. 从文件中实施导入逻辑。
  5. 请注意,第3项和第4项应该只需几行代码。正如我所说,大多数数据库都内置了OPTIMIZED功能,可以将数据导出/导入文件。

    希望它有所帮助!