从 REST API 获取数据并将其存储在 Azure Data Lake 中

Getting data from REST API and storing it in Azure Data Lake

从 REST API 获取数据并将其作为 JSON 存储在 Azure 数据湖中是否有意义?或者数据应该直接存储到 Azure SQL?

我已经尝试了这两个选项,但不清楚在哪种情况下值得将数据保存到 Azure Data Lake。

是的,这是一种完全正常的模式,特别是在收集大量作品时出现的。写入数据库很棒但是有(至少)两个方面需要考虑:

  1. 写入时模式 - 在写入数据库之前您必须知道模式。这意味着所有列、所有数据类型、可空性、排序规则,甚至在您考虑编写记录之前。例如,您将如何处理 JSON 更改的模式?
  2. 事务日志记录——大多数 Microsoft SQL 数据库使用预写日志或 WAL,这意味着事务日志记录必须在事务被视为 ACID 事务的一部分之前完成。在数据库负载很重或者高并发的情况下会发生什么——排队和阻塞。通常这些事情需要几毫秒,但低层等会发挥作用。如果您需要这种东西,可以使用诸如 Cosmos 之类的最终一致性之类的替代模式。

合同中的数据湖是读时模式,即你不必知道模式就可以写入湖中,所以你可以登陆它然后其他的以后再想。

这不一定适用于您关于 Synapse 的其他问题,因为您 运行 有失去完美 SQL 服务器数据类型的风险。请查看 migration wizards 之一。