I've successfully imported an 85MB vBulletin forum using the migrate module, but the result is a Drupal innoDB database that's over 550MB!

I've switched off database logging, syslog and statistics, and the site isn't in production yet, so none of the cache, accesslog or search tables are that big in phpMyAdmin.

However, many relatively small bits of data in vBulletin are very large in Drupal. For example, I have a user table with a dozen fields (name, date of birth, occupation, location, interests etc) that totals 7MB in vBulletin.

I've used simple text fields (max 255 characters) to add occupation, location, interests etc in Drupal's Account Settings, which creates db tables like field_data_field_occupation, field_data_field_location, field_data_field_interests. Each table then stores a row of information for every user, like:

entity_type: user, bundle: user, deleted: 0, entity_id: 7, revision_id: 7, language: und, delta: 0, field_interest_value: Tennis, field_interest_format: NULL

Multiply that by 50,000 users and it's easy to see where all the bloat is coming from, when the original db just had 'Tennis' stored in an interest field of the user table in vBulletin. In fact, the Drupal tables are each 10MB+

Drupal then doubles the amount of data stored by creating revision tables for the above - field_revision_field_occupation, field_revision_field_location, field_revision_field_interests etc - even when revisions are switched off in Drupal.

So, basically, I'm wondering is there anything that I'm doing that's fundamentally wrong in how I'm creating these fields. The same applies to adding fields in content types and taxonomy. All creating large tables for fields that originally only had very small data.

Any help or tips would be really appreciated.

Stu