Skip to content

Commit a6d2ec8

Browse files
committed
Move create and insert QueryBuilders to new package and add "category" attribute "realKnn" benchmarking tables
1 parent 44a960c commit a6d2ec8

6 files changed

Lines changed: 23 additions & 15 deletions

File tree

src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/CreateIntFeature.java renamed to src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/creation/CreateIntFeature.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
* SOFTWARE.
2323
*/
2424

25-
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder;
25+
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder.creation;
2626

2727
import java.util.Map;
2828
import kong.unirest.core.HttpRequest;
@@ -64,7 +64,7 @@ private static class CreateIntFeatureQuery extends Query {
6464

6565
@Override
6666
public String getSql() {
67-
String sql = "CREATE TABLE knn_intfeature (id INTEGER NOT NULL, feature INTEGER ARRAY(1, " + this.dimension + "), PRIMARY KEY(id))";
67+
String sql = "CREATE TABLE knn_intfeature (id INTEGER NOT NULL, feature INTEGER NOT NULL ARRAY(1, " + this.dimension + "), PRIMARY KEY(id))";
6868
if ( this.store != null ) {
6969
sql += " ON STORE \"" + this.store + "\"";
7070
}

src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/CreateMetadata.java renamed to src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/creation/CreateMetadata.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
* SOFTWARE.
2323
*/
2424

25-
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder;
25+
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder.creation;
2626

2727
import java.util.Map;
2828
import kong.unirest.core.HttpRequest;

src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/CreateRealFeature.java renamed to src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/creation/CreateRealFeature.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
* SOFTWARE.
2323
*/
2424

25-
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder;
25+
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder.creation;
2626

2727
import java.util.Map;
2828
import kong.unirest.core.HttpRequest;
@@ -64,7 +64,11 @@ private static class CreateRealFeatureQuery extends Query {
6464

6565
@Override
6666
public String getSql() {
67-
String sql = "CREATE TABLE knn_realfeature (id INTEGER NOT NULL, feature REAL ARRAY(1, " + this.dimension + "), PRIMARY KEY(id))";
67+
String sql = "CREATE TABLE knn_realfeature ("
68+
+ "id INTEGER NOT NULL, "
69+
+ "category VARCHAR(50), "
70+
+ "feature REAL NOT NULL ARRAY(1, " + this.dimension + "), "
71+
+ "PRIMARY KEY(id))";
6872
if ( this.store != null ) {
6973
sql += " ON STORE \"" + this.store + "\"";
7074
}

src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/InsertIntFeature.java renamed to src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/insertion/InsertIntFeature.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
* SOFTWARE.
2323
*/
2424

25-
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder;
25+
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder.insertion;
2626

2727
import com.google.gson.JsonObject;
2828
import java.util.Arrays;

src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/InsertMetadata.java renamed to src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/insertion/InsertMetadata.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
* SOFTWARE.
2323
*/
2424

25-
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder;
25+
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder.insertion;
2626

2727
import com.google.gson.JsonObject;
2828
import java.util.HashMap;

src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/InsertRealFeature.java renamed to src/main/java/org/polypheny/simpleclient/scenario/vectorbench/queryBuilder/insertion/InsertRealFeature.java

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
* SOFTWARE.
2323
*/
2424

25-
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder;
25+
package org.polypheny.simpleclient.scenario.vectorbench.queryBuilder.insertion;
2626

2727
import com.google.gson.JsonObject;
2828
import java.util.Arrays;
@@ -43,6 +43,7 @@ public class InsertRealFeature extends QueryBuilder {
4343
private static final AtomicInteger nextId = new AtomicInteger( 1 );
4444
private final long randomSeed;
4545
private final int dimension;
46+
private static final String[] CATEGORIES = {"cat_A", "cat_B", "cat_C", "cat_D"};
4647

4748
private final Random random;
4849

@@ -69,42 +70,45 @@ private Float[] getRandomVector() {
6970
public synchronized BatchableInsert getNewQuery() {
7071
return new InsertRealFeatureQuery(
7172
nextId.getAndIncrement(),
72-
getRandomVector()
73+
getRandomVector(),
74+
CATEGORIES[random.nextInt(CATEGORIES.length)]
7375
);
7476
}
7577

7678

7779
private static class InsertRealFeatureQuery extends BatchableInsert {
7880

79-
private static final String SQL = "INSERT INTO knn_realfeature (id, feature) VALUES ";
81+
private static final String SQL = "INSERT INTO knn_realfeature (id, category, feature) VALUES ";
8082
private final int id;
8183
private final Float[] feature;
84+
private String randomCategory;
8285

83-
84-
private InsertRealFeatureQuery( int id, Float[] feature ) {
86+
private InsertRealFeatureQuery( int id, Float[] feature, String randomCategory ) {
8587
super( EXPECT_RESULT );
8688
this.id = id;
8789
this.feature = feature;
90+
this.randomCategory = randomCategory;
8891
}
8992

9093

9194
@Override
9295
public String getSqlRowExpression() {
93-
return "(" + id + ", ARRAY" + Arrays.toString( feature ) + ")";
96+
return "(" + id + ", '" + randomCategory + "', ARRAY" + Arrays.toString( feature ) + ")";
9497
}
9598

9699

97100
@Override
98101
public String getParameterizedSqlQuery() {
99-
return SQL + "(?, ?)";
102+
return SQL + "(?, ?, ?)";
100103
}
101104

102105

103106
@Override
104107
public Map<Integer, ImmutablePair<DataTypes, Object>> getParameterValues() {
105108
Map<Integer, ImmutablePair<DataTypes, Object>> map = new HashMap<>();
106109
map.put( 1, new ImmutablePair<>( DataTypes.INTEGER, id ) );
107-
map.put( 2, new ImmutablePair<>( DataTypes.ARRAY_REAL, feature ) );
110+
map.put( 2, new ImmutablePair<>( DataTypes.VARCHAR, randomCategory ) );
111+
map.put( 3, new ImmutablePair<>( DataTypes.ARRAY_REAL, feature ) );
108112
return map;
109113
}
110114

0 commit comments

Comments
 (0)