Hi, seems you need to build index over this field.


 
>Hi All,
>I am having two nodes cluster grid and  cache model, which has 2126239 records 
>and Ignite query with IN operator taking too long sometimes 17 - 18 seconds 
>and another time around 40 seconds.
> 
>Expected result : 30000 to 40000 records.
> 
>ignite version: 2.10
>Ignite server hosted on linux box and C# .net 6 is the Ignite client
> 
>Ignite cache model class
> 
>public class TestModel : IBinarizable
>{
>
>[QuerySqlField()]
>public decimal? Field1 { get; set; }
>
>[QuerySqlField()]
>public string Field2 { get; set; }
>
>[QuerySqlField()]
>public string Field3 { get; set; }
>
>[QuerySqlField(IsIndexed = true)]
>public string Field4 { get; set; }
>
>[QuerySqlField()]
>public string Field5 { get; set; }
>
>public void ReadBinary(IBinaryReader reader)
>{
>if (reader != null)
>         {
>Field1 = reader.ReadDecimal("field1");
>Field2 = reader.ReadString("field2");
>Field3 = reader.ReadString("field3");
>Field4 = reader.ReadString("field4");
>Field5 = reader.ReadString("field5");
> }
>}
>
>public void WriteBinary(IBinaryWriter writer)
>{
>if (writer != null)
>         {
>writer.WriteDecimal("field1",Field1) ;
>writer.WriteString("field2",Field2) ;
>writer.WriteString("field3",Field3) ;
>writer.WriteString("field4",Field4) ;
>writer.WriteString("field5",Field5) ;
>}
>}
>
>Ignite query execution code
>string query = "select Field1,Field2,Field3,Field4 from TestModel where Field4 
>in('1','2')";
>SqlFieldsQuery fieldsQuery = new SqlFieldsQuery(query);
>    ICache.Query(fieldsQuery);
> 
> 
>Regards,
>Charlin 
 
 
 
 

Reply via email to