Hey,
the database scheme can be (easily) optimised.
The field mailing_lists.mailing_list_url is a VARCHAR(255) and is used many times as a unique identifier for other tables (e.g. compressed_files, messages, messages_people, etc.).
In every relation table the complete string is inserted.
This is not good for two reasons:
a) Storage: We need a lot more storage to store a (long) string such mailing_list_url
b) Joins: Joins are not so performant as integer
How to improve this?
We add a new field called mailing_list_id into table mailing_lists and define this as primary key. In every relation table we only insert the integer mailing_list_id.
With this we can avoid the two disadvantages above.
What do you think about this suggestion?
Hey,
the database scheme can be (easily) optimised.
The field
mailing_lists.mailing_list_urlis a VARCHAR(255) and is used many times as a unique identifier for other tables (e.g.compressed_files,messages,messages_people, etc.).In every relation table the complete string is inserted.
This is not good for two reasons:
a) Storage: We need a lot more storage to store a (long) string such
mailing_list_urlb) Joins: Joins are not so performant as integer
How to improve this?
We add a new field called
mailing_list_idinto tablemailing_listsand define this as primary key. In every relation table we only insert the integermailing_list_id.With this we can avoid the two disadvantages above.
What do you think about this suggestion?