- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
У меня вот, наоборот, проект постепенно мигрирует с монги на postgresql. Те запросы, которые в монги тормозят время от времени, в постгре даже без шаманизма работают быстро (оговорка используется fts в постгре, там запросы с OR слегка подтормаживают и нужно шаманить).
Не смотря на то, что автор уже определился с выбором, там на самом деле ещё бы конфиг MySQL глянуть, потому что если там есть query_cache, он может довольно таки хорошо убивать производительность, если запросы летят в разные части индекса, и есть запросы на вставку.
Я сталкивался с багом, когда на двух почти идентичных VPSках (2 гб, и 1 ядро), с одинаковыми данными, с одинаковыми конфигами, на одной VPS планировщик выбирал эффективный план, а на другой - медленный. Помог логический дамп, и пересоздание базы и таблиц.
отдельную таблицу из id, value и буду ее хранить в MariaDB в таблице типа Memory.
Если почти не будет операций вставки/удаления, то норм. Если же будут вставки/удаления, то имхо лучше рассмотреть другой вариант сделать виртуальный диск из памяти и кинуть майисамную таблицу туда (вместо создавания мемори). Останутся все преимущества обычной таблицы и одновременно с этим реактивная скорость.
Solmyr, попробуйте залимитировать выборку. Или вам сразу нужны все результаты сразу?
Поле ID строковое? https://ru.stackoverflow.com/a/511197/179289
Может есть возможность изначально разбить этот массив данных. Заведомо как-то переформировать. Например по алфавиту ключа и тд.
Может есть возможность изначально разбить этот массив данных. Заведомо как-то переформировать. Например по алфавиту ключа и тд.
Партишенинг или шардинг всегда должен работать медленнее чем первичный ключ, даже для ключа типа BTREE не говоря о ключе HASH. Если партишенинг работает быстрее ключа, с ключом точно что-то не так.
---------- Добавлено 28.03.2020 в 16:48 ----------
оговорка используется fts в постгре
FTS я вообще делаю на сфинксе, пока минусов не заметил.
FTS я вообще делаю на сфинксе, пока минусов не заметил.
Я со сфинкса переехал на постгре. Сфинкс тогда остановился в развитии был (это было года 3 назад) и новый поиск у постгре была быстрее. Сейчас трудно сказать, но у постгре моментальный фтс, если не OR между словами и массив лемм не сотни на одну запись.
А у меня и то, и другое. :)
Партишенинг или шардинг всегда должен работать медленнее чем первичный ключ, даже для ключа типа BTREE не говоря о ключе HASH. Если партишенинг работает быстрее ключа, с ключом точно что-то не так.
С чего вы это взяли?
С чего вы это взяли?
С того что BTREE всегда эффективно делит подмножества, а партишенинг не всегда, даже при эффективной природе ключа партишенинга количество подмножеств не всегда равно степени двойки.
С того что BTREE всегда эффективно делит подмножества, а партишенинг не всегда
Партиционирование по хешу тоже делит данные эффективно. Учитывая, что там можно использовать даже PARTITION BY HASH (id div 1000), таким образом ряд из 1000 непрерывных id попадет в одну и ту же партицию. И можно даже range запросы делать по ним. Оптимизатор знает, в какую партицию ему сходить на основании запроса. Ему нужно ходить по дереву небольшой партиции, вместо большого дерева одной жирной таблицы. Вставка, кстати, тоже более эффективна.
даже при эффективной природе ключа партишенинга количество подмножеств не всегда равно степени двойки.
А почему количество подмножеств должно быть равно степени двойки? :)