Exemplo n.º 1
0
        public async Task RunAsPermanentCollection()
        {
            List <InsertResult> insertResults = new List <InsertResult>();

            CosmosScaleOperator op = new CosmosScaleOperator(_client, 400, 5000, "test", "test1");
            await op.InitializeAsync(Models.StateMetaDataStorage.PermamentCosmosCollection);

            TextWriterTraceListener tr = new TextWriterTraceListener(System.IO.File.CreateText("scale.txt"));

            Trace.Listeners.Add(tr);
            Trace.AutoFlush = true;

            var res5k = await InsertAsBulkCAS(5000, UriFactory.CreateDocumentCollectionUri("test1", "test1"), op);

            insertResults.Add(res5k);
            ReportResults(insertResults, "runAsPermamentcollection");
            Thread.Sleep(TimeSpan.FromMinutes(3));
        }
Exemplo n.º 2
0
        private async Task <InsertResult> InsertAsBulkCAS(int count, Uri _collectionUri, CosmosScaleOperator _cosmosOperator)
        {
            var totalInsertedStart = (_cosmosOperator.QueryCosmos <long>("select value count(1) from c")).FirstOrDefault();

            InsertResult result = new InsertResult();

            result.Count = count;

            var insertObjects = new ConcurrentBag <CosmosTestOperationObject>();

            Parallel.For(0, count, (x) =>
            {
                insertObjects.Add(new CosmosTestOperationObject
                {
                    SomeRandomProperty  = rd.Next(1, 300000),
                    SomeRandomProperty2 = rd.Next(1, 100)
                });
            });

            Stopwatch st = new Stopwatch();

            st.Start();

            result.BulkInsertOpeartionResult = _cosmosOperator.BulkInsertDocuments(insertObjects);

            st.Stop();

            var totalInserted = (_cosmosOperator.QueryCosmos <long>("select value count(1) from c")).FirstOrDefault();

            result.TotalRunTime = st.Elapsed.TotalSeconds;
            result.SuccessRate  = ((totalInserted - totalInsertedStart) / (double)count) * 100;
            return(result);
        }