Имя: Пароль:
IT
Админ
SQL Как оптимальнее сделать разделение данных между не связанными фирмами?
0 Супер король
 
01.05.15
19:55
1. новые базы 60% (6)
2. новая колонка в таблицах 30% (3)
3. свой вариант 10% (1)
4. префикс в колонках id 0% (0)
5. новые таблицы 0% (0)
Всего мнений: 10

Есть база данных с кучей таблиц.
Нужно ввести дополнительный разрез, чтобы отделять данные одной фирмы от другой. Данные разных фирм между собой никак не связаны.

Я вижу несколько путей:

1. Использовать префикс фирм в существующих колонках идентификаторов id всех таблиц.
2. Добавить во все таблицы новую колонку "идентификатор фирмы" firm_id, по значению которой будет разделение.
3. Для каждой фирмы использовать отдельные таблицы, в именах которых будет присутствовать идентификатор фирмы.
4. Для каждой фирмы использовать отдельную базу данных.

У каждого решения есть свои плюсы и минусы. Посоветуйте какое выбрать? Может есть вариант получше?
1 ChMikle
 
01.05.15
19:56
делай
2 ДенисЧ
 
01.05.15
19:59
3 Garykom
 
гуру
01.05.15
20:00
разрешаю(ем)
4 Garykom
 
гуру
01.05.15
20:00
Да кто нить скажите хотя бы город ТС ))
5 ДенисЧ
 
01.05.15
20:00
(3) Отучаемся говорить за всю сеть (с)
6 Garykom
 
гуру
01.05.15
20:02
(5) попробую
7 jsmith82
 
01.05.15
20:02
2

новая колонка в таблицах
8 Супер король
 
01.05.15
20:03
Есть кто шарит в вопросе?
9 Garykom
 
гуру
01.05.15
20:03
(7) оно не помрет от составных индексов то а?
10 ДенисЧ
 
01.05.15
20:03
(8) Я шарю. Но у тебя столько денег нет.
11 Garykom
 
гуру
01.05.15
20:04
Уволиться...И больше никогда не браться за такие задачи...Как тока предлагают сразу делать ноги

свой вариант
12 Супер король
 
01.05.15
20:04
(7) Сейчас так и делано, но минус в том что добавились индексы, за счет этого скорость немного упала. Думаю может получше есть вариант.
13 wertyu
 
01.05.15
20:04
(10) за бесценок работаешь?
14 Супер король
 
01.05.15
20:05
(10) Есть. Я вчера машину продал.
15 ДенисЧ
 
01.05.15
20:05
(13) У тебя тоже столько нет
16 ДенисЧ
 
01.05.15
20:06
(14) Кому интересен твой 30летний запорожец? )
17 wertyu
 
01.05.15
20:06
(14) ради этой задачи?
18 Garykom
 
гуру
01.05.15
20:06
(14) что уже счетчик тикает?
19 Супер король
 
01.05.15
20:06
(16) Нашелся один любитель.
20 ДенисЧ
 
01.05.15
20:07
(19) И что, вышло больше 1й бутылки балтики? )
21 wertyu
 
01.05.15
20:07
(15) я вообще жадный
22 jsmith82
 
01.05.15
20:07
(9)(12) и насколько упала?
23 ДенисЧ
 
01.05.15
20:07
(21) ну вот я и говорю...
24 Супер король
 
01.05.15
20:08
(17) Нет. Просто продал. Я японскими тачками барыжу в свободное от работы время.
25 Супер король
 
01.05.15
20:08
(20) Да.
26 vs1c
 
01.05.15
20:08
(20) Надо не пиво, а книжку про нормальные формы брать - толку  будет больше, вопросов меньше.
27 ДенисЧ
 
01.05.15
20:08
(25) То есть 2... Смотри, не упейся...
28 wertyu
 
01.05.15
20:09
(23) нет, я более жадный
29 Garykom
 
гуру
01.05.15
20:10
(27) безалкогольным то?
30 Супер король
 
