private PossibleIndex Convert(DBMS.Contracts.IndexDefinition indexDefinition, long size, Dictionary <string, long> filters)
        {
            PossibleIndex result = new PossibleIndex();

            result.RelationID        = indexDefinition.Relation.ID;
            result.CreateDefinition  = dbObjectDefinitionGenerator.Generate(indexDefinition).CreateStatement;
            result.FilterExpressions = new PossibleIndexFilterExpressionsData();
            foreach (var f in filters)
            {
                result.FilterExpressions.Expressions.Add(new PossibleIndexFilterExpression()
                {
                    Expression = f.Key, Size = f.Value
                });
            }
            result.Name = indexDefinition.Name;
            result.Size = size;
            return(result);
        }
Exemple #2
0
        private WorkloadAnalysisEnvironmentIndexExtended Convert(PossibleIndex source)
        {
            WorkloadAnalysisEnvironmentIndexExtended result = new WorkloadAnalysisEnvironmentIndexExtended();

            result.CreateDefinition = source.CreateDefinition;
            if (source.FilterExpressions != null && source.FilterExpressions.Expressions != null)
            {
                foreach (var item in source.FilterExpressions.Expressions)
                {
                    result.Filters.Add(item.Expression, item.Size);
                }
            }
            result.ID         = source.ID;
            result.Name       = source.Name;
            result.RelationID = source.RelationID;
            result.Size       = source.Size;
            return(result);
        }
 private VirtualEnvironmentPossibleCoveringIndex Convert(VirtualEnvironment env, long statementID, PossibleIndex createdIndex)
 {
     return(new VirtualEnvironmentPossibleCoveringIndex()
     {
         VirtualEnvironmentID = env.ID,
         PossibleIndexID = createdIndex.ID,
         NormalizedStatementID = statementID,
     });
 }
        private VirtualEnvironmentPossibleIndex Convert(VirtualEnvironment environment, PossibleIndex possibleIndex, VirtualIndicesEnvironmentIndexEvaluation indexEval)
        {
            VirtualEnvironmentPossibleIndex result = new VirtualEnvironmentPossibleIndex();

            result.PossibleIndexID      = possibleIndex.ID;
            result.VirtualEnvironemntID = environment.ID;
            result.ImprovementRatio     = indexEval.ImprovementRatio;
            return(result);
        }