Cześć,
W pracy mamy kilka systemów, jeden z nich opiera się na bazie danych Oracle, inny na SQL Server. Ja pracuję na tym z SQL Server, jestem zwykłym programistą, bez fajerwerków. Potrzebowałem pewnych danych z systemu Oracle, do którego nie mam żadnego dostępu, a więc nie znam jego architektury. Lider zespołu pracującego przy tym Oracle wystawił dla mnie widok, który ściągam sobie po Linked Server. Cała operacja trwa nieco ponad 4:30 minuty. Spytałem tą osobę, czy nie mogłaby trochę zoptymalizować tego widoku, bo to spory czas mi się wydaje jak na 25 tysięcy wierszy z 10 kolumnami. Zostałem delikatnie wyśmiany, bo:
- on myślał, że 4:30 to 4h 30min a nie 4min 30 sek,
- jak zamierzam ściągać dane z tego widoku raz na dobę, to szkoda zachodu, bo włożona praca w optymalizację nie opłaci się wystarczająco
- nawet jakby go zoptymalizował, to i tak będzie niewielka różnica
- twierdzi, że jemu ten widok działa około 3 minut, reszta czasu pożera przesłanie danych po linked serverze
Ogólnie to on pracuje dużo więcej czasu ode mnie i jak wspomniałem jest liderem innego zespołu, ja pracuję dopiero od dwóch lat. Poczułem się potraktowany jak jakiś młokos, który nie ma pojęcia o rzeczywistości. Moje pytanie do Was - co o tym sądzicie? Bo ja nie wiem jak wygląda ta baza Oracle, ale tak długi czas wykonywania widoku dla zwrócenia 25k wierszy świadczy dla mnie o tym, że architektura tej bazy danych jest słabo przemyślana, a mimo wszystko sądzę, że jak się zechce, to niewielkim nakładem pracy można jednak dużo optymalniej napisać ten widok, jakąkolwiek kupę by tam mieli. Jak myślicie? Da się usprawiedliwić takie działanie? Jest to normalne, a ja jeszcze mało widziałem?