01.05.15
20:10
(22) На 5 процентов при чтении если индекс в оперативку влезает. Если не влезает то сильнее. Память стала больше жрать при запросах. При записи еще больше, но чтение важнее.
31 Супер король
 
01.05.15
20:11
(27) Нет, не 2. Я не пью балтику.
32 jsmith82
 
01.05.15
20:12
(30) да не такой уж тяжёлый compound index получается
а вообще инфы мало, конеш
33 milan
 
01.05.15
20:14
У 1с колонки, но там это сделано для условного разделения и использования общей нси, в своей базе, наверное лучше отдельную базу для каждого
34 jsmith82
 
01.05.15
20:14
надеюсь, на на 512 метрах ОЗУ у тебя это чудо вертится
35 jsmith82
 
01.05.15
20:15
а чо скуль, какая версия
36 Супер король
 
01.05.15
20:15
(32) Какая инфа нужна?

в чем минус префиксов?
или отдельных таблиц?
37 Garykom
 
гуру
01.05.15
20:16
(36) вообще в чем смысл одной базы? один сервак и одни и теже пользователи?
38 jsmith82
 
01.05.15
20:16
(36) префиксы и таблицы это уже не перфекционизм, а костыль
39 Супер король
 
01.05.15
20:17
(33) Какие минусы могут быть у отдельной базы для каждого?
Например есть минус что при добавлении новых колонок придется во все базы много раз добавлять.
40 Garykom
 
гуру
01.05.15
20:17
(38) ну вот...зачем сделал "убрать 2 неправильных ответа"
41 Супер король
 
01.05.15
20:18
(34) памяти не мало, можно еще добавить если что.
(35) MySQL 5.5.42 версии
42 Супер король
 
01.05.15
20:19
(37) сервак один, пользователи везде разные. Я же писал. Данные никак не пересекаются.
43 jsmith82
 
01.05.15
20:20
аа, я чёт подумал mssql
44 Garykom
 
гуру
01.05.15
20:20
(42) тогда только новые базы и извращаться

заодно и обновлять проще...
45 jsmith82
 
01.05.15
20:20
а клиентская часть пхп?
46 Kvant1C
 
01.05.15
20:20
(30) это как то странно, индексы как раз придуманы для увеличения скорости
47 Garykom
 
гуру
01.05.15
20:21
(41) если MySQL то твоя врать причем нагло насчет скорости составных... или у вас таблички не больше пары тыщ записей ))
48 Супер король
 
01.05.15
20:21
(38) префиксы по сути это тот же составной индекс. Ресурсов думаю столько же будет жрать. А таблицы - меньше будет жрать ресурсов, так как меньше строк в каждой таблице будет.
49 Супер король
 
01.05.15
20:22
(45) perl и php
50 Garykom
 
гуру
01.05.15
20:22
(470)+ попробуй хотя бы тыщ 100 записей и более длинные id (причем не int)
51 jsmith82
 
01.05.15
20:22
ну ежели так, то вполне реально базы замутить разные
52 Garykom
 
гуру
01.05.15
20:22
(50)>(47)
53 ice777
 
01.05.15
20:23
Это тут клюшками машут, или таки 8 не знают? )
54 Супер король
 
01.05.15
20:23
(46) просто количество данных увеличилось.
55 RomanYS
 
01.05.15
20:24
я за

новые базы
56 Супер король
 
01.05.15
20:24
(47) Нет, правда быстро работают.
Таблички примерно по гигабайту.
57 Супер король
 
01.05.15
20:25
(50) id только int
58 Супер король
 
01.05.15
20:26
(51) какие будут минусы если замутить разные базы? Будет примерно 700 баз, и количество может увеличиться.
59 jsmith82
 
01.05.15
20:27
(58) йопстудэй
60 Супер король
 
01.05.15
20:28
(59) лет 20 назад это слово последний раз слышал
61 Garykom
 
гуру
01.05.15
20:28
(56) ты не размера на диске, ты кол-во записей давай в табличках
62 Супер король
 
