|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectmessif.algorithms.Algorithm
messif.algorithms.impl.ParallelSequentialScan
public class ParallelSequentialScan
Parallel implementation of the naive sequential scan algorithm.
Several buckets are used to store data in a round-robin fashion
using the InsertOperation
. Then, each QueryOperation
is executed on each of the buckets in parallel.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class messif.algorithms.Algorithm |
---|
Algorithm.AlgorithmConstructor |
Field Summary |
---|
Fields inherited from class messif.algorithms.Algorithm |
---|
log, maximalConcurrentOperations |
Constructor Summary | |
---|---|
ParallelSequentialScan(int parallelization)
Creates a new instance of ParallelSequentialScan access structure with MemoryStorageBucket as the storage class. |
|
ParallelSequentialScan(int parallelization,
java.lang.Class<? extends LocalBucket> bucketClass)
Creates a new instance of ParallelSequentialScan access structure with specific bucket class. |
|
ParallelSequentialScan(int parallelization,
java.lang.Class<? extends LocalBucket> bucketClass,
java.util.Map<java.lang.String,java.lang.Object> bucketClassParams)
Creates a new instance of ParallelSequentialScan access structure with specific bucket class. |
Method Summary | |
---|---|
void |
delete(DeleteByLocatorOperation operation)
Deletes objects by locators. |
void |
delete(DeleteOperation operation)
Deletes an object. |
void |
destroy()
Destroy this algorithm. |
void |
finalize()
Finalize the algorithm. |
void |
insert(BulkInsertOperation operation)
Inserts multiple new objects. |
void |
insert(InsertOperation operation)
Inserts a new object. |
void |
search(QueryOperation<?> operation)
Performs a query operation. |
java.lang.String |
toString()
Shows the information about this algorithm. |
Methods inherited from class java.lang.Object |
---|
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public ParallelSequentialScan(int parallelization, java.lang.Class<? extends LocalBucket> bucketClass, java.util.Map<java.lang.String,java.lang.Object> bucketClassParams) throws java.lang.IllegalArgumentException
parallelization
- the number of paralllel buckets to createbucketClass
- the class of the storage bucketbucketClassParams
- additional parameters for the bucket class constructor in the name->value form
java.lang.IllegalArgumentException
- if public ParallelSequentialScan(int parallelization, java.lang.Class<? extends LocalBucket> bucketClass) throws java.lang.IllegalArgumentException
parallelization
- the number of paralllel buckets to createbucketClass
- the class of the storage bucket
java.lang.IllegalArgumentException
- if public ParallelSequentialScan(int parallelization) throws java.lang.IllegalArgumentException
MemoryStorageBucket
as the storage class.
parallelization
- the number of paralllel buckets to create
java.lang.IllegalArgumentException
- if Method Detail |
---|
public void finalize() throws java.lang.Throwable
Algorithm
finalize
in class Algorithm
java.lang.Throwable
- if there was an error finalizingpublic void destroy() throws java.lang.Throwable
Algorithm
This implementation defaults to call Algorithm.finalize()
, but should be overriden
if the algorithm needs to differentiate between finalizing and destroying. In that case
the "super.destroy()" should not be called if finalizing is not part of destroy.
destroy
in class Algorithm
java.lang.Throwable
- if there was an error while cleaningpublic void insert(InsertOperation operation)
operation
- the insert operation which carries the object to be inserted.public void insert(BulkInsertOperation operation)
operation
- the bulk-insert operation which carries the objects to be inserted.public void delete(DeleteOperation operation) throws BucketStorageException
operation
- the delete operation which specifies the object to be deleted.
BucketStorageException
- if the low occupation limit is reached when deleting objectpublic void delete(DeleteByLocatorOperation operation) throws BucketStorageException
operation
- the delete operation which specifies the locators of objects to be deleted
BucketStorageException
- if the low occupation limit is reached when deleting objectpublic void search(QueryOperation<?> operation) throws java.lang.CloneNotSupportedException, java.lang.InterruptedException
operation
- the query operation which is to be executed and which will received the result list.
java.lang.CloneNotSupportedException
- if the operation does not support clonning (and thus cannot be used in parallel)
java.lang.InterruptedException
- if the processing thread was interrupted during processingpublic java.lang.String toString()
toString
in class java.lang.Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |