Multilingual MySQL Database Structure for huge data -


I am looking for some advice about a multilingual MySQL database structure that can handle large amounts of data. We are currently using the following method:

  article & lt; - Article_translations - & gt; Language ID id id language_id (fk) locale category article_id (fk) content   

OK, we can say just like 100,000 articles and 5 languages ​​... well .. You can see the problem. The higher the data, the database will be slow (just an estimate, but complex addition queries that are absolutely essential will probably not be O (log), but nothing like O (n ^ 2) will be. < P> Our current solution is to split the [locale] _article_translations (such as en_us_article_translation) to move articles, in this situation we will need to easily synchronize the structure between those tables. Or is there a suitable way to solve or is it better? If this is a good solution, then what is it that is monitoring the change (structured only, no data sync!) And help in synchronizing those structures

  • see if you denormalized your table

    I would suggest belows though

    • split at db level
    • db server Fast hard disk in

      I will first suggest using the partition and then you may want to consider upgrading hard disks. Depending on your query usage, you can split the data, for example,

      Partitioning

      is the data division provided by the database level of the partition, for example, According to the language in your case. The best part of using DB segmentation is that

      • It can be used from one side of the application side
      • Depending on the frequency and frequency of the data, It can be rearranged, there is no effect on DB level AIDS.

        Quality of the hard disk

        In addition, the quality of the hard disk is important for handling large sets of data. Even if the query is the best standing, if you deal with a lot of data in the same query, then you need faster data access but it is expensive.

  • Comments