01.05.15
20:29
(61) 9 миллионов записей
63 Garykom
 
гуру
01.05.15
20:30
(62) не верю© что только -5%
64 jsmith82
 
01.05.15
20:30
ебануцо
65 jsmith82
 
01.05.15
20:31
(63) +1
66 Garykom
 
гуру
01.05.15
20:31
(63)+ а составной ключ то вообще юзается?
67 Kvant1C
 
01.05.15
20:32
(54) и чо?
индекс призван ускорять чтение, а не замедлять, если у тебя запросы стали выполняться медленней значит у тебя неправильно используются индексы
68 jsmith82
 
01.05.15
20:33
я давно не юзад майсиквел, но там, вроде, составные индексы куда как хуже, чем в mssql
69 jsmith82
 
01.05.15
20:34
или я отстал от жизни
70 Супер король
 
01.05.15
20:34
(67) индекс и раньше был. Но добавилось еще несколько индексов и еще больше стало записей.
71 Супер король
 
01.05.15
20:34
(63) (66) (68) ну щас потестирую.
72 Garykom
 
гуру
01.05.15
20:38
(68) аналогично...когда даже пришлось отказаться от мускула пользу постгреса
73 Супер король
 
01.05.15
20:40
6,066 total, Query took 0.0013 sec
74 milan
 
01.05.15
20:40
(39) руками добавляешь во все базы? Циклом пробежаться по базам и сделать альтер табле? Смысл есть когда бизнес-логика в хранимках, если табле только для хранения данных - ловчее в отдельной базе. С другой стороны колонки можно заюзать и сделать шардинг ;) короч надо долго смотреть и думать.
75 Супер король
 
01.05.15
20:40
составной использовался
76 Garykom
 
гуру
01.05.15
20:44
(73)(75) эээ а на запись то?
77 milan
 
01.05.15
20:44
Индекса, конечно придуманы для ускорения, но только чтения. Вставка естественно замедляется. Так же большое количество индексов не всегда положительно сказывается на планировщике
78 Супер король
 
01.05.15
20:47
(76) на запись медленнее, но это не так важно, я писал уже. Главное чтение.
79 Супер король
 
01.05.15
20:48
(74) ок. Подумаю над размножением баз.
80 Супер король
 
01.05.15
20:49
На скорость никак не повлияет если будет ~1000 баз на одном сервере?
81 Супер король
 
01.05.15
20:55
+(73) проверил запрос на таблице 16М+ записей с составным индексом, тоже выполняется за время с двумя нулями после запятой.

У меня вообще принцип: Если запрос на чтение выполняется дольше 0.01с, то нужно что-то переделать чтобы такого не было.
82 ДенисЧ
 
01.05.15
21:02
(81) хм...
select count(*) from t1
--тут 10 000 000 000 записей
select * from t1
выполнится явно дольше...
83 Garykom
 
гуру
01.05.15
21:04
(82) на сплошную выборку то пофиг, надо отбор делать по этому составному или пофиг что юзеры одной фирмы видят инфу всех?
84 Супер король
 
01.05.15
21:20
(82) спасибо, капитан очевидность
85 viraboy
 
01.05.15
22:39
Естественно новая база. Клиент захочет забрать данные - пожалуйста, как вы их потом с разделителями ему будете отдавать (можно, конечно, но лишняя работа)

новые базы
86 Супер король
 
02.05.15
18:40
(85) О, точно! Я что-то не подумал на счет того чтобы базу отдавать. Тогда отдельная база лучший вариант. И по скорости хороший.

Но вопрос, не замедлит ли сервер множество баз, остается открытым.

Замедление при большом количестве таблиц в одной базе я уже наблюдал: PHPMyAdmin просто зависал на выводе списка таблиц.
87 Torquader
 
03.05.15
14:15
Если не предполагается делать отчётов по нескольким фирмам сразу, то - отдельные базы.
Нагрузка на сервер меньше всего будет в случае, когда в колонках префикс, также, в этом случае, не меняется структура базы, но все видят все данные.
Остальные решения можно считать костыльными, так как предполагают использование фильтрации на выборку данных, что на производительности сказывается не очень хорошо.

