Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Несколько вопросов по Readonly БД / 18 сообщений из 18, страница 1 из 1
16.01.2014, 01:41:42
    #38527669
shiliaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
Всем привет.
Я тут немного порассуждаю вслух, а если начну гнать чушь ошибусь в чем, то бейте меня ногами поправьте меня :)

Дано: FB 2.5.3 Classic Win64. База 9Гб + 25Гб блобы в файловой системе (читаются - пишутся через UDF). В пике ~100 коннектов. Озу 24Гб, бд практически всегда в кэше ОС.

Небольшая преамбула.

Возникла необходимость к информационной системе привязать федеральную адресную базу ФИАС. База ФИАС в развернутом виде занимает ~10 Гб, что сравнимо с моей рабочей базой (РБ). Адресная база (АБ) полностью обновляется раз неделю (на самом деле есть и инкрементные обновления, но, как я не пробовал, получить полностью идентичные данные с помощью накатанных инкрементов не удалось. Трафика не жалко, считаем что обновляется полностью :))
Поскольку мне не нужны жесткие связи на уровне ФК, я решил хранить АБ в отдельной Readonly базе.

Плюсы этого решения:
- не распухает РБ. Время б/р остается на прежнем уровне;
- невозможно убить РБ в случае неудачного импорта (в какую-то неделю был архив с мусором в dbf-файлах);
- быстрый (~1 часа с учетом загрузки архива) и простой процесс создания АБ с помощью Emb-сервера и External таблиц (на рабочем сервере Ext таблицы, естественно, запрещены);
- МУСОР. Перезаливать 50% объёма данных раз в неделю - нет уж. И RECREATE TABLE тут тоже не спасает.
- Время несогласованности данных минимально (Shutdown старая АБ, MOVE новая АБ).

Минусы:
- необходим второй коннект из приложения или доступаться к АБ из РБ с помощью Execute on external (мой вариант). Запросы препарятся каждый заново (не смертельно);
- необходимо больше ресурсов сервера или доп. сервер;
- две базы -> в два раза больше шансов сломаться.

По параметрам АБ вроде все понятно:
- сразу после создания, до заливки данных ставим no reserve. Меньше ИО, меньше кэш ОС, больше данных влезет в кэш FB;
- после заливки ставим флаг Readonly. Не уверен, но по-моему, FB открывает такие файлы с флагом readonly, что быстрее чем без него (тут я плаваю, по-моему политика кэширования ОС как то меняется). Хуже точно не будет.
- FW - без разницы, пусть ради экзотики будет OFF;
- SWEEP INTERVAL - по привычке 0. Хотя тоже без разницы.

Остаются вопросы по размещению АБ и политике сохранения коннекта (при выполнении Execute on external c флагом WITH AUTONOMOUS TRANSACTION каждый запрос выполняется в своем коннекте, который рвется после окончания запроса; без этого флага, коннект остается висеть до коммита (а в моем случае до дисконекта РБ, поскольку я использую одну транзакцию RC+RO), но и следующие запросы будут использовать этот коннект).

Варианты:
- Повесить АБ на инстанс FB от РБ (а у меня напомню classic). Плохо. В случае сохранения коннекта - отжирается много ресурсов (количество процессов fb_inet_server удваевается, пусть я и оставлю мизерный кэш 75 страниц, но велики шансы выкинуть РБ из кэша ОС). В случае установки коннекта каждый раз, много накладных расходов (создать процесс, вычитать кэш метаданных и т. д.);
- Поднять Супер на другом порту. Уже лучше. С режимом сохранения коннектов, я думаю супер не потянет (100 коннектов на одно ядро). А с режимом короткого коннекта наверняка справится (поставить большой общий кэш и обеспечить с помощью isql чтобы один коннект был всегда. База всегда будет "разогрета");
- Поднять суперклассик. Не знаю. Не работал с ним. Видимо то же, что и классик.
- Старый добрый классик на резервный сервер. Хороший вариант, но... Смущает размазывание БД по нескольким серверам. Надежность системы падает в два раза. 10054 опять же.

Ваши советы? Хотя пока писал, я для себя уже почти все решил :)
...
Рейтинг: 0 / 0
16.01.2014, 13:00:21
    #38528091
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
shiliaevС режимом сохранения коннектов, я думаю супер не потянет (100 коннектов на
одно ядро).
Что ему помешает?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
16.01.2014, 13:36:18
    #38528173
shiliaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
Dimitry SibiryakovshiliaevС режимом сохранения коннектов, я думаю супер не потянет (100 коннектов на
одно ядро).
Что ему помешает?..


Все 100 потоков будут крутиться на одном ядре, за которое конкурируют еще процессы классика.

Хотя...
Реально трудится будет штук 5-10 одновременно, может и ничего.

ЗЫ: с супером не общался со времен FB1, там он переставал принимать новые подключения на 60-70 коннектах. Помню было шаманство с галкой "Разрешить взаимодействие с рабочим столом".
Сейчас, конечно, и железо другое и исправили наверное.
А может это только мой склероз :)
...
Рейтинг: 0 / 0
16.01.2014, 14:48:41
    #38528332
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
shiliaev,

