snippetMinor
How to organize database for translations, performance?
Viewed 0 times
organizedatabaseforperformancehowtranslations
Problem
I am working on a new project for an international website. The task is to get this available in 16 languages.
On the database structure, I was wondering if there is any performance advantage or disadvantage between these two approaches. What would be the preferred choice and why?
Approach #1
Approach #2
On the database structure, I was wondering if there is any performance advantage or disadvantage between these two approaches. What would be the preferred choice and why?
Approach #1
Approach #2
Solution
Generally, it's better practice to encapsulate the data as you did in your second approach.
This is because...
When a fully normalized database structure is extended to allow it to accommodate new types of data, the pre-existing aspects of the database structure can remain largely or entirely unchanged. As a result, applications interacting with the database are minimally affected.
By following this tenant of normalizing, it's far easier to add, update, or remove rows to a table than it is to alter the table by adding/removing columns. Languages may change over time, but the table ideally should stay the same and not need to be in flux to accommodate changes in the data.
This is because...
When a fully normalized database structure is extended to allow it to accommodate new types of data, the pre-existing aspects of the database structure can remain largely or entirely unchanged. As a result, applications interacting with the database are minimally affected.
By following this tenant of normalizing, it's far easier to add, update, or remove rows to a table than it is to alter the table by adding/removing columns. Languages may change over time, but the table ideally should stay the same and not need to be in flux to accommodate changes in the data.
Context
StackExchange Database Administrators Q#87327, answer score: 6
Revisions (0)
No revisions yet.