Отдельная база также позволяет сделать BackUp отдельно.
Также нет проблем с параллельным выполнением транзакций, которое, в случае других решений, может и не работать.

Но, если есть много данных, которые одинаковы в каждой базе (адресный классификатор и т.п.), то использование отдельных баз увеличит пропорционально и занимаемое ими пространство.
88 Супер король
 
03.05.15
18:41
(87) >> Нагрузка на сервер меньше всего будет в случае, когда в колонках префикс

Меньше чем на отдельных базах? За счет чего разница происходит?
89 Garykom
 
гуру
03.05.15
19:11
(87) на эту тему не дублирования данных сделать еще разделение на разные базы

есть общие справочники скажем в отдельной базе и есть отдельные базы фирм
90 Супер король
 
03.05.15
21:09
Нет там никаких общих справочников. Писал в (0)
91 Torquader
 
04.05.15
12:29
(88) В случае префикса у нас структура индексов не меняется, а в случае отдельной колонки добавляется ещё один индекс.
Отдельные таблицы и отдельные базы сильно увеличивают место под хранение данных.

Отдельные базы - самый удачный случай - так как работа будет идти полностью независимо - распределяться будет только память и процессорное время.
92 Garykom
 
гуру
04.05.15
12:31
(91) предлагаю отдельные сервера и не ..ать мозги
93 Torquader
 
04.05.15
21:16
(92) Ещё скажи территориально разнесённые.
94 Лефмихалыч
 
04.05.15
21:32
(0) сам же говоришь, что данные ни как не связаны, так на кой кол их в одной БД-то держать?

новые базы
95 vde69
 
04.05.15
22:15
счас запутаю :)

для каждой фирмы использовать отдельного SQL юзера и рулить правами :)
96 Armando
 
04.05.15
22:30
Видел в навижине под каждую фирму отдельные таблицы создаются
97 Garykom
 
гуру
04.05.15
22:49
(95) муахаха

ЗЫ представил права на отдельную запись ...
98 ЧеловекДуши
 
05.05.15
06:34
(0) "Король Умер, да здравствует король" (с)

новые базы
99 Супер король
 
05.05.15
07:40
(94) как на кой? На каждую новую базу уходят дополнительные ресурсы сервера! Даже абсолютно пустая база требует некоторых ресурсов.
100 ЧеловекДуши
 
05.05.15
08:10
(99) Бред... SQL Только для пустой БД отъедает 6 Гб
Дольше идет накопление информации.

Справочники тоже не так много кушают.


...
Вам жалко 6 Гб?
Тогда страдайте головными болями :)
101 Супер король
 
05.05.15
09:18
(100)  Сервер то не мой, а в облаке. Там за каждый Гб денег хотят. Нужно максимально сэкономить при одинаковой производительности, для получения максимальной прибыли.
102 ЧеловекДуши
 
05.05.15
10:17
(101) Кто их туда поместить порекомендовал? Коль у них денег на такое нет :)

Тогда что ты нам тут мозг пудришь?
Берешь свою "Нетленку" и допиливаешь, её до ведения учета по нескольким фирмам.
Преждевременно выставляя счет на сей модинг.

И наблюдай, как у заказчика найдутся деньги, стулья и другие вещи для размещения второй БД в Облачке :)
103 vde69
 
05.05.15
10:25
меня вот другое смущает

>>>Данные разных фирм между собой никак не связаны.

вот не верю я в это, например курс валют, или контрагенты....
104 Супер король
 
05.05.15
10:34
(102) деньги то есть, но отдавать их не хочется если можно не отдавать.
105 Супер король
 
