OctaDB Engine
1.0.0
In this project, you are going to build a small database engine with support for Octrees Indices. The required functionalities are
Table Name, Column Name, Column Type, ClusteringKey, IndexName,IndexType, min, max
CityShop, ID, java.lang.Integer, True, null, null, 0,10000
CityShop, Name, java.lang.String, False, NameAddrSpecIndex, Octree, “A”, “ZZZZZZZZZZZ”
CityShop, X, java.lang.Double, False, XYZIndex, Octree, 0,1000000
CityShop, Y, java.util.Double, False, XYZIndex, Octree, 0,1000000
CityShop, Z, java.lang.Double, False, XYZIndex, Octree, 0,1000000
CityShop, Specialization, java.lang.String, False, NameAddrSpecIndex, Octree, “A”, “ZZZZZZZZZZZ”
CityShop, Address, java.lang.String, False, NameAddrSpecIndex, Octree, “A”, “ZZZZZZZZZZZ”
*You must store the above metadata in a single file called metadata.csv. Do not worry about its size in your solution (i.e. do not page it).
*You must use the metadata.csv file to learn about the types of the data being passed and verify it is of the correct type. So, do not treat metadata.csv as decoration!
public void init( );
public void createTable(String strTableName, String strClusteringKeyColumn, Hashtable<String,String> htblColNameType, Hashtable<String,String> htblColNameMin, Hashtable<String,String> htblColNameMax ) throws DBAppException(){}
public void createIndex(String strTableName, String[] strarrColName) throws DBAppException(){}
public void insertIntoTable(String strTableName, Hashtable<String,Object> htblColNameValue) throws DBAppException(){}
public void updateTable(String strTableName, String strClusteringKeyValue, Hashtable<String,Object> htblColNameValue ) throws DBAppException(){}
public void deleteFromTable(String strTableName,Hashtable<String,Object> htblColNameValue) throws DBAppException(){}
public Iterator selectFromTable(SQLTerm[] arrSQLTerms, String[] strarrOperators) throws DBAppException(){}