>> You're almost always better off using a single table with a composite
>> primary key like (truckid, datapointid) or whatever. If you'll be doing
>> lots of queries that focus on individual vehicles and expect performance
>> issues then you could partition the table by truckid, so you actually do
>> land up with one table per truck, but transparently accessible via table
>> inheritance so you can still query them all together.
Quite interesting! >> primary key like (truckid, datapointid) or whatever. If you'll be doing
>> lots of queries that focus on individual vehicles and expect performance
>> issues then you could partition the table by truckid, so you actually do
>> land up with one table per truck, but transparently accessible via table
>> inheritance so you can still query them all together.
The main reason why we thought using a table per truck was because concurrent load: if there are 100 trucks trying to write in the same table, maybe the performance is worse than having 100 tables, due to the fact that the table is blocked for other queries while the writing process is running, isn't it?
>> My main reasons are that in a proper transactional environment (ie
>> you're not using scary MyISAM tables) Pg is *much* better about handling
>> concurrent load, particularly concurrent activity by readers and writers.
Quite interesting again.
Thank you for your answers
Juan Karlos