05.05.15
10:45
(103) Вот делать мне больше нечего, искать совпадающие элементы справочников у разных фирм, которые могут совпасть по названию или по url сайта или по адресу, или по номеру телефона, а могут и не совпасть если у одного элемента урл http://dsgds.ru, а у другого http://www.dsgds.ru/?hru=254686, или адрес по разному записан, или телефон у одного 223-322, а у другого 22-33-22, бывает еще с кодом города и без, или вообще с ошибками. Встречал урл вида: Http;/http://www.dsgds.ru

Совпадения между двумя фирмами отыскиваются в 10% элементов справочника, где 5% правильно совпали, а 5% ошибочно.

Да проще их не пересекать вообще и хранить для каждой фирмы свои справочники.
Курсы валют вообще не нужно хранить, т.к. их можно из интернета посмотреть.
106 vde69
 
05.05.15
10:46
(105) тогда это разные базы...
107 Супер король
 
05.05.15
10:46
(105) Блин, движок форума испоганил УРЛы. в последних двух я не писал http://
108 Супер король
 
05.05.15
10:50
(106) похоже у разных баз нет преимущества по скорости перед префиксами у id?
109 Garykom
 
гуру
05.05.15
15:54
(108) у разных баз есть одно немаловажное преимущество...

тебя потом не так сильно пинать будут, и может даже плюнут искать...
110 vde69
 
05.05.15
15:58
(108) у каждой базы своя статистика запросов, значит план запросов будет более оптимальный. И далее по списку DBA администрирование, безопасность, SLA....

а вообще почитай профильную литературу, ибо у тебя каша в голове сейчас...
111 Супер король
 
06.05.15
08:18
(110) У всех баз аналогичная структура и таблицы пропорционального размера, план запросов будет одинаковый.

Никаких плюсов по скорости нет по сравнению с префиксами?
112 ЧеловекДуши
 
06.05.15
08:27
(104) Деньги всегда придется отдать. Если только ты все это сделаешь сам и бесплатно :)
113 Супер король
 
06.05.15
08:29
(112) Вопрос не в деньгах, а в скорости. По теме есть мысли?
114 Smile 8D
 
06.05.15
09:03
(111) Тебе сказали про статистику запросов и предложили почитать профильную литературу. Ты пропустил это мимо ушей и продолжаешь снова и снова задавать тот же вопрос.
115 Z1
 
06.05.15
09:07
(113) О какой скорости идет вообще речь.
любой вариант  1-3 это как минимум переписывание всех отчетов по этим базам с отладкой с ошибками с заложеными граблями и.т.д. и отвечать за это придеться уже тебе.

опять же сейчас вполне себе дублирование клиентов никак не влияет если оно будет в разных базах
если это  же дублирование будет в рамках одной базы это уже проблема.

новые базы
116 Супер король
 
06.05.15
11:50
(114) Я спрашивал что мне почитать?
Если не могут ответить на мой вопрос, буду ждать того кто сможет.
Ответы на не мой вопрос буду пропускать или выборочно комментировать.
117 Супер король
 
06.05.15
11:52
(115) О скорости работы SQL сервера. Про переписывание отчетов вопрос не стоит.
Как дублирование может замедлить одну базу в отличии от разных баз?
118 Z1
 
06.05.15
12:09
(117)
Нет такого понятия скорость работы sql сервера.
Даже один и тот же sql запрос может формировать одни и те же данные разное время в зависимости от множества причин.


Да дублирование клиентов не замедлит базу но меняется вся логика работы людьми с этой базой (базами).
Ну если переписывание отчетов в этом нет проблемы то делай как хочешь, только как  раз доп колонки или префиксы требуют переосмысления индексов а вот это и может изменить кардинально  время выполнения отчетов.

Сам же пишешь что нет опыта   поэтому как бы на основании этого надо делать через новые базы, чтобы не менять логику того что уже работает.
119 gls
 
06.05.15
12:47
если у всех фирм НСИ примерно одинакова (например таблицы с контрагентами, продукцие...), либо база требует частого одновления-администрирования - лучше (2) новая колонка в таблицах + изменение индексов + доработка отчетности

