Индексы таблиц SQL и производительность Spotfire - PullRequest
0 голосов
/ 10 апреля 2019

У меня есть проект spotfire, который ссылается на несколько больших таблиц на основе SQL Server (одна имеет 700 000 строк с 200 столбцами, другая - 80 000 000 строк с 10 столбцами, некоторые другие значительно меньше по сравнению с этим). В настоящее время я использую информационные ссылки с подсказками, чтобы сузить данные перед загрузкой в ​​spotfire. Иногда по-прежнему возникают проблемы с увеличением объема ОЗУ и случайными скачками ЦП после загрузки данных.

Мои вопросы , если я добавлю индексы в таблицы SQL:

  1. Будет ли лучше использование ОЗУ / ЦП пламенным выстрелом (ниже)?

  2. Поможет ли это ускорить начальное время загрузки данных?

  3. Должен ли я вообще беспокоиться?

Я использую SQL Server 2016 и Tibco Spotfire Analyst 7.7.0 (версия сборки 7.7.0.39)

Спасибо

1 Ответ

1 голос
/ 10 апреля 2019

Если вы добавляете индексы без логической причины, это на самом деле замедляет работу вашей системы, поскольку индексы постоянно обновляются после каждого INSERT, UPDATE, DELETE. Вы можете игнорировать мое заявление, если ваша БД содержит статические данные, и вы обычно не меняете содержимое.

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

Вам помогут следующие URL:

https://www.liquidweb.com/kb/mysql-performance-identifying-long-queries/ https://www.eversql.com/choosing-the-best-indexes-for-mysql-query-optimization/

...