I am planning to build a very comprehensive events catalog and registration plugin to form the core of a project I'm developing. This plugin will allow blog owners to list programs and accept online registrations. It will work in WP and WPMU. The plugin will be simple at first, but it will evolve many features down the road.
My question is this: Should I create my own new tables such as wp_#_programs and wp_1_programs_meta, or should I be using custom post types.
If I use custom post types and put all data in the wp_#_posts and wp_#_postsmeta tables then I'm doing everything the 'Wordpress Way' and I will get some benefits by using all the built in wordpress functions (such as children, revisions, attachements, etc). However the downside is that most of my data will actually be in the meta table. will there be performance issues? what about accessing the data remotely?
however if I make my own tables then I have full flexibility in db structure, but I will have to code all the functions myself.
I would really be interested in hearing feedback about these two choices. And if it is best to go with new tables, what is the best guess as to the tables to create.
thanks in advance :)