The Drupal Fields (former CCK module) are great and a convenient way to present data on your Drupal site, but performance can sometimes be a problem. This is partly because the underlying data of your content type is spread over several tables and there can be lots of joins in the underlying SQL queries.

Storing all the data in one table will give you more flexibility and control. For example to increase performance on a busy site, you could choose to store this table in MangoDB or a similar NoSql database. Another time you may want to import data into a table from another source or create a custom data entry form. For example you may have built a custom client side app, (using Visual Basic or similar). Or you may want to import data daily from external sources. Having data in one table makes all this easier.

To see an example of how to create a Drupal View based on an Entity that is in turn based on a custom table see the example that I posted on my site. There is also a downloadable example module with all the example code.

Read more on my Drupal site ...


yusufhm’s picture

I really need such a functionality right now, and I would like to see your example code if possible; the link you provided does not work anymore. Do you have a new link?

Jaypan’s picture

The post is outdated. You can use the Entity Cache module to handle this.

I will soon be leaving the Drupal forums permanently. To understand why, please see this thread.