Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AZURE函数:从API获取数据并将其发布到sql数据库中_Sql_Sql Server_Rest_Azure_Azure Functions - Fatal编程技术网

AZURE函数:从API获取数据并将其发布到sql数据库中

AZURE函数:从API获取数据并将其发布到sql数据库中,sql,sql-server,rest,azure,azure-functions,Sql,Sql Server,Rest,Azure,Azure Functions,我必须从RESTAPI获取数据并将其发布到sql数据库中 我知道如何从API获取数据并将其显示在Web服务中,我知道如何使用azure函数将数据从Web服务发布到数据库 问题是我不知道如何从API获取数据并直接将其发布到数据库中。 注:这是相当多的数据 更新:我使用C.NET?和SQL。API提供JSON结果。Azure函数基本上是无服务器架构。这几乎与编写用于消费json和发布到sql server的c代码相同,但不是将其作为公共消费的网站/webapi托管,而是将其托管在azure上,而不使

我必须从RESTAPI获取数据并将其发布到sql数据库中

我知道如何从API获取数据并将其显示在Web服务中,我知道如何使用azure函数将数据从Web服务发布到数据库

问题是我不知道如何从API获取数据并直接将其发布到数据库中。 注:这是相当多的数据


更新:我使用C.NET?和SQL。API提供JSON结果。

Azure函数基本上是无服务器架构。这几乎与编写用于消费json和发布到sql server的c代码相同,但不是将其作为公共消费的网站/webapi托管,而是将其托管在azure上,而不使用具有IIS/webserver的虚拟机

有关创建azure函数的信息,请参阅

您可以在函数中使用另一个web API,如:

var client=新的HttpClient

var response=await client.GetAsyncurl

var content=await response.content.ReadAsStringAsync

用于向sql server发布/写入数据的简单ado.net适配器/代码


就像在webapp或控制台应用程序中使用c函数中的任何简单api一样。

请更具体地说明您的问题。一个代码示例会有所帮助。您使用什么编程语言从API获取数据?我更新了描述,请告诉我是否需要提及其他内容。如果我能得到代码来获取数据并将其发布到数据库中,那就太好了,但我的主要问题是,我不知道这个操作在概念上是如何完成的:从API获取数据并将其发布到数据库中。谢谢。它帮助我完成了我需要做的事情,但它仍然没有解决将数据从api直接传送到数据库的问题。它仍然需要将从api获取的数据存储到变量中。因此,如果我必须从api中选择例如50GB的数据,我将需要至少50GB的RAM,因为变量必须在将数据发布到数据库之前存储该数据。这就是为什么代理架构(如队列、消息队列等)需要这样做。Azure也有许多代理体系结构和Azure服务总线。一些老软件,如biztalk、Mule ESB基本上所有企业服务总线都是为处理此类服务数据而设计的,具有可靠性和实时性能。提示是不要试图同时处理50GB数据,它甚至不受许多文件系统的支持,这将是内存和CPU的性能消耗,过度服务将阻塞所有交通。您需要像Azure Service bus这样的服务代理,它可以从队列和进程中逐个接收调用,还可以将所有未处理的调用存储在队列中,直到它被处理,这样队列中就不会丢失任何东西。您可以尝试使用n层ESB对数据进行多个分布式处理,以加快处理速度。还有一件事刚刚触发了我,Azure batch比Azure功能具有更多的功能,可用于如此大的任务,并支持高性能计算HPC(如果负载非常大,并且无法分解为代理体系结构)。