если НСИ сильно различается (мало пересечений) и почти не требует администрирования - (4) новые базы, но тогла возможно потребуется интеграция НСИ + если потребуется делать сводные отчеты (по всем фирмам) - придется собирать данные по разным базам (возможно падение скорости выполнения запросов).
120 vde69
 
06.05.15
13:24
(116) спрашивал чего почитать?

http://www.williamspublishing.com/Books/DG_DBA_SQL_SRV_2000.html (только для своей версии)

что-то из подобного
http://www.iso27000.ru/chitalnyi-zai/setevaya-bezopasnost/bezopasnost-v-setyah-hraneniya-dannyh
http://compress.ru/article.aspx?id=18048
(касаемо раздельного доступа к данным и обеспечения SLA)

а вообще я за Вами замечал уже несколько раз, Вы не готовы слушать советы, Вы готовы пробивать свою точку зрения опираясь на конкретику Вашей ситуации да-же если Вам аргументировано возражают, что правильно будет по другому.

на сим раскланиваюсь и удаляюсь

"Ты мне не интересен" (с) Волшебник, Обыкновенное чудо...
121 Супер король
 
06.05.15
21:18
>> Вам аргументировано возражают, что правильно будет по другому

Я написал что мне нужно, а мне навязывают то что мне не нужно.
Мне же виднее какие у меня требования  к задаче.
Я спрашиваю как уменьшить нагрузку на сервер, а мне про какие-то переписывания логики отчетов рассказывают. С чего вы взяли что существуют эти отчеты? Их нет. Ни сводных, ни раздельных.
Так же про дублирование клиентов. Их нет.
Не нужно делать аналогию с 1С. Это совершенно другая база.
122 Torquader
 
06.05.15
21:27
Тогда самый главный вопрос - как происходит подключение к базам, и насколько серверная часть "помнит" каждого клиента.
Просто, если окажется, что система написана на Web-сервисах, то использование различных баз может быть просто невозможно, если система в кеше хранит только соединение к последней базе, так как будут просто сплошные пересоединения, что съест рабочее время.
Опять же, например SQL-сервер FireBird поддерживает до 16 баз в одной транзакции, а больше 16 - извините, уже придётся выбирать отдельно.

Так что - ответ на ваш вопрос без специфики задачи просто невозможен.

SQL-сервер хотя бы какой будет ?
123 Супер король
 
06.05.15
21:41
(122) Писал уже выше. Сервер - MySQL. Клиент подсоединился, получил данные максимум за 0.01 секунды, отсоединился. В каждую фирму клиенты могут подсоединяться раз в секунду. Так как сейчас около 700 фирм, то получается 700 раз в секунду по соединению в общем. В итоге процессор загружен больше 100%, клиенты висят в очереди ожидания.
124 Torquader
 
06.05.15
21:54
(123) Тогда разделение по базам вас не спасёт, если только не будет стоять предсервер, который запросы разных фирм будет в разные базы отправлять.
В случае MySql и особенно текстового хранения таблиц лучше всего разделять именно таблицами. Хотя, последние версии MySql даже с транзакциями работать умеют.
125 Torquader
 
06.05.15
21:57
А от очереди избавится не получится - если порт слушать, в общем случае, могут несколько процессов и каждый по очереди получает себе запрос на обработку. Если база одна, то ему переподключаться не надо - он может начать работать. Конечно, придётся делать выборку каких-то таблиц, но это процесс не сложный, тем более, что кеширование данных таблиц никого не спасёт.
Префиксы и прочие "ухищрения" заставят процессы лезть в одну общую таблицу, что на производительности скажется отрицательно.
126 Garykom
 
гуру
06.05.15
21:58
(123) мда, 700 коннектов в секунду...положат сервак влегкую...причем любой
127 Garykom
 
гуру
06.05.15
22:00
вообщем в вашем извращенном случае, решение это:

разные сервера!

несколько мускулов запускаешь с разными портами (на одном сервере, тока оперативки побольше), далее "предсервер" точнее в php выбирается к какому обращаться
128 Garykom
 
