本文整理汇总了C#中Aerospike.Client.AerospikeClient.ScanNode方法的典型用法代码示例。如果您正苦于以下问题:C# AerospikeClient.ScanNode方法的具体用法?C# AerospikeClient.ScanNode怎么用?C# AerospikeClient.ScanNode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Aerospike.Client.AerospikeClient
的用法示例。
在下文中一共展示了AerospikeClient.ScanNode方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RunExample
/// <summary>
/// Scan all nodes in series and read all records in all sets.
/// </summary>
public override void RunExample(AerospikeClient client, Arguments args)
{
console.Info("Scan series: namespace=" + args.ns + " set=" + args.set);
setMap.Clear();
// Use low scan priority. This will take more time, but it will reduce
// the load on the server.
ScanPolicy policy = new ScanPolicy();
policy.maxRetries = 1;
policy.priority = Priority.LOW;
Node[] nodes = client.Nodes;
DateTime begin = DateTime.Now;
foreach (Node node in nodes)
{
console.Info("Scan node " + node.Name);
client.ScanNode(policy, node, args.ns, args.set, ScanCallback);
foreach (KeyValuePair<string, Metrics> entry in setMap)
{
console.Info("Node " + node.Name + " set " + entry.Key + " count: " + entry.Value.count);
entry.Value.count = 0;
}
}
DateTime end = DateTime.Now;
double seconds = end.Subtract(begin).TotalSeconds;
console.Info("Elapsed time: " + seconds + " seconds");
long total = 0;
foreach (KeyValuePair<string, Metrics> entry in setMap)
{
console.Info("Total set " + entry.Key + " count: " + entry.Value.total);
total += entry.Value.total;
}
console.Info("Grand total: " + total);
double performance = Math.Round((double)total / seconds);
console.Info("Records/second: " + performance);
}