The Query Service is the new platform solution for querying a variety of data sources. The goal of Query Service is that administrators can configure a metadata description of the data source that can then be used by end users without detailed knowledge of the underlying data source. This session explains how to configure Query Service data sources and use them with the RESTful API or component collection.
2. The information on the roadmap and future software development efforts are
intended to outline general product direction and should not be relied on in making
a purchasing decision.
3. • Introduction
• Administrator
– Installation
– Configuring data sources
• Application Developer
– RESTful API
• Protocol Author
– Pipeline Pilot Component Collection
• Conclusion
Content
4. Accelrys Query Service
Accelrys
Query
Services
Shareable
Ad-hoc &
persistent
Public Data
• Literature
• Patents
• Competitive Intel
Experimental
Data Repositories
• Unified Registration
• LIMS
• ELN - Experiments
Legacy Data
• Inventory
• Summary Data Warehouse
• Team Data Marts
Simulations Data
• Molecular & Biologics Design
• ADMET
• Formulations Designs
Unstructured
Data
• Documents
• Reports
Office & SharePoint
Web
Insight
Registration
Breaking down the scientific data silos, increasing access across the value chain
Corporate
External
5. • Three (sometimes four) kinds of people involved
– Admin
• Manages applications
• Defines data sources
• Knows all about SQL, etc.
– Protocol author
• Provides scientific analysis
• Does not do programming per se
• Calculations, graphing, etc.
– End user
• Generates Information within applications (e.g. Insight)
• Uses provided templates and GUIs
– Sometimes: Application developer
• Implements access to protocols in custom applications
Personas
6. Use an existing
data source
(ACD,
Notebook, etc.)
Access your
data:
integration and
aggregation
Data
transformation:
pivot, calculate,
web services
Dynamic access
to data: self
aware data
sources
Data Sources: from OOTB to custom dynamic DS
Out-of-
the-box
Graphical
tool
Advanced
configuration
Programming
8. • AQS is part of the AEP Core
– Nothing else required to run
• Everything installed with 9.0
– Query Service
– Data Source Builder
• Data Source Builder included
– .NET Client
– Used by Query Service Administrators
– Needs to be installed from the AEP home page
Installation Facts
10. • QueryService/Administer Permission
– Required to
• Start Data Source Builder
• Execute any administrative task from the interface
– Given by Default to QueryService/Administrators group
– Defined by default as Platform/Administrators
• QueryService/Logon Permission
– Required to
• Execute any Query Service call
– Given by Default to QueryService/Users group
– Defined by default as Platform/Everyone
Administration: Permissions
11. • In the AEP Administration Portal
– Configure relational data source (RDS)
– Assign access rights
• In Data Source Builder
– Configure Integrating Data Source (IDS)
– Configure Aggregating Data Source (ADS)
– Test, debug & optimize them
Data Source Configuration
13. 13
Integrating Data Source
Link relationships graphically
Attach calculators & web services
Dynamic data sources based on
metadata & user selection
Publish to scientists
Pivot data on the fly
Pick the tables you want
14. Integrating Data Source – result
Scientists are just exposed
to information they need &
when they need it
Browse by
molecule
Browse by
Document
…or Target
…or
Formulation
15. • An Integrating Data Source (IDS) is created using Data Source
Builder
• Same interface as for Isentris
• Start by dragging a RDS
• Drag table or views
– Same or different schema
• Define linking fields
• Fine tune properties
• Test it
Data Source configuration IDS
18. • Aggregating Data Sources (ADS)
• Searching in parallel a set of IDS
• Must have similar content
Aggregation
19. • An Aggregating Data Source (ADS) is created using Data
Source Builder
• Same interface as for Isentris
• Start by dragging similar IDS
• Select common parts
• Rename parents & fields as necessary
Data Source configuration ADS
21. Any Application accessing Restful web service API
• Released by Accelrys
– Data Source Builder
– Query Service Component collection
• Customer/Services extensions
– Web Browser (+ add-on for POST)
– C#/Java/JavaScript REST Client apps
Query Service Clients
22. • URL = AEP platform base URL
– + /auth/queryservice/
– + resource + modifier + parameters
• Authentication done by the platform
• Re-directed to AQS Tomcat
• Documentation:
– Query Service Developer Guide
– Chapter 4: Query Service REST Resources
Basics
28. • Main Components
– Generate Query Results
– Generate Query Results for Each Data
• Composite components that
– Define the query
– Execute the query
– Return the results
• If you create protocols that process all data to completion
– These are the only components you need
Component Collection
29. • Generate Query Results
– Define a single query with the Query Builder UI
• Either provide all query values in the UI or through component
parameter values
– Executes the query and returns all the results from the query
• Generate Query Results for Each Data
– Same as above but runs the same query once for each input
data record
Composite Components
30. DemoExample ‘03 Query RWB with Multiple Corporate ID Values’
• Simple example using Generate Query Results
31. • Utility Components
– Data Source utilities
• Information about data sources
– Query Components
• Define and execute queries
• Asynchronous support for running query and retrieving subset of results
– HitList Components
• * Prototypes *
• Manage hit lists as cache files
• These are more advanced components
– Used by Insight and other ‘interactive’ clients
Component Collection
32. DemoExample ‘02 Query RWB Using Biological Results’
• More sophisticated example using many AQS
components
33. • Streamlined RESTful API
– Consistent with Component Collection
• Initial Component Collection
– Will extend with next release of Insight
Summary
37. • A RESTful web service API
– Authorization through the AEP platform
– Runs in the platform Tomcat server
– All end points accessible as GET/POST/DELETE
– Functionality taken from Isentris Data Source Service
• A collection of PP Components
– Replaces the LMQS collection
– Calls the Query Service Restful API
What is AQS?
38. • Are supported as well
• Cannot create RDS file in Data Source Builder any more
• Must be copied from Isentris into AEP folder {AEP
install}webqueryservicedsfiles
• Only for public IDS (no access rights)
– Not associated to an AEP data source
Legacy Isentris RDS
40. • (Single) Structure based searching of ACD deployed as
PP and Web Port protocol
• Goal is to create a protocol to be used by my chemists that master PP
and a web port app for the chemists that don’t
• As a protocol author I want to configure a generic query: Compounds
containing a particular SS, mw between x and y, alogp between x and y
• I want to create a protocol that allows someone to draw a substructure
and specify mw and alogp boundaries as protocol parameters
• I want to avoid having to do any programming but my expectation is that
I can visually construct this query
• I want to deploy this as a simple web port app: query structure sketcher
+ MW + alogp parameter
User Story # 1
41. • (Multiple) Structure based searching of ACD deployed
as PP and Web Port protocol
• Goal is to create a protocol to be used by my chemists that master PP and a web port app for the chemists
that don‘t
• As a protocol author I want to configure a generic query: Compounds containing a particular SS, mw
between x and y, alogp between x and y
• I want to create a protocol that allows someone to pipe in different substructures and specify mw and
alogp boundaries as protocol parameters
• For each substructure passed in it should search ACD and return results
• I want to avoid having to do any programming but my expectation is that I can visually construct this query
• I want to deploy this as a simple web port app: source (SD) file + MW + alogp parameter
•
Variant 1: Additionally add constraint for one "child" field, for example limit for a given supplier
Variant 2: Replace SSS by a similarity search with fixed similarity values
User Story # 2
42. • (Multiple) Name based searching of ACD deployed as PP
and Web Port protocol
• Goal is to create a protocol to be used by my chemists that master PP and a web port app for the chemists
that don‘t
• As a protocol author I want to configure a generic query: Compounds with a name containing a particular
string, quantity in a given range and price below a given value
• I want to create a protocol that allows someone to pipe in different names and specify quantity between x
and y and price limit boundaries as protocol parameters
• For each name passed in it should search ACD (molnames contains the submitted string or synonyms
contains the submitted string) and return results
• I want to avoid having to do any programming but my expectation is that I can visually construct this query
• I want to deploy this as a simple web port app: source for names + quantity and price parameters
User Story # 3
43. • Reaction searching over Notebook deployed as PP and Web Port
protocol
• Goal is to create a protocol to be used by my chemists that master PP and a web port app
for the chemists that don’t
• As a protocol author I want to configure a generic query: Reactions implementing a
particular transform, with yield more than a given threshold. I want to the display to
include the reference to the Notebook experiment done.
• I want to create a protocol that allows someone to draw a reaction transform and specify
minimum yield value as protocol parameters
• I want to avoid having to do any programming but my expectation is that I can visually
construct this query
• I want to deploy this as a simple web port app: query structure sketcher + minimum yield
parameter
User Story #4
44. • Activity searching over RWB deployed as PP and Web Port
protocol
• Goal is to create a protocol to be used by my scientists that master PP and a web port
app for the chemists that don’t
• As a protocol author I want to configure a generic query: Compounds with a particular
SS, activity larger than a given value for the CDK2 assay and smaller than a given value for
the PKCa assay.
• I want to create a protocol that allows someone to draw a substructure and specify
minimum result value for CDK2 and maximum value for PKCa as protocol parameters
• I want to avoid having to do any programming but my expectation is that I can visually
construct this query
• I want to deploy this as a simple web port app: query structure sketcher + minimum
CDK2 and maximum PKCA parameters
User Story #5