csv - 微软Azure的架构。 CSV 到 SQL

标签 csv azure azure-sql-database azure-storage azure-worker-roles

我是一名实习生,负责研究 azure 项目。
目前我正在为该项目的一部分设计一个架构。

目标是将多个 csv 文件转换为云中的 SQL 数据库。这些 csv 将从该国家/地区的随机位置发送,需要进行处理,以便最终可以使用网络服务访问数据库。

我对 azure 的场景完全陌生,一直在 self 教育,但我的脑子里有点模糊。

一些信息:

csv 是小文件,但每天会收到大约 20.000 个 是的,它需要是 SQL 存储,因为我们需要轻松聚合数据。

csv 中包含哪些内容并且需要存储?
唯一的键值(字符串)
消费值(双倍)
日期时间戳(日期时间/字符串)
质量值(整数)

我想到的架构是:
向云端发送Http请求(云端需要监听服务吗?)
在处理 csv 之前保存它们的队列服务
sql驱动器存储(直接导入?或者我是否需要在两者之间某种辅助角色?)
一个 Web 服务,将从外部 AOS 或客户端应用程序获取请求,并查询 sqlDB 中的数据。

我是否正确地假设这个问题可以通过标准组件解决,或者我是否需要实现虚拟机角色?您将如何设置?

任何意见都将不胜感激,因为我真的感觉迷失在云端:)
我希望我清楚地概述了要求......
解释你自己不完全理解的事情并不容易

最佳答案

您根本不需要 VM 角色。这是一个稻草人的想法:

  • 设置一个 Web 服务,让您可以推送 csv 文件(在具有 svc 的 Web 角色中轻松完成)。让该服务方法将每个 csv 存储在某些特定容器(如“uploads”)的 Azure Blob 中,名称如“guid.csv” - 只需调用 Guid.NewGuid().ToString() 即可动态生成 guid 。完成后,创建引用该文件名的队列消息。
  • 在托管 svc 的同一角色实例的 Run() 方法中(只需重写 Run() )或在单独的辅助角色中,设置一个 while(true) 循环以从队列中读取以获取 csv需要导入,将 blob 读入内存流并转储到磁盘上的临时文件,然后调用本地帮助器方法来解析 csv 并调用 SQL 插入。
  • 设置另一个 Web 服务来检索数据。同样,它可以托管在同一个网络角色或另一个网络角色中。

完全不需要虚拟机角色。

关于csv - 微软Azure的架构。 CSV 到 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5578391/

相关文章:

Azure NSG 不会阻止流向子网 ACI 的流量

sql-server - Azure 突触 : What should I do so that I can access the Power BI report on Power BI service without having to enable the "Public Network Access"?

Azure 条件访问不适用于 token 获取请求?

azure - Azure Web SQL 数据库的 session 数量是否有限制?

sql-server - VSTS : Deploy Azure SQL DACPAC throws an error

python - CSV 阅读器在 Ubuntu 和 Windows 上的不同输出 - Python

python - 如何使用 pandas 写入 CSV 文件,同时附加到下一个空行,而无需再次写入列?

c# - 是否有用于将具有随机列顺序的 CSV 映射到已定义属性的代码模式?

c# - 来自 List<Row> 的数据表

azure-sql-database - Power BI 最大连接到 DB :( Can we populate multiple tables with single Sql. 数据库调用?