Running Natural Language Queries on MongoDB
-
Upload
mongodb -
Category
Technology
-
view
241 -
download
0
Transcript of Running Natural Language Queries on MongoDB
Deepak Krishnan | Consultant - Data Scientist❏ Expert on various Big Data and Machine Learning initiatives ❏ Experienced in schema design for Big Data storage systems
Praveen Rajasekhar | Director - Business Development❏ <bio to be updated>❏ <bio to be updated>
Speakers
Solution
Solution
❏ Identify key operands & operators within natural language query
❏ Convert them into a series of connected expressions
❏ Dynamically build a query which runs against MongoDB instance
❏ Aggregate search results
[Revised]
❏ Acts an FSA to access inverted index
❏ Emits annotations whenever a buffer matches an operator
❏ Ability to identify common data types such as date, time etc.
❏ Emits the matched expressions as a sequential stream of
annotations
[Revised]
Tokenizer
Expression Parser
❏ Generated using parser generator
❏ Supports conjunction, disjunction, negation operators
❏ Responsible for taking in a stream of annotations and reducing it
❏ Creates the equivalent MongoDB query during reduction process
[Revised]
Expression Parser
Example: Show me Java or PHP openings
This will be reduced by
EXPR OR_OPERATOR EXPR
which has an RHS that will convert this to an OR query in MongoDB
External Knowledge Bases
❏ Integrated into the expression parser for data intelligence
❏ The application uses NLP date parsers, ConceptNet (knowledge
bases)
❏ Improved data intelligence
[Revised]
Search API❏ Acts as natural language quering modules
❏ Acts as a RESTful API endpoint to which clients can connect to via
HTTP
Tokenizer❏ Passes the stream of tokens to an expression parser
Summary
[Revised]
Expression Parser❏ Uses series of tokens to make transitions in a finite state machine❏ Ingestion of the tokens into the expression parser is based on a
sliding window model where the window size is dynamic
Summary
[Revised]
MongoDB Expertise at QBurst
❏ Consulting – Strategy & Planning
❏ Solutions Architecting
❏ Design & Implementation
❏ Big Data Analytics & Integration
❏ Social Media Analytics & Solutions
❏ IoT Storage, Processing, and Prediction Solutions