Hi, Please properly subscribe to the mailing list so that the community can receive email notifications for your messages. To subscribe, send empty email to [email protected] and follow simple instructions in the reply.
Yes, for now, query will be send to all Item cache data nodes. There is a ticket, that should resolve this problem IGNITE-4509 [1] and related IGNITE-4510 [2] that should solve IN operator issue. [1] https://issues.apache.org/jira/browse/IGNITE-4509 [2] https://issues.apache.org/jira/browse/IGNITE-4510 You wrote > Hi, > Let's say we have an ignite cache 'Item' where we have id, name, desc, and > some other fields, and we have indexes on id and name. > The query that we intend to hit is > "select * from Item where _KEY in (?,?,?,?,?,?,?,?,?,?) and name = ?" and > i always need to pass 10 values of key. > As has been mentioned in other threads, this will not use the indexes, so > we will be using query like > "select I.* from Item I, table(_KEY integer = ?)N where T._KEY = I._KEY > and name=?" > The above works very well, but the question is that does this query > execute on all the nodes of the cluster. > Let's say i have 20 nodes in the cluster, and ignite executes this on all > the nodes of the cluster, and returns back the data. > Now, lets say that this query takes 1 ms when executing on every node, so > that each node will be able to serve upto 1000 queries per second. But > considering each query executes on every node, the cluster will be able to > serve upto 1000 qps. Even though i double my cluster size to 40 nodes when > my dataset increases, the number of queries per second will still be 1000. > Here, i am assuming that each query runs on every node.Is it true? If yes, > then doesn't it prevent the system from horizontal scaling while > querying(and not while storing)? > Thanks > Tuco -- Best regards, Andrey V. Mashenkov
