Which of these MySQL database designs (included) is best for greater readability and high performance?

I am a database administrator and developer in MySQL. I have been working with MySQL for a couple of years. I recently studied and studied O'Reilly High Performance MySQL 2nd Edition to improve my skills regarding advanced MySQL features, high performance, and scalability, because I was often bored with the lack of prior knowledge of MySQL that I had (and in bulk, I still have).

I am currently working on an ambitious web project. In this project, we will have enough content and users from the very beginning. I am a database developer, and this database should be very fast (some inserts, but mostly more important READINGS).

I want to discuss these requirements here :

  • There will be several kinds of elements
  • Elements have some fields and relationships in common.
  • Elements also have some fields and special relationships that make them different to each other.
  • These items must be listed collectively ordered or filtered by common fields or relationships.
  • The elements must also be listed only on the type (for example item_specialA)

I have some fundamental design doubts, and I would like you to help me decide and find out which aproach design would be better for a high-performance MySQL database.

Classic approach

aproach, , , :

, , - - , . :


  • aproach , , ?

!

+5
3

. , "", - " " , "" - " " ( : O/R). (. ). ( 2 3 ).

+1

, /. SO.

0

, MyISAM, "" :

object_type | object_id | property_name | property_value
user        | 1         | photos        | true
city        | 2         | photos        | true
user        | 5         | single        | true
city        | 2         | metro         | true
city        | 3         | population    | 135000

..... , (object_type, object_id, property_name) . , 457 .

, , , , , mysql, , redis , , MongoDB.

0

All Articles