title: What does the "Type" mean in Elasticsearch?
body: <p>I am totally confused by Elasticsearch's documents.</p>
  
  <p>In <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/_basic_concepts.html#_type" rel="noreferrer">Basic Concepts: Type</a>, "type" are somehow like collections in MongoDB:</p>
  
  <blockquote>
    <p>In this index, you may define a type for user data, another type for blog data, and yet another type for comments data.</p>
  </blockquote>
  
  <p>But in <a href="https://www.elastic.co/guide/en/elasticsearch/guide/current/mapping.html#_type_takeaways" rel="noreferrer">Types and Mappings: Type Takeaways</a>, it says:</p>
  
  <blockquote>
    <p>Types are not as well suited for entirely different types of data. If your two types have mutually exclusive sets of fields, that means half your index is going to contain "empty" values (the fields will be sparse), which will eventually cause performance problems. </p>
  </blockquote>
  
  <p>Doesn't "user" and "blog" above mentioned have mutually exclusive sets of fields?
  For example: there are "name", "age" fields for "user", and "createdAt", "content" for "blog".</p>
  
  <p>I'm used to believe the mapping relation between Elasticsearch and MongoDB is:</p>
  
  <p>index &lt;=> database</p>
  
  <p>type &lt;=> collection</p>
  
  <p>isn't it right?
  If not, what is the recommended mapping style between them?</p>