Interface Database

All Known Implementing Classes:
SequentialDatabase

public interface Database

Database.java
Authors: Rainer Holzmann, Zhanna Melnikova-Albrecht, Matthias Schubert
Date: Aug 20, 2004
Time: 1:03:43 PM
$ Revision 1.4 $

Version:
$Revision: 1.2 $
Author:
Matthias Schubert (schubert@dbs.ifi.lmu.de), Zhanna Melnikova-Albrecht (melnikov@cip.ifi.lmu.de), Rainer Holzmann (holzmann@cip.ifi.lmu.de)
  • Method Details

    • getDataObject

      DataObject getDataObject(String key)
      Select a dataObject from the database
      Parameters:
      key - The key that is associated with the dataObject
      Returns:
      dataObject
    • size

      int size()
      Returns the size of the database (the number of dataObjects in the database)
      Returns:
      size
    • keyIterator

      Iterator keyIterator()
      Returns an iterator over all the keys
      Returns:
      iterator
    • dataObjectIterator

      Iterator dataObjectIterator()
      Returns an iterator over all the dataObjects in the database
      Returns:
      iterator
    • contains

      boolean contains(DataObject dataObject_Query)
      Tests if the database contains the dataObject_Query
      Parameters:
      dataObject_Query - The query-object
      Returns:
      true if the database contains dataObject_Query, else false
    • insert

      void insert(DataObject dataObject)
      Inserts a new dataObject into the database
      Parameters:
      dataObject -
    • getInstances

      Instances getInstances()
      Returns the original instances delivered from WEKA
      Returns:
      instances
    • setMinMaxValues

      void setMinMaxValues()
      Sets the minimum and maximum values for each attribute in different arrays by walking through every DataObject of the database
    • getAttributeMinValues

      double[] getAttributeMinValues()
      Returns the array of minimum-values for each attribute
      Returns:
      attributeMinValues
    • getAttributeMaxValues

      double[] getAttributeMaxValues()
      Returns the array of maximum-values for each attribute
      Returns:
      attributeMaxValues
    • epsilonRangeQuery

      List epsilonRangeQuery(double epsilon, DataObject queryDataObject)
      Performs an epsilon range query for this dataObject
      Parameters:
      epsilon - Specifies the range for the query
      queryDataObject - The dataObject that is used as query-object for epsilon range query
      Returns:
      List with all the DataObjects that are within the specified range
    • k_nextNeighbourQuery

      List k_nextNeighbourQuery(int k, double epsilon, DataObject dataObject)
      Emits the k next-neighbours and performs an epsilon-range-query at the parallel. The returned list contains two elements: At index=0 --> list with all k next-neighbours; At index=1 --> list with all dataObjects within epsilon;
      Parameters:
      k - number of next neighbours
      epsilon - Specifies the range for the query
      dataObject - the start object
      Returns:
      list with the k-next neighbours (PriorityQueueElements) and a list with candidates from the epsilon-range-query (EpsilonRange_ListElements)
    • coreDistance

      List coreDistance(int minPoints, double epsilon, DataObject dataObject)
      Calculates the coreDistance for the specified DataObject. The returned list contains three elements: At index=0 --> list with all k next-neighbours; At index=1 --> list with all dataObjects within epsilon; At index=2 --> coreDistance as Double-value
      Parameters:
      minPoints - minPoints-many neighbours within epsilon must be found to have a non-undefined coreDistance
      epsilon - Specifies the range for the query
      dataObject - Calculate coreDistance for this dataObject
      Returns:
      list with the k-next neighbours (PriorityQueueElements) and a list with candidates from the epsilon-range-query (EpsilonRange_ListElements) and the double-value for the calculated coreDistance