Дата: Четверг, 30.Мар.2017, 17:07 | Сообщение # 43
Участник
У вас сообщений: 58
Инженер электромеханик
OFFлайн
Российская Федерация
Оренбург
Всем спасибо, кто откликнулся, проблему удалось победить, только чем конкретно сам не понял, за один сеанс увеличил таймауты dicom сервисов с 45000 до 75000, в настройках epo: вариант поставки стояло krdmaxima, поставил krdoko, и через ssms удалил неиспользуемые сервисы dicom (2шт.), перезагрузил машину, 1 снимок уходит за 8 сек., два снимка за 13
Дата: Пятница, 31.Мар.2017, 17:56 | Сообщение # 45
Участник
У вас сообщений: 50
Инженер по рентген оборудованию
OFFлайн
Российская Федерация
Кувандык
Продолжу свою тему с медленной отправкой пациентов, так вот с помощью SQL Profiler удалось обнаружить что SQL зависает на процедуре:
Код
SELECT [Extent1].[Id] AS [Id], [Extent1].[OpticalParameterId] AS [OpticalParameterId], [Extent1].[SeriesId] AS [SeriesId], [Extent1].[PhysicianId] AS [PhysicianId], [Extent1].[ContrastId] AS [ContrastId], [Extent1].[DicomUid] AS [DicomUid], [Extent1].[Uid] AS [Uid], [Extent1].[SopClassUid] AS [SopClassUid], [Extent1].[FileName] AS [FileName], [Extent1].[FocalDistance] AS [FocalDistance], [Extent1].[EntranceDose] AS [EntranceDose], [Extent1].[Dose] AS [Dose], [Extent1].[ExternalFilm] AS [ExternalFilm], [Extent1].[ImagePreview] AS [ImagePreview], [Extent1].[FileSize] AS [FileSize], [Extent1].[DateCreation] AS [DateCreation], [Extent1].[Status] AS [Status], [Extent1].[DoseIndicator] AS [DoseIndicator], [Extent1].[DoseIndicatorDeviation] AS [DoseIndicatorDeviation], [Extent1].[DoseIndicatorResult] AS [DoseIndicatorResult], [Extent1].[ImageType] AS [ImageType], [Extent1].[MultiframeTypeId] AS [MultiframeTypeId], CAST( [Extent1].[FrameRate] AS tinyint) AS [C1], [Extent1].[CurveTypeId] AS [CurveTypeId], [Extent1].[HightQuality] AS [HightQuality], [Extent1].[IsFilm] AS [IsFilm], [Extent1].[Kv] AS [Kv], [Extent1].[Ma] AS [Ma], [Extent1].[Ms] AS [Ms], [Extent1].[Mas] AS [Mas], [Extent1].[PostProccesTlsPath] AS [PostProccesTlsPath], [Extent1].[MaskFrameNumber] AS [MaskFrameNumber], [Extent1].[IsSubtractionEnabled] AS [IsSubtractionEnabled], [Extent1].[XSubtractionShift] AS [XSubtractionShift], [Extent1].[YSubtractionShift] AS [YSubtractionShift], [Extent1].[Landmark] AS [Landmark], [Extent1].[Comment] AS [Comment], [Extent1].[TomoLayerHeight] AS [TomoLayerHeight], [Extent1].[ImagePixelSpacing] AS [ImagePixelSpacing], [Extent1].[FluoroKv] AS [FluoroKv], [Extent1].[FluoroMa] AS [FluoroMa], [Extent1].[TubeHeat] AS [TubeHeat], [Extent1].[ReopField] AS [ReopField], [Extent2].[Id] AS [Id1], [Extent2].[XOffset] AS [XOffset], [Extent2].[YOffset] AS [YOffset], [Extent2].[Scale] AS [Scale], [Extent2].[CircleShutterId] AS [CircleShutterId], [Extent2].[RectangleShutterId] AS [RectangleShutterId], [Extent2].[Window] AS [Window], [Extent2].[Level] AS [Level], [Extent2].[Gamma] AS [Gamma], [Extent2].[LLateralityIsVisible] AS [LLateralityIsVisible], [Extent2].[RLateralityIsVisible] AS [RLateralityIsVisible], [Extent2].[LLateralityX] AS [LLateralityX], [Extent2].[LLateralityY] AS [LLateralityY], [Extent2].[RLateralityX] AS [RLateralityX], [Extent2].[RLateralityY] AS [RLateralityY], [Extent2].[LateralityAngle] AS [LateralityAngle], [Extent2].[LLateralityTranslatedX] AS [LLateralityTranslatedX], [Extent2].[LLateralityTranslatedY] AS [LLateralityTranslatedY], [Extent2].[RLateralityTranslatedX] AS [RLateralityTranslatedX], [Extent2].[RLateralityTranslatedY] AS [RLateralityTranslatedY], [Extent2].[ShutterAngle] AS [ShutterAngle], [Extent2].[Rotate] AS [Rotate], [Extent2].[Flip] AS [Flip], [Extent2].[IsInverse] AS [IsInverse], [Extent2].[Substraction] AS [Substraction], [Extent2].[MaskFrameNumber] AS [MaskFrameNumber1], [Extent2].[HorizontalPixelShift] AS [HorizontalPixelShift], [Extent2].[VerticalPixelShift] AS [VerticalPixelShift], [Extent2].[Landmark] AS [Landmark1], [Extent2].[OverlayData] AS [OverlayData], [Extent3].[Id] AS [Id2], [Extent3].[X] AS [X], [Extent3].[Y] AS [Y], [Extent3].[Radius] AS [Radius], [Extent3].[Color] AS [Color], [Extent3].[XTranslated] AS [XTranslated], [Extent3].[YTranslated] AS [YTranslated], [Extent4].[Id] AS [Id3], [Extent4].[X] AS [X1], [Extent4].[Y] AS [Y1], [Extent4].[Width] AS [Width], [Extent4].[Height] AS [Height], [Extent4].[Color] AS [Color1], [Extent4].[XTranslated] AS [XTranslated1], [Extent4].[YTranslated] AS [YTranslated1], [Extent4].[WidthTranslated] AS [WidthTranslated], [Extent4].[HeightTranslated] AS [HeightTranslated] FROM [dbo].[Image] AS [Extent1] INNER JOIN [dbo].[ImageOpticalParameters] AS [Extent2] ON [Extent1].[OpticalParameterId] = [Extent2].[Id] LEFT OUTER JOIN [dbo].[CircleShutter] AS [Extent3] ON [Extent2].[CircleShutterId] = [Extent3].[Id] LEFT OUTER JOIN [dbo].[RectangleShutter] AS [Extent4] ON [Extent2].[RectangleShutterId] = [Extent4].[Id]
Методом тыка нашёл что во всей процедуре тормозит процесс [Extent1].[ImagePreview] AS [ImagePreview] в базе находится тут dbo.image.ImagePreview, у него тип данных verbinary(MAX) и размер каждой превьюшки 35кБ. Каким образом можно это оптимизировать или отключить эти превью? Или может ещё что-то можно сделать?
Дата: Пятница, 31.Мар.2017, 19:25 | Сообщение # 46
Участник
У вас сообщений: 173
ПО рентгеновских аппаратов
OFFлайн
Российская Федерация
Мой город не дом и не улица...
ЦитатаTechnoman ()
в базе находится тут dbo.image.ImagePreview
Собственно из-за этого все проблемы, Вы совершенно правы. И если посмотреть в SQL Profiler, отбор ВСЕЙ этой таблички, при отправке каждого файла, происходит ШЕСТЬ раз. А поскольку исследований и снимков уже много, то и объем памяти для этого нужен не маленький. Как уже говорил надо чистить базу до уровня снимков, но не выше.
Дата: Суббота, 01.Апр.2017, 11:05 | Сообщение # 49
Участник
У вас сообщений: 173
ПО рентгеновских аппаратов
OFFлайн
Российская Федерация
Мой город не дом и не улица...
ЦитатаIluha92 ()
А она наверное на серваке лежит, в базе ELPACS20Preview - не?
Нет! Ещё раз коротко: У Электрона с ~2012 года базы лаборанта и врача (сервер) независимы, общаются по протоколу DICOM. И каждый софт обращается к своей базе и ничего не знает про другую. К слову импортные аппараты так давно живут! Нужная таблица находится в в базе WGD! Имя таблицы: Image. И в ней поле ImagePreview. Но очищать поле нельзя, ЕПО будет вываливаться с ошибкой, только удалять записи из таблицы.
Дата: Суббота, 01.Апр.2017, 15:02 | Сообщение # 51
Участник
У вас сообщений: 173
ПО рентгеновских аппаратов
OFFлайн
Российская Федерация
Мой город не дом и не улица...
ЦитатаTechnoman ()
Что Вы имеете ввиду под "удалять записи из таблицы"
Именно удаление и ничего больше. Есть такая команда в T-SQL: DELETE. Только делать это надо со знаем структуры базы, так как есть связи между таблицами.
ЦитатаTechnoman ()
удалять количество пациентов?
Вы имели ввиду уменьшать? - НЕТ! Как я уже писал, уровни выше снимков не трогать, иначе лаборанты вас "проклянут". Т.е. ни серии, ни исследования, ни пациентов не трогаем!
Дата: Воскресенье, 09.Июл.2017, 12:18 | Сообщение # 52
Заглянувший
У вас сообщений: 3
инженер
OFFлайн
Российская Федерация
Tambov
Подскажите, пожалуйста, на компе стоит PickSys, диск D полностью заполнен, необходимо перебросить часть данных на другой жесткий диск, примерно 500 ГБ. Можно ли из папки Medium переместить все данные на другой диск? Что делать с папкой Backup, можно ли ее очистить?
Дата: Вторник, 06.Апр.2021, 23:47 | Сообщение # 54
Стажер
У вас сообщений: 16
Инженер
OFFлайн
Российская Федерация
Сыктывкар
Здравствуйте. Питающее Indico, аппарат крт, 2017 г.в. Ошибка генератора 41. По талмутам пишет что неинициализирована динамическая библиотека. Как её инициализировать?