На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается для обсуждения вопросов использования баз данных, за исключением составления запросов на SQL. Для этого выделен специальный раздел. Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Chow, Bas, MIF
Страницы: (4) « Первая ... 2 3 [4]  все  ( Перейти к последнему сообщению )  
> Проблема сортировки по разнице изменения числа
    JoeUserНу это уже про шаманство на очень высоких нагрузках ;) Ну и вставку пакетами сервак делать умеет ;)
      Цитата JoeUser @
      Есть предположение что, если грамотно реализовать сборку единичных логов в "пакеты", то можно будет выжимать чудеса по скоростям

      Для чудес по скоростям достаточно создать таблицу для первичного приёма логов на MEMORY-движке, и пачками переливать из неё поступившие сведения в основную таблицу.
        Меня тут "осенило" ... сборку логов пакетами можно осуществлять уже имеющимися средствами "а-ля тонких клиентов". Нужно всего лишь скрестить "syslog" или какой-нить его форк типа "syslog-ng" с существующим сервером БД. Тогда первичные запросы на запись логов будет принимать не сам сервак БД, а посредник (syslog*). Времени пока особо нет, так поверхностное гугление дало два интересных линка "kiwisyslog" и "Writing syslog messages to MySQL, PostgreSQL or any other supported Database" ... походу мы упорно изобретаем велосипед из дерева :lol:

        Пакетные вставки действительно должны дать ощутимый прирост скорости.
        А "лайт-нормализацию" можно делать и на тонком клиенте, там же формировать и пачки для записи.

        Такие дела.
          JoeUser и ? топикстартеру от этого уже все ясно эт раз
          что у нас вообще по физике происходит.
          Есть вэбсервер Он , обычно, пишет текстовый лог. посещений
          Если мне не изменяет память, можно перенаправить эту запись в биде.
          Или надо вклиниваться в каждую страницу с кодом который "отгрузит лог".
          Или увы, по расписанию брать серверный лог и пакетом его грузить.
          что дальше?
          Если грузим пакетами нам насрать. Може м и разобрать можем и ....
          Если вклиниваемся в работу вэбсервера любой затык на отгрузке лога будет тормозить сервак при синхронном соединении или приведет к потерям данных при асинхронном
          Тут нужен анализ что нам дороже. Возможно потеря 10-15 данных на результате анализа и не скажется а возможно нужно все "до копейки".
          Если вклиниватся в работу страничек - практически тоже что и с вэбсервером. Или загрузка страницы увеличивается на ожидание отклика или есть риск потерь данных
          Вот как бы и все ;)
          Где тут найден "клиент" и тем более "тонкий клиент" не понимаю.
          Лайт, не лайт тоже не понятно.

          Но то что любая обработка затормозит вставку эт факт. На сколько - померяем хохмы для.
          К чему ведут "тормоза" при вставке лога - выше указал

          Добавлено
          Цитата Akina @
          Для чудес по скоростям достаточно создать таблицу для первичного приёма логов на MEMORY-движке, и пачками переливать из неё поступившие сведения в основную таблицу.

          ну или так.. А на обработке "пачки" скорость уже не настолько критична. ;)
            Цитата Павел Калугин @
            Есть вэбсервер Он , обычно, пишет текстовый лог. посещений

            В случае вебсервера - уже есть возможность "не писать лог", а скормить его syslogd, а там хоть трава не расти. В свою очередь, syslogd - асинхронен по сути (сбрасывает кэш по своим правилам). Осталось только научить syslogd сбрасывать не в системный журнал (как правило это /var/log/messages) или выделенные лог-файлы, а завернуть это пакетными запросами к серверу БД. Тормозов как раз тут - по самому минимуму, ибо все происходит асинхронно.

            По поводу возможных потерь ... ну если система кривая по настройке и по энергообеспечению. Но это другая композиция из другой оперы.
              Цитата JoeUser @
              Осталось только научить syslogd сбрасывать не в системный журнал (как правило это /var/log/messages) или выделенные лог-файлы, а завернуть это пакетными запросами к серверу БД.

              "syslog vs syslog-ng" - походу все уже есть :lol:
                Цитата JoeUser @
                По поводу возможных потерь ... ну если система кривая по настройке и по энергообеспечению. Но это другая композиция из другой оперы.

                нет вопрос как раз про потери потому что ыйд сервер не способен принят такое количество запросов. с инсертами в одни и те же таблицы и параллельным поиском по ним ;)
                  Цитата Павел Калугин @
                  нет вопрос как раз про потери потому что ыйд сервер не способен принят такое количество запросов. с инсертами в одни и те же таблицы и параллельным поиском по ним


                  Это вопрос из разряда "как записать, если стоит защита от записи" :lol: Ну если сервак не тянет физически поступаемый объем инфы, или уменьшать поступающую инфу, либо строить/расширять кластер. ИМХО, если сервак работает более чем на 50% загрузки - это уже "звонок" о том, что не все так хорошо в датском королевстве.
                    Цитата JoeUser @
                    или уменьшать поступающую инфу, либо строить/расширять кластер. ИМХО, если сервак работает более чем на 50% загрузки - это уже "звонок" о том, что не все так хорошо в датском королевстве.

                    Все же писать софт правильно более бюджетное решение ;)
                      Цитата Павел Калугин @
                      се же писать софт правильно более бюджетное решение ;)


                      Ну таки да :)
                      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                      0 пользователей:


                      Рейтинг@Mail.ru
                      [ Script execution time: 0,0319 ]   [ 15 queries used ]   [ Generated: 19.04.24, 23:33 GMT ]