在blob存储中引用数据

时间:2017-03-09 20:15:23

标签: azure azure-storage-blobs

我在Azure中的linux VM上设置了一个postgreSQL数据库,我在blob存储中有一个.csv文件,我想将其上传到该数据库。

但是,我找不到任何关于如何(或者甚至可能)引用存储在blob存储中的文件的文档,就像它是文件系统的一部分一样,或者将文件从blob存储传输到服务器也在Azure中运行。

我发现的所有引用都是关于直接导入预构建的SQL Server VM,这不是我的问题。

非常感谢任何人提供的任何参考或其他帮助。

1 个答案:

答案 0 :(得分:1)

据我所知,PostgreSQL在其查询中支持程序关键字。

所以我建议你可以使用这个关键词来访问blob存储csv文件。

通常我们会使用curl来访问该文件,你可以在下面的url中下载: https://curl.haxx.se/download.html#Linux

更多细节,您可以参考以下示例代码:

COPY persons(first_name,last_name,dob,email) 
FROM PROGRAM 'C:\curl "https://yourstorageaccount.blob.core.windows.net/mycontainer/test2.csv?sv=2016-05-31&sr=c&sig=jtNRuzR7G98hHogHHZyKY9gYN0r%2FSgr2j78HGKihYlc%3D&st=2017-03-09T02%3A43%3A17Z&se=2017-03-11T02%3A43%3A17Z&sp=rl"'DELIMITER ',' CSV HEADER;

查询结果如下:

enter image description here

这里我使用SAS令牌来保护我的blob文件。

如果您不想使用此令牌,则可以在门户中设置容器的权限。

如下所示: enter image description here

然后你可以通过网址直接访问该文件。 链接这个: https://yourstorageaccount.blob.core.windows.net/mycontainer/test2.csv

如果您想使用SAS令牌来保护我的blob文件,您可以生成SAS令牌,如下图所示:

enter image description here

结果是这样的 enter image description here

然后,您可以在访问blob网址后面添加此令牌。

更多细节,您可以参考以下链接:

https://docs.microsoft.com/en-us/azure/storage/storage-dotnet-shared-access-signature-part-2

相关问题