Custom post type efficiency

As the reading of the database is lightning fast, I would not worry too much about it.

You have got a few points to consider:

  1. If you want to have all your metavalues queryable by the
    standard wordpress queries, you have to save them into different
    records.
  2. If you have a big, standardized set of custom values, maybe
    you should consider creating your own table, linking to the postId,
    storing all your metavalues. Keep in mind that you will have to write
    your own queries in this case.
  3. If you do it the standard wordpress way, you have a predefined
    set of functions helping you to deal with the metadata – you should
    find get_post_custom() a very useful one to output your values.

I do not know exactly what you want to do with your data – so if you could specify your problem, we could help you a little better.