Hello Christo,

The problem with the original approach is this:

- I have a flat table structure which is is mapped by the following POJO:

@Entity
@Table(name = "simulation_initial_values")
public class SimulationInitialValues extends IdEntity {

        @Basic
        @Column(name = "product_id")
        private Long productId;

        @Basic
        @Column(name = "geo_channel_id")
        private Long geoChannelId;

        @Basic
        @Column(name = "category_id", nullable = false)
        private Long categoryId;

        @Basic
        @Column(name = "week", nullable = false)
        private Integer week;

        @Basic
        @Column(name = "type_id", nullable = false)
        private Integer type;
        .
        .
        . more fields
}

We consider as primary key combination of: productId, geoChannelId,
categoryId, week and type

Now, when I perform an in-memory query like: /select from
SimulationInitialValues where categoryId in (...) and geoChannelId in (...)
and type =? and week between ? and ?/, I will get back a List of
SimulationInitialValues objects. 

Due to the nature of the calculations I have to perform though, I must have
all the products rows of each distinct category.

So in case of PARTITIONED cache, if I do broadcast, then there is no
guarantee that the categories assigned to a job will have all the rows at
the local cache.
        



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Distributed-Closures-VS-Executor-Service-tp11192p11861.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Reply via email to