гуру
06.05.15
22:02
(127)+ и самые затратные операции это коннект/дисконнект...

так что держи на php постоянный пул коннектов и юзай их для обслуживания очереди запросов ))
129 MaxS
 
06.05.15
22:07
Аудитор фирмы 1 попросит базу для анализа. Как отдать, если в базе несколько фирм?

новые базы
130 drumandbass
 
06.05.15
23:42
1cfresh.ru колонка область данных

новая колонка в таблицах
131 Супер король
 
07.05.15
06:14
(128) MySQL разве сам не кеширует коннекты? Я конечно могу держать постоянно открытый коннект и использовать его для разных клиентов. Но нужно-ли это делать?
132 Супер король
 
07.05.15
06:17
(129) Можно его нахер послать по причине что в базе несколько фирм.
133 ЧеловекДуши
 
07.05.15
07:16
(132) Нельзя его послать :)
134 ЧеловекДуши
 
07.05.15
07:17
+(132) Послать та можешь, но тот орган, который требует Аудита будет в дальнейшем только рад такому обстоятельству :)
135 vde69
 
07.05.15
09:14
ты-бы хоть для приличия текст запроса дал....

вообще на 700 коннектов в секунду делают ХП в качестве параметра у нее имя клиента и его пароль в рамках одной сессии (можно в рамках десяти сесий)...

это
1. сократит трафик самих запросов
2. сократит авторизацию (не требуется ответ сервера)
3. упростит отладку и исправление
4. закроет прямой доступ к данным, будет работать по принципу RLS от 1с

зы
а вообще за то, что ты конкретику описал только после сотни постов - за такое морду бьют...
136 Супер король
 
07.05.15
10:18
(133) Можно. Кто он такой? Я его не звал.
137 Супер король
 
07.05.15
10:19
(134) Никто не потребует аудита моей базы. Там нет ничего интересного для них.
138 ЧеловекДуши
 
07.05.15
10:40
(137) А нам тут то не видно, что вы там ведете.
Если только Управленческий учет, а Бухия у этих фирм отдельно. То тогда Аудита не будет.
Иначе, вы просто не дальновидный человек :)
139 Супер король
 
07.05.15
10:50
(138) Там даже не управленческий учет, а можно так назвать прайс листы, которые ничего не значат.
140 Gantosha
 
07.05.15
11:00
адская интернет сеть магазинов ..
141 Супер король
 
07.05.15
11:06
(140) Поменьше чем у Яндекса. На много.
142 Garykom
 
гуру
07.05.15
11:16
(139) неужто систему еЗаказа ваяешь?
143 Супер король
 
07.05.15
13:32
(142) не знаю о чем ты.
144 Garykom
 
гуру
07.05.15
14:28
(143) ну от поставщика к покупателям прайсы, а от покупателей к поставщику заказы
145 NikVars
 
07.05.15
14:40
(99) А ты не озвучил плюсы и минусы перечисленных тобой в (0) вариантов.
146 Torquader
 
07.05.15
16:17
Вообще-то, выгрузить базу никто просить не должен. Просить будут информацию о конкретной фирме, что не мешает её выгрузить в xml-файл или ещё как-то вообще безотносительно к процессу хранения данных в системе.
147 vde69
 
07.05.15
16:18
(140) вообще то похоже на посекундный билинг...

но тогда автору надо идти на профильные сайты...

билинг штука тонкая...
148 Torquader
 
07.05.15
16:32
(147) Просто в России "коленочное производство" продвигается во все области деятельности. Поэтому, даже сложные и надёжные системы могут писать те, кто научился программировать на BASIC-е или около того.
149 Супер король
 
07.05.15
18:22
(144) типа того.
150 Супер король
 
07.05.15
18:23
(148) не только, я еще на турбо паскале научился программировать.
151 Torquader
 
07.05.15
18:32
(150) Молодец.
Только, в данном случае, более уместно знание хотя бы php.
Хотя, на паскале тоже можно Web-сервер наваять.

