After testing the discovery service, it seems useless to me at least or I might be missing something.
When I query, it matches the document and returns the whole document. If my document is huge, then for all queries it returns the whole document matching the query text, which is useless.
Now Do I have to create a separate document for every query?
If that's the case, API.AI or WIT.AI is a better option.
Please clear me on what I am missing in here!
For now with Discovery, you would need to break up your documents once to put them in a collection, then any query against the collection in Discovery will return results from that set of separated docs. So if your documents don't change, this split should be a one time action.
Though the solution of automatically identifying the relevant section of a larger doc for a query is a good consideration for Discovery (note: I work for IBM Watson).