Nano Hash - криптовалюты, майнинг, программирование

Две очень большие таблицы mysql, я должен объединить их в одну или иметь запрос UNION?

У меня есть две очень большие таблицы, одна с 5 млн строк, другая с 37 млн ​​строк. В первом все описательные текстовые поля заполнены для каждой строки несколькими полнотекстовыми индексами (размер 33 ГБ). В последнем еще нет содержимого для этих текстовых полей, и я собираюсь добавить в них текст (размер 20 ГБ).

Я уже спрашивал здесь об оптимизации моего поискового запроса в таблице с 5 миллионами строк, и, похоже, дальнейшая оптимизация невозможна:

Оптимизация SELECT… UNION … запрос с ORDER и LIMIT для таблицы с более чем 5 миллионами строк

Нам удалось сократить время выполнения вышеуказанного запроса в 10 раз, сделав сервер более мощным. Но теперь, если я добавлю еще один SELECT ... UNION ... к вышеупомянутому запросу для таблицы из 37 миллионов строк, время его выполнения превысит 10 секунд, что больше недопустимо.

Итак, вот вопрос, было бы теоретически лучше, если бы я перемещал строки из таблицы 37M-строк в другую при добавлении дополнительного текстового содержимого в строки или это ничего не изменит?


  • Соединение - лучшая практика, возможно, локальное кэширование. 08.10.2016
  • Вы когда-нибудь задумывались об использовании чего-то вроде elastic.co/de/products/elasticsearch? У нас есть база данных с примерно 100 млн строк и улучшенным временем поиска (полнотекстовый поиск и т. д.) с 10 с до примерно 0,2 с. Если вы используете какой-либо современный фреймворк, такой как laravel, его очень легко интегрировать. 08.10.2016
  • Вы тестировали его в InnoDB? Пределы там, несомненно, другие. 09.10.2016
  • @KoenHollander, что вы подразумеваете под местной обналичкой? 09.10.2016
  • @Evo_x Я использую обычную MySQL и не знаком с другими. Подходит ли ваше решение для моего случая? 09.10.2016
  • @RickJames, да, обе таблицы теперь в InnoDB. 09.10.2016
  • Вы можете создать локальный файл JSON, чтобы уменьшить данные 09.10.2016

Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

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

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..