Только теперь смотри - у тебя не фирмы, а клиенты, то есть заказчики твоих услуг. Поэтому, по идее, всё должно быть в одной базе.
А вот далее, придётся продумывать алгоритм более быстрой обработки, то есть конвейер.
В вашем случае, сначала нужно, чтобы запросы проходили аутентификацию, и это можно сделать на одном сервере, а дальше, когда всё в порядке, запросы выполнял другой сервер.
И подключения к базе должны висеть постоянно, чтобы не нужно было ещё и авторизацию на подключение к базе проходить.
152 Супер король
 
07.05.15
21:07
(151) Возвращаемся к вопросу, кэширует ли MySQL подключение или нет?
153 Супер король
 
07.05.15
21:10
У меня сейчас веб сервер постоянно держит соединение с MySQL сервером. Сколько процессов веб сервера запущено, столько и подключений. Обычно 5 штук. Но никакой прибавки скорости не заметил по сравнению с тем когда для каждого клиента происходило новое подключение.
Почему так?
154 ДенисЧ
 
07.05.15
21:15
(153) не твоя любимая одежда?
http://s.pikabu.ru/post_img/2013/07/30/10/1375198251_187774581.jpg
155 Garykom
 
гуру
07.05.15
21:17
(153) Если еЗаказ и зная что статика быстрее:

1. Выкидываем прайсы из базы в файлы и юзверям отдаем статические готовые страницы
-минус нагрузка на базу сразу

2. При записи заказа так же делаем ход конем, php получая заказ от покупателя пишет его в файл, записанный копируется в папку для загрузки и откуда они по очереди в свободное время и подгружаются отдельным скриптом.
Копирование обязательно чтобы не было загрузки "неполного" заказа
-минус нагрузка и ее распределение

3. Самому то слабо было придумать? Лисапед древний как ... от мамонта
156 Супер король
 
08.05.15
06:29
(154) Нет, больше на твою похожа.
157 Супер король
 
08.05.15
06:31
(155) Блин, как я сам до этого не догадался?! Жаль что оно мне не нужно.
По теме еще будут полезные сообщения?
158 ЧеловекДуши
 
08.05.15
06:43
(154) Да его это, ник уже о многом говорит :)
159 ЧеловекДуши
 
08.05.15
06:44
(157) Только стеб... ибо уже ответили, насоветовали... А воз и по сей день там :)
160 Супер король
 
08.05.15
07:01
(159) Посоветовали, но это был не ты.
161 megabax
 
08.05.15
07:56
Сегодня не связаны, завтра фиг его знает. Я за новую колонку, это универсальнее.

новая колонка в таблицах
162 ЧеловекДуши
 
08.05.15
08:09
(160) Скажи хоть, что ты решил делать?
Какие квадратные колеса в ведении учета и в экономии на спичках :)
163 ЧеловекДуши
 
08.05.15
08:10
(161) Ага, человек хочет экономить на Объемах информации, а вы ему новую колонку. Где тут экономия? :)
164 Супер король
 
08.05.15
08:36
(163) Бред. Не ври что я хочу. Тебе это не известно.
165 Torquader
 
08.05.15
17:52
(155) С файлами тоже нужно быть осторожным - файловая система - обычно самое узкое место, так что сразу предлагаю файлы заменить буферами в памяти.
166 Garykom
 
гуру
08.05.15
17:59
(165) а это уже по желанию

ЗЫ А что еще не всЁ поделили?
167 Garykom
 
гуру
08.05.15
18:09
И вообще нафига им какой то сервер с 700 клиентами в секунду

сформировать прайс в экселе и разослать по мылу... ответные прайсы-с-набитыми-колвами-заказы спец.тренированная обезъянка будет грузить в базу...

во все как у Сохранение прайс-листа из 1С в эксель требуемого формата.
168 КонецЦикла
 
08.05.15
22:27
>>Данные разных фирм между собой никак не связаны.

В этом есть большие сомнения...
Также нужно подумать над тем как получать консолидированную отчетность если таковая нужна.