问题标签 [azure-storage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
11481 浏览

azure - 如何从 Azure 表存储 FAST 下载 1 亿行

我的任务是从 Azure 表存储下载大约 1 亿行数据。这里重要的是速度。

我们使用的过程是从 Azure 表存储下载 10,000 行。将它们处理成 Sql Server 的本地实例。在处理行时,它一次从 Azure 表中删除 100 行。这个过程是线程化的,有 8 个线程一次下载 10,000 行。

唯一的问题是根据我们的计算。下载和处理我们存储的大约 1 亿行大约需要 40 天。有谁知道完成这项任务的更快方法?

一个附带问题:在下载过程中,Azure 将发回没有任何数据的 xml。它不会发回错误。但它发送这个:

其他人有这个问题并有解决办法吗?

0 投票
1 回答
201 浏览

azure - 管理大量 Azure 队列

我的应用程序的一部分包括一个“聊天”系统。我为每个用户维护一个队列。发送给用户的消息被放置在队列中,用户的软件会定期轮询休息服务以获取新消息,此时队列被抽出消息,并将它们返回给用户。

该系统非常简单,运行良好,并且可以完成我需要做的所有事情。

我的问题是;我有数百个(很快数千个)队列将应用程序的队列列表弄得乱七八糟。

我还有其他队列,令我感到不安的是,我无法像使用 blob 存储中的东西那样“组织”它们。

我是否遗漏了什么,或者我应该忽略队列列表,并依赖于我在用户来来去去时正确管理队列的创建和删除这一事实?

0 投票
1 回答
1044 浏览

wcf - 从 WCF 数据服务 LINQ 查询中确定针对 Azure 的 FirstOrDefault 请求 Uri 而不执行它?

问题

我想跟踪将由针对Microsoft.WindowsAzure.StorageClient.TableServiceContext对象执行的 LINQ 查询生成的 Uri。TableServiceContext只是扩展System.Data.Services.Client.DataServiceContext了几个属性。

我遇到的问题是,当我们在开发机器上以调试模式运行 Web 角色时,查询对我们的 Azure 表存储实例执行得很好(我们正在连接到云中的 Azure 存储而不使用 Dev Storage)。我可以使用 Fiddler 或将鼠标悬停在调试器中的语句上来获取结果查询 Uri。

但是,当我们将 Web 角色部署到 Azure 时,针对完全相同的 Azure 表存储源的查询会失败,并出现ResourceNotFound DataServiceClientExceptionFirstOrDefault()在处理空表的行为之前,我们遇到过 ResoureNotFound 错误。这不是这里的问题。

作为解决该问题的一种方法,我想比较在部署 Web 角色时生成的查询 Uri 与在开发机器上运行时生成的查询 Uri。

问题

有谁知道获取查询 Uri 的方法,该查询将在FirstOrDefault()调用该方法时发送。我知道您可以调用ToString()IQueryable返回的内容,TableServiceContext但我担心的是,何时FirstOrDefault()调用 Uri 可能会进一步优化,并且ToString()onIQueryable可能不是最终在FirstOrDefault()调用时发送到服务器的内容。

如果有人对这个问题有另一种方法,我愿意接受建议。当试图确定最终评估表达式树时会发生什么时,这似乎是 LINQ 的一个普遍问题。我也愿意接受这里的建议,因为我的 LINQ 技能可能需要一些改进。

示例代码


编辑更新和回答

史蒂夫提供了写答案。我们的问题与这篇文章中的描述完全相同,该文章描述了单实体查询中的 PartitionKey/RowKey 排序问题,该问题已通过更新 Azure OS 得到修复。这解释了我们的开发机器与将 Web 角色部署到 Azure 的时间之间的差异。

当我指出我们之前在存在检查中处理过ResourceNotFound问题时,我们在代码中以两种方式处理了它。一种方法是使用异常处理来处理ResourceNotFound错误,另一种方法是将RowKey首先放在 LINQ 查询中(正如一些 MS 人员指出的那样)。

事实证明,我们有几个地方首先使用RowKey而不是使用异常处理。我们将通过将代码重构为面向 .NET 4 并使用.IgnoreResourceNotFoundException = true property of theTableServiceContext 来解决这个问题。

经验教训(不止一次):不要依赖古怪的无证行为。

在旁边

我们能够得到查询 Uri's。他们确实是不同的(正如他们将在博客文章中指出的那样)。结果如下:

从 Dev Fabric 查询 Uri

` https://ourproject.table.core.windows.net/Somethings() ?$filter=(RowKey eq 'test19@gmail.com') 和 (PartitionKey eq '41e0c1ae-e74d-458e-8a93-d2972d9ea53c')

从 Azure Fabric 查询 Uri

` https://ourproject.table.core.windows.net/Somethings(RowKey= 'test19@gmail.com',PartitionKey='41e0c1ae-e74d-458e-8a93-d2972d9ea53c')

0 投票
1 回答
1382 浏览

c# - 时间:2019-05-11 标签:c#makehttp put request to azure storage

嗨我想知道如果 azure blob 服务 api http://msdn.microsoft.com/en-us/library/dd135733.aspx

可以使用c#调用。我想上传一个文件,例如一个word文档到一个存储位置,http方法是“put”,其余的url是

http://myaccount.blob.core.windows.net/mycontainer/myblob

这段代码会起作用吗?

0 投票
2 回答
1528 浏览

azure - Windows Azure 云存储 - 根目录中大量文件的影响

对不起,如果我在这里弄错了任何术语,但希望你能明白我的意思。

我正在使用 Windows Azure 云存储来存储大量小文件(图像,每个 20Kb)。

目前,这些文件都存储在根目录中。我知道它不是一个普通的文件系统,所以也许 root 不是正确的术语。

我试图找到有关该计划的长期影响的信息,但没有运气,所以如果有人能给我一些信息,我将不胜感激。

基本上,如果存储在这个根目录中的文件数量最终达到数十万/百万,我会遇到问题吗?

谢谢,

史蒂文

0 投票
5 回答
8229 浏览

.net - Microsoft Azure 存储与 Azure SQL 数据库

我看到几个月前有人问过类似的问题,但它确实没有很好地解决我的情况。来了……

我正在从头开始构建一个基于 Web 的 .NET 应用程序,该应用程序有可能成为一个大容量站点(开始时每月有几十万页浏览量),并且正在强烈考虑使用 Microsoft Azure 来托管它. 我还没有建造任何东西,并且仍在研究我的不同选择。

应用程序本身的核心是一个标准的 CRUD 应用程序,它作用于许多不同类型的实体(例如用户、订单、项目等)。可能有一些后台进程可能正在运行和一些数据排队(对于非实时更新——例如获得 SO 徽章),但与用户的大多数交互将是典型的 CRUD 类型的操作。

关于 Azure,我已经阅读了许多关于使用 Microsoft Azure 存储来存储事务数据的文章,并且我强烈考虑这样做而不是使用 Azure SQL DB。但是,我还没有看到或读过很多真实的人和/或真实的公司这样做的成功故事。所以我想我会联系 SO 社区,看看是否有人有使用 Microsoft Azure 存储的经验,你有什么运气,我应该注意的任何问题,以及你有什么最佳实践想出。

我已经阅读了很多 Microsoft Azure MSDN 部分和 Microsoft 的编程 Microsoft Azure Table API 文档。我正在寻找实用的建议、经验教训、最佳实践等。提前致谢!

0 投票
3 回答
490 浏览

amazon-s3 - 需要存储 128 *bit* 主键:我应该使用 SQL Azure 还是 Azure Table?或者只是在 Azure Blob 中使用链表

我需要存储一个大的(128 位)PK。每个 int 都会有一些相应的列......现在没有定义模式......我希望未来的模式灵活。(我只需要保守的灵活性,例如不时添加新列)

在这一点上,我不太关心连接等的能力。我主要想选择一个随机的 PK 并向上或向下搜索到接下来的 10 条记录。由于搜索中可能存在大量空白,因此向上和向下搜索的成本可能会有所不同。

处理此请求的最佳技术是什么?我对可以为我省钱(每笔交易)和存储空间的东西感兴趣。我也对性能感兴趣。

你有什么建议吗?

更新

好的,那这是干什么用的?我想为 IPv6 地址创建数据历史记录。当然,这将是一个非常稀疏的表格……但我确实需要跟踪有关所见 IP 的某些事情。

0 投票
1 回答
1336 浏览

azure - Windows Azure 表:用于更新/合并的 C# API?

Windows Azure 表有两种不同的机制来更改现有实体:更新,它修改适当的属性,以及合并,它替换整个实体。

当你打电话时,这些中的哪一个被使用TableServiceContext.UpdateObject()?(我猜是更新。)另一个是通过这个 API 暴露的吗?

(抱歉,如果这在我的眼皮子底下,我没有看到它。)

0 投票
1 回答
624 浏览

c# - 从 Azure 表中检索特定字段值

以下代码总是抛出异常

如果我阅读实体它工作正常:

是否不可能从 Azure 表中仅读取一个字段(或几个,我不想读取实体)?

提前致谢。


更新:

异常数据:System.Data.Services.Client.DataServiceQueryException。

消息 - “处理此请求时发生错误。”

内部异常 - 代码:“InvalidInput”,消息:“其中一个请求输入无效。”

0 投票
2 回答
163 浏览

.net - 作为 Windows 服务运行的 Azure 开发存储服务

我正在开发一个项目,它是一个非常大的中央媒体存储库,它使用 Azure 存储来存放我们所有将由 3rd 方应用程序使用的外部二进制文件。我们的应用程序与 azure 配合使用,但现在正在继续添加一系列新功能,并且“从本地机器开发和测试”形式的测试不再足够。由于我们有一系列外部资源为我们提供需要在云中工作的媒体,因此我们需要一个集成测试环境设置。所以我已经设置了环境,我的问题是,有没有办法让 Azure 开发存储启动并作为 Windows 服务运行?目前,我必须登录并手动启动 azure developmentmet 存储,但一旦我注销,它就会关闭。这并不理想,也不起作用。由于这是一个开发箱,而且大部分数据都是垃圾,我们不想浪费我们的空间和带宽将这些东西发送到我们的 azure 帐户,这会花费我们的钱。谢谢!