In this document the search options concerning performance are summarized and their usage is shown in different search interfaces.
Sets maxResultCount property. Limits the number of molecules returned by the search to maxResultCount. If maxResultCount is 0, then there is no limit. MolSearch API
Not applicable.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setMaxResultCount(maxCount);
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
Default value is 0, i.e. there is no limit.
JChem Oracle Cartridge
Use the jc_compare operator with maxResults:int.
jcsearch command line tool
Use the following command line parameter:
--maxResults:<count>
Limits the time of the search. TotalSearchTimeoutLimitMilliseconds is to be specified in milliseconds. Search will be stopped after the specified time has elapsed and the hits found up to this time are returned. There is no timeout limit, by default. MolSearch API
Not applicable.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setTotalSearchTimeoutLimitMilliseconds(maxTimeMillis);
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
JChem Oracle Cartridge
Use the jc_compare operator with totalSearchTimeoutLimitMilliseconds:int.
Example:
SELECT count(*) FROM nci_12n WHERE jc_compare(smiles, 'c1ccccc1', 't:d totalSearchTimeoutLimitMilliseconds:15000') = 1;
jcsearch command line tool
Not applicable.
Sets option for rearranging query atoms to increase search performance. False, if search should rearrange query atoms for better search performance. Default value is false. MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setKeepQueryOrder( false / true );
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setKeepQueryOrder( false / true );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
JChem Oracle Cartridge
Not applicable.
jcsearch command line tool
Use the following command line parameter:--keepQueryOrder
If more than one queries are present, at least one is required to match. For DB targets, only the first query is considered. MolSearch API
Not applicable.
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setOptimizeQueries( false / true );
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
JChem Oracle Cartridge
Not applicable.
jcsearch command line tool
Use the following command line parameter:
--optimizeQueries:y/n
y: yes (default);
n: no.
The search on a single target can reach this amount of time. Set it to -1 if you do not want the search to timeout. The timeout limit has to be set in milliseconds. Default value is 120000 (2 minutes). MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setTimeoutLimitMilliseconds(limit);
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setTimeoutLimitMilliseconds(limit);
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
JChem Oracle Cartridge
Use the jc_compare operator with timeoutLimitMilliseconds:int.
Example:
SELECT count(*) FROM nci_12n WHERE jc_compare(smiles, 'c1ccccc1', 't:d timeoutLimitMilliseconds:15000') = 1;
jcsearch command line tool
Use the following command line parameter:
--timeoutLimitMilliseconds:<timeout limit in milliseconds>
Upon reaching this number of steps, the search switches to exhaustive mode from fast mode. Setting to -1 means never. Default -1. MolSearch API
MolSearchOptions searchOptions = new MolSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setExhaustiveModeLimit(limit);
// ...
MolSearch searcher = new MolSearch();
searcher.setSearchOptions(searchOptions);
JChemSearch API
JChemSearchOptions searchOptions = new JChemSearchOptions(SearchConstants.SUBSTRUCTURE);
searchOptions.setExhaustiveModeLimit(limit);
// ...
JChemSearch searcher = new JChemSearch();
searcher.setSearchOptions(searchOptions);
JChem Oracle Cartridge
Use the jc_compare operator with exhaustiveModeLimit:limit
jcsearch command line tool
Use the following command line parameter:
--exhaustiveModeLimit