Detail documentation of Elasticsearch and lucene

I need to understand Elasticsearch and lucene in depth. I want to explore more on:

  • How data nodes, coordinating nodes and master node interact.
  • How query split into multiple data nodes and reach to shards.
  • How lucene work on shard level etc.

Is there any documentation/blogs which describe in depth about Elasticsearch and lucene?

Thanks in advance.