420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
PostgreSQL vs MySQL скорость чтения31.10.2016, 23:36. Показов 5262. Ответов 8
Метки нет Все метки)
(
Гуру, проконсультируйте, плиииз...
Уже в нескольких источниках услышал что MySQL "уступает почти во всем, кроме скорости чтения простых индексированных таблиц". Задача: В течении месяца посетители "забивают" информацию в поля. Я ее заношу в PG. Они ее часто обновляют и правят... Потом я этот период "закрываю" и они по ним могут лишь "формировать отчеты"... То есть операция "только чтения". Не по теме: Слышал у гугла (big-query) на порядок быстрее работает чем PG, т.к. только чтение дает, мешая даже замене (знакомые могут лишь "добавлять новые записи в конец" с новой меткой "даты внесения"). Наверное "подобная" технология используется... Что это такое??? Особые формы "скоростных" таблиц? PG их поддерживает? Задумал в конце каждого месяца для ускорения переносить прошлый месяц в таблицу MySQL и формировать отчет по двум базам... По идее будет ОГРОМНЫЙ прирост скорости если будут составлять лишь по прошлым месяцам. Вопрос: Что это за вид таблиц/баз? Что можно про это почитать? PG точно подобного не поддерживает? Может режим при создании таблицы "включить" надо?
0
|
31.10.2016, 23:36 | |
Ответы с готовыми решениями:
8
Создание тестов на скорость чтения и скорость записи Так ли важна в реальной жизни скорость записи SSD, или смотреть надо только на скорость чтения, а на запись пофигу MySQL vs PostgreSQL |
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||
01.11.2016, 14:37 [ТС] | ||
Факт - знакомые СПЕЦИАЛЬНО выложили "статичные" данные на bigquery(гугл) для ускорения запросов. Факт - не смотря на "крутость" PG многие КРУТЫЕ фирмы и не думают переносить свои данные... (не ручаюсь, но вроде в этом списке Facebook и twitter...) да и графики на чтение где-то видел - там явно скорость чтения у MySQL не зависит от обьема базы в отличии от PG. Не по теме: я много лет сидел на MySQL. Теперь вынужден полностью перейти на PG+bigquery. Пишу/планирую/просчитываю "для себя" проект, где надо много "читать" - выбираю базу - узнал/услышал что pg оказывается "не во всем крут" (здесь в комментариях https://habrahabr.ru/company/mailru/blog/248845/) потом переписывать не охота, когда выйду на большие "обороты" (записей будет много)
0
|
1258 / 973 / 383
Регистрация: 02.09.2012
Сообщений: 3,001
|
|
01.11.2016, 16:39 | |
Я бы не стал голословно сравнивать с bigquery. Самому мне не доводилось использовать, но предполагаю, что над каждым запросом к большим данным там трудится целый кластер из нескольких узлов, которые параллельно все собирают (ведь только на чтение работаем). Поэтому сравнение не совсем корректное, возможно pgpool + группа из postgres-серверов будут давать результат не сильно хуже, чем bigquery.
Теперь по самой задаче, что-то выбрать из большой таблицы. Вы сами бы как решали эту задачу, чтобы было очень-очень быстро?? Наверно бы использовали индексы, чтобы скакать не по всем данным, а сразу прицельно по некоторому подмножеству. Соответственно нужен правильный актуальный индекс. Пока мы данные считываем с диска в память, чтобы делать выборку, то тоже тратим время. Нужно, чтобы данные таблицы (индекса) располагались "ровненько", друг за другом, без лишних операций ввода/вывода. Как-то об этом надо бы позаботиться, плюс скорость чтения с носителя имеет значение. Хотелось бы и оперативной памяти предусмотреть больше, чтобы максимально уместить запрос без лишних сбросов/подкачек промежуточных данных. Поэтому все же!!! коли речь идет о highload в конкретной задаче, а я именно так расцениваю вашу задачу, то я бы проводил эксперименты по оптимизации. То есть еще до продакшна эмулировать нагрузку и смотреть что и как. Ну нет на словах ничего такого специального в указанных мною условиях, в рамках которых должна действовать СУБД, чтобы максимально быстро достать заданную пользователем выборку.
0
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||
01.11.2016, 21:31 [ТС] | ||
Может при тех-же характеристиках харда у MySQL все-таки выше скорость чтения??? ПОЧЕМУ брендовые компании не стремятся убежать с MySQL? Для них работа программистов - не проблема! Своих тысячи сидят в "режиме обслуживания". Мне не нужны советы как ускорить поиск по базе поменяв индексы или улучшив "железо"!!! Мне нужно от тех кто работал на обоих видах баз и имел возможность сравнить получить ответ "Да MySQL быстрее" или "Pg не уступает ВООБЩЕ, если использовать правильные индексы" или "В PG для этого есть особые типы таблиц"... Не по теме: Не знаю "в тему" ли, но встретил фразу "Одну делаете в MyISAM, а вторую в InnoDB" про MySQL... похоже это два ТИПА таблиц в MySQL и одна явно отличается от другой устройством... Сейчас только собираюсь вычитать разницу - большие статьи - на долго.
0
|
2 / 2 / 3
Регистрация: 04.12.2015
Сообщений: 114
|
|
13.11.2016, 23:07 | |
Если Вы так принципиально подходите к вопросу, и более того, скорее всего у Вас уже есть базы Mysql и PGsql...вопрос напрашивается сам собой, простите, а почему бы Вам не попробовать создать однотипные базы данных, совершенно элементарные, с выборкой Вашей уже накопившейся стад информацией, пусть даже 1000 записей, и собственно не создать запросы, да не подсчитать время, которое будет тратиться на выполнение вашего запроса?
Что Вам мешает? Или нет возможности пробовать на одном железе?
0
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
||
14.11.2016, 14:53 [ТС] | ||
Будет выделен под проект хостинг. И вопрос... на него ставить pg? или pg И mysql? и в ядре программы учитывать "двойные" запросы по "медленной-текущей" и "быстрой-архивной" базам?
0
|
Кодогенератор
![]() 200 / 200 / 51
Регистрация: 15.06.2011
Сообщений: 794
|
||
15.11.2016, 00:19 | ||
кстати pg надо еще грамотно настроить - конфиг по дефолту весьма уныл ![]()
0
|
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
|
|
15.11.2016, 02:05 [ТС] | |
У меня еще НЕТ больших данных... но я уже говорил - я РАССЧИТЫВАЮ на них!
У pg есть много чего интересного чего нет у mysql! Основной базой будет ОДНОЗНАЧНО pg! Это не обсуждается! Проблемы настройки/администрирования - решаемы... Вопрос стоял не так!!! Для БОЛЬШИХ "архивных" данных, к которым нужен быстрый доступ имеет ли смысл ВТОРОЙ базой поставить MySQL??? Первой по любому будет pg! (иначе я бы в другой ветке вопрос задавал). Слышал что pg уступает mysql ТОЛЬКО в скорости ЧТЕНИЯ к большим таблицам... ТАК ЛИ ЭТО??? ...не надо мне советовать сменить архитектуру. не надо мне советовать перейти на mysql. не надо мне советовать увеличить память и процессор или выгрузить всю базу в память... если в курсе - просто ответе на вопрос - "есть ли прирост в скорости чтения больших таблиц у mysq по сравнению с pg на ОДИНАКОВОМ оборудовании?" - да или нет? сейчас у меня данных на несколько килобайт... прогнозирую гигабайты... хостинга пока нет... данных "наплодить" для тестов не могу... но и переписывать потом не хочется плодя "заплатки" к самописному движку - проще в движке изначально предусмотреть работу с двумя базами, ЕСЛИ это действительно добавит скорости на больших данных...
0
|
15.11.2016, 02:05 | ||||||
Помогаю со студенческими работами здесь
9
Скорость чтения DVD скорость чтения - копейки Скорость чтения/записи MySQL & PostgreSQL Синхронизация PostgreSQL+MySQL Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
|
Структура "железный OnKeyUp" вместо антидребезга. Полностью асинхронный счётчик.
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution
В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
|
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
|
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
|
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
|
Цепочки методов в C# с Fluent API
UnmanagedCoder 24.04.2025
Современное программирование — это не только решение функциональных задач, но и создание кода, который удобно поддерживать, расширять и читать. Цепочки методов и Fluent-синтаксис в C# стали мощным. . .
|
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
|
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
|
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
|
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
|