push
aims to collect all workers’ partitions and store them in global. All workers should run it concurrently. The defination of the method is:
boolean push(final String contextName, final String operationName, Table<P> localTable, Table<P> globalTable, PT partitioner, DataMap dataMap, Workers workers)
contextName
— the name of the contextoperationName
— the name of the operationlocalTable
— the name of the local data tableglobalTable
— the name of the global data tablepartitioner
— the partitionerdataMap
— the data mapworkers
— the workers
Example
push(contextName, "local-global", localTable, globalTable, new Partitioner(workers.getNumWorkers()), dataMap, workers);
pull
aims to distribute the partitions stored in global to all workers. All workers should run it concurrently. The defination of the method is:
boolean pull(final String contextName, final String operationName, Table<P> localTable, Table<P> globalTable, boolean useBcast, DataMap dataMap, Workers workers)
contextName
— the name of the contextoperationName
— the name of the operationlocalTable
— the name of the local data tableglobalTable
— the name of the global data tableuseBcast
— whether use broadcast or notdataMap
— the data mapworkers
— the workers
Example
pull(contextName, "global-local", localTable, globalTable, true, dataMap, workers);