Search in sources :

Example 1 with DictionaryMatcherSourceOperator

use of edu.uci.ics.texera.dataflow.dictionarymatcher.DictionaryMatcherSourceOperator in project textdb by TextDB.

the class DictionaryMatcherPerformanceTest method match.

/**
 * This function does match for a dictionary
 */
public static void match(ArrayList<String> queryList, KeywordMatchingType opType, String luceneAnalyzerStr, String tableName) throws Exception {
    List<String> attributeNames = Arrays.asList(MedlineIndexWriter.ABSTRACT);
    Dictionary dictionary = new Dictionary(queryList);
    DictionarySourcePredicate dictionarySourcePredicate = new DictionarySourcePredicate(dictionary, attributeNames, luceneAnalyzerStr, opType, tableName, SchemaConstants.SPAN_LIST);
    DictionaryMatcherSourceOperator dictionaryMatcher = new DictionaryMatcherSourceOperator(dictionarySourcePredicate);
    long startMatchTime = System.currentTimeMillis();
    dictionaryMatcher.open();
    Tuple nextTuple = null;
    int counter = 0;
    while ((nextTuple = dictionaryMatcher.getNextTuple()) != null) {
        ListField<Span> spanListField = nextTuple.getField(SchemaConstants.SPAN_LIST);
        List<Span> spanList = spanListField.getValue();
        counter += spanList.size();
    }
    dictionaryMatcher.close();
    long endMatchTime = System.currentTimeMillis();
    matchTime = (endMatchTime - startMatchTime) / 1000.0;
    resultCount = counter;
}
Also used : Dictionary(edu.uci.ics.texera.dataflow.dictionarymatcher.Dictionary) Span(edu.uci.ics.texera.api.span.Span) DictionaryMatcherSourceOperator(edu.uci.ics.texera.dataflow.dictionarymatcher.DictionaryMatcherSourceOperator) Tuple(edu.uci.ics.texera.api.tuple.Tuple) DictionarySourcePredicate(edu.uci.ics.texera.dataflow.dictionarymatcher.DictionarySourcePredicate)

Aggregations

Span (edu.uci.ics.texera.api.span.Span)1 Tuple (edu.uci.ics.texera.api.tuple.Tuple)1 Dictionary (edu.uci.ics.texera.dataflow.dictionarymatcher.Dictionary)1 DictionaryMatcherSourceOperator (edu.uci.ics.texera.dataflow.dictionarymatcher.DictionaryMatcherSourceOperator)1 DictionarySourcePredicate (edu.uci.ics.texera.dataflow.dictionarymatcher.DictionarySourcePredicate)1