我们目前有一个填充日志的Azure表.我们不知道有多少记录,但我们知道我们做了+ - 3密耳的交易.因此,在最坏的情况下,我们将有300密耳.行.
我们想要完全删除所有日志.如果我们删除该表,这是否意味着1个交易,或者这意味着他将批量删除他能够的所有行并且大约3密耳.再次交易?
我找不到任何有关Delete table命令实际上是1个事务的官方信息.
有帮助吗?
谢谢 !
我想知道以下是什么样的.NET查询语言:
tableName.Select(e => e.PartitionKey == „KeyX“).ToList().OrderBy(e => e.SomeValue).Take(25)
Run Code Online (Sandbox Code Playgroud)
我发现它是查询Windows Azure存储表的示例.
这个东西是名称,它是否也可以与SQL一起使用而不是Azure存储表,是否包含在.NET或一些额外的库中?
谢谢
如果我没有指定分区密钥并因此执行所有分区的扫描,那么扫描是否会自动与并发扫描的每个分区并行进行?
谢谢.
从MSDN,似乎查询服务返回的实体数量有限制:
对Table服务的查询一次最多可返回1,000个实体,并且最多可执行五秒.
但是当我写一个示例来展示这个问题时,我没有发现返回实体数量的任何限制,这是我的关键代码:
public class DataProvider
{
public static string PartitionKey
{
get { return "PartitionKey"; }
}
public static IEnumerable<CustomerEntity> MoreThanThousandData()
{
var result = new List<CustomerEntity>();
for (int i = 0; i < 1200; i++)
{
result.Add(new CustomerEntity(PartitionKey, Guid.NewGuid().ToString())
{
Name = Guid.NewGuid().ToString(),
Age = new Random().Next(10, 70)
});
}
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
将1200个实体插入表中:
public class AfterOptimize
{
public void InsertDataToTable()
{
var cloudData = DataProvider.MoreThanThousandData();
Console.WriteLine("Plan to insert {0} entities to the table.", cloudData.Count()); …Run Code Online (Sandbox Code Playgroud) 我想使用表操作将多个实体插入到 azure 表中
我将所有数据作为列表,我只想将这些详细信息保存到表中。
var registrationDescriptionsList = new List<RegistrationDescription>(allRegistrations);
foreach(var retrivedatafromlist in registrationDescriptionsList)
{
batchOperation.Add(TableOperation.Insert(retrivedatafromlist));
}
Run Code Online (Sandbox Code Playgroud) 我想为事务创建 Azure 表,并且我想使用 DATE 作为分区键。我可以在 Azure 表中使用 DATE 作为分区键吗?如果我需要在我的代码中使用它,我是否需要将日期转换为字符串,反之亦然?
我一直在寻找正确的语法来创建从 python 到 Azure 表存储表的范围查询。
延续令牌无法帮助我,因为我想定义特定范围或 RowKeys 并仅检索那些。
我一直在尝试以下
rows = table_service.query_entities(
tableName,
"PartitionKey eq '6' and RowKey gt '1452702466022' and RowKey lt '1452702466422")
Run Code Online (Sandbox Code Playgroud)
和
rows = table_service.query_entities(
'rawpowervalues6', "PartitionKey eq '6'",
select="RowKey gt '1452702466022' and RowKey lt '1452702466422")
Run Code Online (Sandbox Code Playgroud)
没有运气。我找不到任何关于 python 范围查询的官方文档。迄今为止最好的资源是,但我不能让它在 python 中工作。
我正在尝试从python sdk为特定的azure帐户/表启用CORS.
不幸的是,文档没有涉及该主题.从这里看,我知道我必须使用set_table_service_properties()并传递storage_service_properties参数.但我不知道这个论点应该如何格式化.
我应该创建一个字典,当传递给转换的xml时会产生类似的东西吗?
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>1.0</Version>
<Delete>true</Delete>
<Read>false</Read>
<Write>true</Write>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>1.0</Version>
<Enabled>true</Enabled>
<IncludeAPIs>false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>1.0</Version>
<Enabled>true</Enabled>
<IncludeAPIs>true</IncludeAPIs>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins> http://www.fabrikam.com,http://www.contoso.com</AllowedOrigins>
<AllowedMethods>GET,PUT</AllowedMethods>
<MaxAgeInSeconds>500</MaxAgeInSeconds>
<ExposedHeaders>x-ms-meta-data*,x-ms-meta-customheader</ExposedHeaders>
<AllowedHeaders>x-ms-meta-target*,x-ms-meta-customheader</AllowedHeaders>
</CorsRule>
</Cors>
</StorageServiceProperties>
Run Code Online (Sandbox Code Playgroud) 我试图将10000条记录插入Azure表存储。我正在使用ExecuteAsync()实现它,但是不知何故,大约插入了7500条记录,其余的记录丢失了。我故意不使用await关键字,因为我不想等待结果,只想将它们存储在表中。以下是我的代码段。
private static async void ConfigureAzureStorageTable()
{
CloudStorageAccount storageAccount =
CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));
CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
TableResult result = new TableResult();
CloudTable table = tableClient.GetTableReference("test");
table.CreateIfNotExists();
for (int i = 0; i < 10000; i++)
{
var verifyVariableEntityObject = new VerifyVariableEntity()
{
ConsumerId = String.Format("{0}", i),
Score = String.Format("{0}", i * 2 + 2),
PartitionKey = String.Format("{0}", i),
RowKey = String.Format("{0}", i * 2 + 2)
};
TableOperation insertOperation = TableOperation.Insert(verifyVariableEntityObject);
try
{
table.ExecuteAsync(insertOperation);
}
catch (Exception e)
{ …Run Code Online (Sandbox Code Playgroud) 我试图基于分区键替换我的表上的实体和行键成功检索实体但当我尝试强制转换它时,它会抛出一个无效的强制转换异常.我查看了MSDN文档,这是正确的删除方法,甚至确保遵循创建实体的准则
您要存储在表中的实体属性必须是该类型的公共属性,并支持获取和设置值.此外,您的实体类型必须公开无参数构造函数
这是我的班级
public class BasicAsset : TableEntity
{
public BasicAsset()
{
}
public BasicAsset(string name)
{
Name = name;
}
[IsFilterable, IsSortable, IsSearchable]
public string Name { get; set; }
[IsFilterable, IsSortable]
public int Version { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是我在异常时的代码
TableOperation retreiveOperation = TableOperation.Retrieve("Orginization", result.Results[0].Document.RowKey);
TableResult toDelete = await table.ExecuteAsync(retreiveOperation);
BasicAsset toReplaceAsset = (BasicAsset) toDelete.Result;
//Change what is new here
toReplaceAsset.Version = asset.Version;
TableOperation replaceOperation = TableOperation.Replace(toReplaceAsset);
Run Code Online (Sandbox Code Playgroud)
错误
e = {System.InvalidCastException: Unable to cast object of type 'Microsoft.WindowsAzure.Storage.Table.DynamicTableEntity' …Run Code Online (Sandbox Code Playgroud)