query
play

Query DB structures Manipulation queries DB search Hits Memory - PowerPoint PPT Presentation

Query DB structures Manipulation queries DB search Hits Memory search 2 Standardization of the query 3 DB search DB structures Manipulation queries DB search Hits Memory search Search in database Main classes of the search


  1. Query DB structures Manipulation queries DB search Hits Memory search

  2. 2

  3. Standardization of the query 3

  4. DB search DB structures Manipulation queries DB search Hits Memory search

  5. Search in database Main classes of the search process I. JChemSearch MolSearch StandardizedMolSearch 5

  6. Search in database Main classes of the search process II. SearchOptions JChemSearchOptions MolSearchOptions (JChemSearch) (MolSearch, StandardizedMolSearch) 6

  7. Structure search types Search type Query Retrieved Not retrieved Substructure Superstructure Full structure Full fragment Duplicate Similarity 7

  8. Search options  Charge, isotopes, radical, valence (on, exact, ignore) ‏ ON: Exact: Ignore: 8

  9. Search options  Stereo search ‏ on 9

  10. Search options  Stereo search ‏ exact 10

  11. Search options  Stereo search ‏ enantiomer, diastereomer 11

  12. Search options  Stereo search ‏ off 12

  13. Search options  Tautomer search (off/on) ‏ 13

  14. Search options  Vague bond search levels OFF default or aromatic ignore type 14

  15. Search options • Attached data search (off/on) ‏ 15

  16. Search in database Search type is set in constructor! JChemSearchOptions jcSearchOptions =  new JChemSearchOptions(SearchConstants.SIMILARITY); Setting search options jcSearchOptions . setVagueBondLevel (SearchConstants.VAGUE_BOND_LEVEL2)  jcSearchOptions . setOptions ("hcountmatching:g keepqueryorder:y");  Modifying search behaviour jcSearchOptions.setMaxResultCount(10);  jcSearchOptions.setMaxTime(10000);  jcSearchOptions.setReturnsNonHits(true);  ( SearchUtil.java) 16

  17. Search in database Running a search - JChemSearch JChemSearch jChemSearch = new JChemSearch(); jChemSearch.setConnectionHandler(connectionHandler); jChemSearch.setQueryStructure(query); // no need for aromatization! jChemSearch.setStructureTable(targetTable); jChemSearch.setSearchOptions(jcSearchOptions); jChemSearch.run(); (SearchUtil.java) Cartridge example SELECT id FROM mystructures WHERE jc_compare(smiles, 'Brc1ccccc1C=C Cc1cccc(Br)c1C Cc1ccccc1Br', 't:d') = 1; 17

  18. Search in database Reusing objects jChemSearch.setSearchOptions(jcSearchOptions);  jChemSearch.run(); … jcSearchOptions.setOption("vagueBond", "3"); … // JChemSearchOptions object must be set again! jChemSearch.setSearchOptions(jcSearchOptions); jChemSearch.getSearchOptions().setOption("vagueBond", "3");  (DatabaseSearchExample.java) 18

  19. Manipulation DB structures Manipulation queries DB search Hits Memory search

  20. Search in database - asynchronous mode Running search in a separate thread jChemSearch. setRunMode (JChemSearch. RUN_MODE_ASYNCH_COMPLETE ); jChemSearch.run(); while (jChemSearch. isRunning() ) { String msg = jChemSearch. getProgressMessage() ; int count = jChemSearch . getResultCount(); int lastId = jChemSearch . getCurrentId(); System.out.printf("Progress message: %s, result count: %d, " + "last cd_id: %d\n", msg, count, lastId); Thread.sleep(100); } System.out.println(jChemSearch. getResultCount() + " hit(s) found"); ( AsyncSearchExample.java ) 20

  21. Search in database - similarity Similarity search  Using default descriptor: chemical hashed fingerprint jcso. setSearchType (SearchConstants.SIMILARITY); jcso. setDissimilarityThreshold (0.4);  Using other descriptors: a descriptor table have to be created first! gMD = new GenerateMD(); ... // set connection handler, structure table name etc. gMD. setDescriptor ("myDescriptor", "ECFP", settings, null ); gMD. init (); gMD. run (); jcso. setDescriptorName ("myDescriptor"); (SimilaritySearchExample.java) 21

  22. Search in database - descriptors JChem Screen descriptors can be set up for JChem tables Available descriptors:  ECFP, FCFP – extended connectivity fingerprint  pharmacophore fingerprint  BCUT  chemical fingerprint Various metrics  Tanimoto  Euclidean  Tversky,  Dice,  Sub, Super, etc 22

  23. Search in database - filtering Pre-filtering, ordering  Filtering target molecules: jcSearchOptions. setFilterQuery ("SELECT cd_id FROM my_structures" + " WHERE cd_molweight < 500");  Filter queries can also be used for ordering: jcSearchOptions. setFilterQuery ("SELECT cd_id FROM my_ structures” + " ORDER BY cd_molweight");  Filtering based on a separate table: jcSearchOptions. setFilterQuery ( "SELECT cd_id" + " FROM stock_table" + " WHERE quantity > 20"); (SearchWithFilterQueryExample.java) 23

Recommend


More recommend