powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Почему select count(*) from tablename запрос занимает много время?
25 сообщений из 53, страница 1 из 3
Почему select count(*) from tablename запрос занимает много время?
    #39790754
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день всем! У меня есть таблица там больше 100 млн записи. Все нужные поля индексирован. Ребята помогите пожалуйста
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790756
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача какая?
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790807
архивариус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT
   Total_Rows= SUM(st.row_count)
FROM
   sys.dm_db_partition_stats st
WHERE
    object_name(object_id) = 'T' AND (index_id < 2);


select COUNT(*) from T;
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790817
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть таблица я его использовался как лог. Каждый секунде есть 1000 записи. Если я хочу получить информация именно выбранный период, он занимает больше 30 минут , тот время мой сервисе не записывают история в лог
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790820
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KahramonУ меня есть таблица я его использовался как лог. Каждый секунде есть 1000 записи. Если я хочу получить информация именно выбранный период, он занимает больше 30 минут , тот время мой сервисе не записывают история в лог
если просто, то ваш вариант скорее всего NOLOCK
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790826
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK,
как мне устранить эту проблему. У меня есть два сервиса который записывает лог. 1. Через проседедура. 2. Через web api. Пожалуйста помогите. Извините мой русскый язык
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790835
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kahramon,
Код: sql
1.
SELECT COUNT(*)AS CNTT FROM TABLEA(WITH NOLOCK)
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790836
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kahramon,

Если нет возможности править запросы, то или чере querystore или перевести базу в RCSI
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790875
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK,

Так попробовал. Никаких результаты нет. Опять занимал больше 30 минут. Если у вас время есть напишите мне на телеграмм (@qahramon0786). Я вам доступ открою
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790882
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Msg 601, Level 12, State 3, Line 5
Could not continue scan with NOLOCK due to data movement.
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790884
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KahramonУ меня есть таблица там больше 100 млн записи. Все нужные поля индексирован(...) Каждый секунде есть 1000 записи.
1000 * 60 * 60 * 24 = 86 миллионов записей в сутки. 2,5 млрд записей в месяц. 31 млрд. записей в год. Я испытываю уважение к людям, умеющим управлять такими объемами данных (как вообще, так и на MS SQL в частности). Но чувствую, что-то здесь не так...
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790885
WarAnt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kahramon,

1. show your execution plan
2. "Could not continue scan with NOLOCK due to data movement." seem to be hdd dies
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790893
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
WarAnt,
How can i check hdd ? i have been sql server 2005 database and i changed it to sql server 2014. when i attach database there is no errors and warning.

Евгений

У меня груба 5000 терминал. они отправляет свой статус каждый секунд. Я сам не знаю как это проблема решить. Пожалуйста поделился своим опытом
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790905
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KahramonУ меня груба 5000 терминал. они отправляет свой статус каждый секунд. Я сам не знаю как это проблема решить. Пожалуйста поделился своим опытом
Например, можно логировать не статус, а изменение статуса.
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790907
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Фактически это не обязательно проблема базы...
Можете пробовать сменить на поиск из метаданных 21842488
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790910
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
.Евгений, Может я не так объяснил ситуация. дайте мне ваши контакт я вам доступ открою через teamviewer
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790925
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kahramon.Евгений, Может я не так объяснил ситуация. дайте мне ваши контакт я вам доступ открою через teamviewer
Kahramon, вам уже предложили считать количество строк на основе метаданных. Любой другой вариант либо займет существенное время, либо замедлит вставку новых строк, либо потребует изменить архитектуру.

Сам запрос мне не интересен, а вот архитектура логирования вызвала у меня некоторое недоумение.
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790943
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KahramonЕсли я хочу получить информация именно выбранный период, он занимает больше 30 минут

[quot .Евгений]KahramonЛюбой другой вариант либо займет существенное время, либо замедлит вставку новых строк, либо потребует изменить архитектуру.


Ну чо так уж печально?
Фсе очень сильно зависит от организации записи в лог (кластерный индекс), размеров "периода" и его соотношения с кластерным индексом...
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790951
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kahramon,

для хранения журналов веб-сервисов больших объёмов обычно используют нереляционные СУБД.
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790970
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aleks222,
Ребята , я не такой профессионал как вы. Может у меня есть много ошибок когда строил архитектурную базу. Пожалуйста помогите мне найти причину. У меня сейчас есть копия база данный , если вам интересно определить ошибки я вам открою доступ.
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39790986
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222Ну чо так уж печально?
Фсе очень сильно зависит от организации записи в лог (кластерный индекс), размеров "периода" и его соотношения с кластерным индексом...
Как волка не корми, все равно яйца больше медвежьих не вырастут. Можно еще унести данные на SSD или In-memory, но суть проблемы остается в другом: в логе лежат никому не нужные десятки и сотни миллионов записей, данные востребованы в другом разрезе. И вместо изменения принципа хранения данных разработчик будет героически преодолевать трудности, созданные им же.
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39791022
Kahramon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А можно создавать каждый месясь отдельный таблица(log_month_year) и сохранить как ndf(log_month_year.ndf) файл?
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39791087
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kahramonaleks222,
Ребята , я не такой профессионал как вы. Может у меня есть много ошибок когда строил архитектурную базу. Пожалуйста помогите мне найти причину. У меня сейчас есть копия база данный , если вам интересно определить ошибки я вам открою доступ.

Зачем твоя база?

Определение таблицы и пример запроса - будет полезнее.
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39791098
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kahramon,
Должно помочь - естетсвенно будет верно если статистика апдейчена
для личных целей - посмотреть Count таблиц - САМОЕ ТО


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT  s.name AS [schema], t.name TableName,   p.rows 
from sys.objects t     -- with (nolock)
JOIN sys.schemas s 
     ON t.schema_id=s.schema_id
	 JOIN sys.partitions  p 
	        ON p.object_id = t.object_id 
			JOIN sys.indexes i 
			ON i.index_id=p.index_id AND t.object_id=i.object_id
			WHERE 
			t.type = 'U' and i.type_desc in ('CLUSTERED','HEAP')  
			order by  3 desc
...
Рейтинг: 0 / 0
Почему select count(*) from tablename запрос занимает много время?
    #39791103
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор,

1. Для получения имени схемы есть удобная функция object_schema_name().
2. В таблице может быть более одной партиции.
...
Рейтинг: 0 / 0
25 сообщений из 53, страница 1 из 3
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Почему select count(*) from tablename запрос занимает много время?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]