нормальный супер будет только в FB3. Вроде его к концу года обещают
...
Рейтинг: 0 / 0
16.01.2014, 15:05:40
    #38528384
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
Симонов Денис,

тем не менее, тут есть люди, которые на нынешнем супере и со 100 коннектов (к одной базе) вполне нормально себя чувствуют.
...
Рейтинг: 0 / 0
16.01.2014, 15:14:36
    #38528405
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
kdv,

Ты про INTERBASE или про тех у кого эти 100 коннектов бездельничают?
...
Рейтинг: 0 / 0
16.01.2014, 15:19:10
    #38528416
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
Симонов Денис,

про InterBase я бы сказал, что там на 16-ти ядрах и 350-400 активных пользователей себя нормально чувствуют.
Так что нет, я про Firebird. Тем более что "тут есть люди" - это именно на sql.ru, недавно что-то было про SS и сотни пользователей, чему я не поверил.
...
Рейтинг: 0 / 0
16.01.2014, 19:03:07
    #38528762
shiliaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
Симонов Денисshiliaev,

нормальный супер будет только в FB3. Вроде его к концу года обещают

Кстати да! Денис, хорошая идея.

Рисков то практически нет. Базу не сломает, а если и умудрится сломать - то и фиг с ней :).
Если ФБ упадет - то гвардеец (или что там вместо него сейчас) поднимет.
Единственный риск что тройка зависнет и повесит рабочий сервер.

Был бы я помоложе, поставил бы альфу тройки. :)
...
Рейтинг: 0 / 0
17.01.2014, 14:06:35
    #38529594
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
shiliaev, Windows сейчас вместо гвардейца
...
Рейтинг: 0 / 0
17.01.2014, 14:17:54
    #38529612
Таблоид
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
shiliaevБыл бы я помоложе, поставил бы альфу тройки. :)ну так если база эта (адресная) легко восстанавливается в любой момент, то причём тут возраст ? Ставь трёшку и работай. Завалить её после ~сентября-октября 2013 стало гораздо труднее, там подправили что-то существенное. Говорю по результатам своих издевательств (запускал по 450-500 коннектов - DML-молотилок - и оставлял так на двое суток).
...
Рейтинг: 0 / 0
17.01.2014, 14:31:31
    #38529635
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
Таблоид,

пока ODS не стабилизировался (заморозился) опасно. Каждый новый снапшот может потребовать миграции через b/r
...
Рейтинг: 0 / 0
17.01.2014, 14:41:26
    #38529653
Таблоид
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
Симонов Дениспока ODS не стабилизировался (заморозился) опасно. Каждый новый снапшот может потребовать миграции через b/r1) в чём опасность, если база всё время может быть пересоздана ?
2) сомневаюсь, что ТС будет часто менять билды. Поставит и забудет.
...
Рейтинг: 0 / 0
17.01.2014, 15:16:42
    #38529728
shiliaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
ТаблоидСимонов Дениспока ODS не стабилизировался (заморозился) опасно. Каждый новый снапшот может потребовать миграции через b/r1) в чём опасность, если база всё время может быть пересоздана ?
2) сомневаюсь, что ТС будет часто менять билды. Поставит и забудет.

Уговорили. Попробую на тестовой тачке погонять трешкин супер. Насчет продакшена буду сильно думать.
...
Рейтинг: 0 / 0
17.01.2014, 22:11:52
    #38530194
shiliaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
А embedded в снапшотах есть? Не могу найти.
...
Рейтинг: 0 / 0
17.01.2014, 23:30:29
    #38530248
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
shiliaevА embedded в снапшотах есть? Не могу найти.В 3-ке нет отдельного embedded.
Просто распакуй снапшот, не запускай сервер и подключайся через fbclient.dll в каталоге снапшота.
Есс-но, используя локальный коннект.
...
Рейтинг: 0 / 0
18.01.2014, 00:03:41
    #38530257
shiliaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
hvladВ 3-ке нет отдельного embedded.
Просто распакуй снапшот, не запускай сервер и подключайся через fbclient.dll в каталоге снапшота.
Есс-но, используя локальный коннект.
О, Влад, вы стерли разницу между городом и деревней клиентом и embedded. Круто! Более не придется думать об реестре и прочих .ini, .cfg.
Я так понимаю, что локальный протокол изжит навсегда и и париться о локальном, неизвестно кем и когда установленном сервере более не надо? Спасибо вам за работу.
...
Рейтинг: 0 / 0
18.01.2014, 10:04:49
    #38530380
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
shiliaevЯ так понимаю, что локальный протокол изжит навсегда
это не так. Но по умолчанию он не используется.
...
Рейтинг: 0 / 0
18.01.2014, 18:06:19
    #38530623
shiliaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вопросов по Readonly БД
dimitrshiliaevЯ так понимаю, что локальный протокол изжит навсегда
это не так. Но по умолчанию он не используется.

Спасибо. Дмитрий.
Читаю Release Notes.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Несколько вопросов по Readonly БД / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]