|
|
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Заканчиваю проект, задался сегодня ночью вопросом решил спросить у знающих совета. Помогите, кто знает. У меня 28 языков на проекте и скажем так 30 направлений. По каждому языку на каждое направление я сделал свой файл содержащий массив перевода. Так как проект огромен, файлы эти не маленькие. На одно направление на один язык самый большой 500кб. Вот лежу и думаю сегодня ночью, а не му..к ли я... Файлы а не базу стал делать именно из-за огромного количества и для снижения нагрузки. но так как вышли просто огромные на мой взгляд файлы требующие подключения хоть и по одному но на каждую страниц, то вот задумался что быстрее и менее затратно для серверов из этих двух вариантов: 1. Так как описал выше 2. Или в таблицу каждого направления к каждому юниту добавить по 28 столбцов. База получится огромная, но если при запросе брать только данные юнита + 1 столбец из 28 может это лучше чем инклудить 500кб при каждом запросе. Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 14:54 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
Типа Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:18 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
AkinaТипа Код: sql 1. 2. 3. 4. 5. 6. 7. Спасибо за ответ, но как создать я знаю ))) вопрос что быстрее и менее затратно для сервера. То что Вы предлагаете даже хуже моего второго варианта. Ибо запросов будет при этом варианте тьмы. порядка 45000 позиций умножить на 28. и это минимум ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 15:28 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
DonDiegoзапросов будет при этом варианте тьмы. порядка 45000 позиций умножить на 28. и это минимумНу, во-первых, я верю в кэш запросов. Во-вторых, кто тебя заставляет волочь из базы ВСЕ записи? Как я понимаю, в каждый момент времени используется только одна пара (проект, направление) - вот для этой пары и получай свои строки. В третьих, приложение-то какое? десктоп/консоль, или веб-морда? в первом случае никто не мешает на старте получить, сложить в массив или коллекцию, и использовать локально. Опять же подкачивать можно и порциями - только то, что нужно, и на текущий момент отсутствует в локальных данных. В четвёртых, в одном запросе можно получать сразу несколько записей - причём как в варианте списка в условии отбора, так и в варианте мультизапроса. Ну и вообще, мог бы чего рассказать о своей системе. А то, знаешь, давать советы по форме сбруи для сфероконя несколько затруднительно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 16:49 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
[quot DonDiego] Вот лежу и думаю сегодня ночью, а не му..к ли я... ну типа того. но ты не безнадежен, раз задумываешься. Файлы а не базу стал делать именно из-за огромного количества и для снижения нагрузки. уверен, это немного. 2. Или в таблицу каждого направления к каждому юниту добавить по 28 столбцов. 28 СТРОК, а не столбцов. База получится огромная, но если при запросе брать только данные юнита + 1 столбец из 28 может это лучше чем инклудить 500кб при каждом запросе. посчитай, напиши. уверен, будет мало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 19:58 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
DonDiegoAkinaТипа Код: sql 1. 2. 3. 4. 5. 6. 7. Спасибо за ответ, но как создать я знаю ))) вопрос что быстрее и менее затратно для сервера. То что Вы предлагаете даже хуже моего второго варианта. Ибо запросов будет при этом варианте тьмы. порядка 45000 позиций умножить на 28. и это минимум запроса хватит и одного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 19:59 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
[quot MasterZiv]DonDiego Вот лежу и думаю сегодня ночью, а не му..к ли я... ну типа того. но ты не безнадежен, раз задумываешься. - спасибо стараюсь Файлы а не базу стал делать именно из-за огромного количества и для снижения нагрузки. уверен, это немного. 2. Или в таблицу каждого направления к каждому юниту добавить по 28 столбцов. 28 СТРОК, а не столбцов. как это строк... строк в одной таблице к примеру самой большой 37 тысяч. а я говорю именно про столбцы по 28 дополнительных ячеек на каждую строку База получится огромная, но если при запросе брать только данные юнита + 1 столбец из 28 может это лучше чем инклудить 500кб при каждом запросе. посчитай, напиши. уверен, будет мало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 20:14 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
как это строк... строк в одной таблице к примеру самой большой 37 тысяч строк. а я говорю именно про столбцы по 28 дополнительных ячеек на каждую строку к примеру id, name, en, es, ru ..... 1, unit-1, roro, popo, куку 2, unit-2, dopa, puta, лоло ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2016, 20:19 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
DonDiegoкак это строк... строк в одной таблице к примеру самой большой 37 тысяч строк. а я говорю именно про столбцы по 28 дополнительных ячеек на каждую строку Строк, строк. DonDiegoк примеру id, name, en, es, ru ..... 1, unit-1, roro, popo, куку 2, unit-2, dopa, puta, лоло Ты примеры в виде create table двай, а не непонятные иероглифы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2016, 00:35 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
авторid, name, en, es, ru ..... 1, unit-1, roro, popo, куку 2, unit-2, dopa, puta, лоло тут , вроде, и так всё ясно если name - это имя товара на основном языке(к примеру русском) то остальные столбцы - переводы на остальные языки. в этой постановке ничего страшного нет, всё просто если код языка сделать в видке 1,2,4,8,16 ... то MAKE_SET(bits, en, es, ua ,...) можно получать название очень просто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2016, 16:37 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
вадяавторid, name, en, es, ru ..... 1, unit-1, roro, popo, куку 2, unit-2, dopa, puta, лоло тут , вроде, и так всё ясно если name - это имя товара на основном языке(к примеру русском) то остальные столбцы - переводы на остальные языки. в этой постановке ничего страшного нет, всё просто если код языка сделать в видке 1,2,4,8,16 ... то MAKE_SET(bits, en, es, ua ,...) можно получать название очень просто. тогда (id, language) ->name ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2016, 22:45 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
MasterZiv, MAKE_SET команда mysql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2016, 22:55 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
вадяавторid, name, en, es, ru ..... 1, unit-1, roro, popo, куку 2, unit-2, dopa, puta, лоло тут , вроде, и так всё ясно если name - это имя товара на основном языке(к примеру русском) то остальные столбцы - переводы на остальные языки. в этой постановке ничего страшного нет, всё просто если код языка сделать в видке 1,2,4,8,16 ... то MAKE_SET(bits, en, es, ua ,...) можно получать название очень просто. Вадя спасибо за ответ, а можно поподробнее про последние две строчки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2016, 13:11 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
вадяMasterZiv, MAKE_SET команда mysql Вадя прочитал разобрался. Спасибо за ответ. Но я наверное чуть не верно вопрос поставил. вообщем смысл в том что перевод сайта построен через файлы, подключением как массив того файла какой язык используется. а в БД есть три таблицы это команды всех чемпионатов земли, чемпионаты все и страны, которые хранят id, коды, id logo, страну и прочее. так как команд более 37 тысяч по всем видам спорта то файл получается очень огромным, поэтому я и задался вопросом не проще ли чем каждый раз инклудить здоровенный файл, добавить к каждой строчке 28 столбцов перевода, и при запросе брать только нужный столбец. просто когда идет выборка например событий на неделю то к событиям будет джойнится таблица команд для получения того перевода, а событий например 5000. вот в этом и вопрос что менее накладно подключать массив с языком перевода или джойнить из таблицы команд ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2016, 14:31 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
DonDiego, выводить 5000записей это глупость, никто их читать не станет. присоединить перевод или «расшифровать» id на нужный язык нужно в самом конце, тогда и не будет этой проблемы, как это сделать я сказал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2016, 04:14 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
вадяDonDiego, выводить 5000записей это глупость, никто их читать не станет. присоединить перевод или «расшифровать» id на нужный язык нужно в самом конце, тогда и не будет этой проблемы, как это сделать я сказал ну почему глупость если это селект с выборкой?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2016, 12:47 |
|
||
|
Файлы или База при огромной мультиязычности
|
|||
|---|---|---|---|
|
#18+
DonDiegoвадяDonDiego, выводить 5000записей это глупость, никто их читать не станет. присоединить перевод или «расшифровать» id на нужный язык нужно в самом конце, тогда и не будет этой проблемы, как это сделать я сказал ну почему глупость если это селект с выборкой?? глупость отображать такое количество конечному юзеру никто не просматривает такое количество. длина 2-3 экрана , если больше -то подгружением по 1 экрану. а это уже селект по 50-60 строк. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2016, 12:55 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39259273&tid=1831649]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 473ms |

| 0 / 0 |
