Autor Wątek: Mały serwer pod subiekta  (Przeczytany 3420 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline olaf_vima

  • Nowy użytkownik
  • *
  • Wiadomości: 7
  • Reputacja +0/-0
  • Wersja programu: Najnowsza
Mały serwer pod subiekta
« dnia: Kwiecień 16, 2021, 20:15:45 »
Muszę zmienić komputer, który do tej pory pełnił funkcję serwera.
Mam 3  bazy, około 15 użytkowników i będzie 7 użytkowników pulpitu zdalnego.
Sql express, bazy: 0,5 , 1 , i 1,5 GB
Dokumentów nie ma ogromnej ilości dziennie na tych 3 bazach jest ok max 70 dokumentów: ZK,FS,FZ
Dodatkowo serwer będzie udostępniał foldery użytkownikom ale to nie będzie mocne obciążenie dla sprzętu.
Poniżej specyfikacja, którą przygotował mi informatyk, który nas obsługuje informatycznie
Czy to wystarczy i ewentualnie zabezpieczy na wzrost obciążenia max 20 % ?
Czy czegoś brakuje w tej specyfikacji ?
Procesor Intel Xeon E-2236
32 GB ram ecc
2 dyski spięte w raid1 pod win serwer - Samsung PM983 960GB NVMe PCIe3x4 V4 M.2
Windows Server Standard 2019 16 Core
Windows Server CAL 2019 Polish 5 Clt User CAL - 4 szt
Windows Remote Desktop Service 2019 Single Open - 7 szt
Całość niecałe 20k

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17054
  • Reputacja +798/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Mały serwer pod subiekta
« Odpowiedź #1 dnia: Kwiecień 17, 2021, 16:02:30 »
Ten "informatyk" chyba nie pomaga wam przy programach Insertu, gdyż potencjału tego sprzętu nie wykorzystają programy Insertu - jest z dość dużym zapasem... Między innymi są dyski SSD z najwyższej półki, a nie ma tradycyjnych dysków HDD na foldery tymczasowe, lokalne kopie, itp... Nie ma dysku sieciowego na kopie bezpieczeństwa (chyba, ze już jest)... Moim zdaniem można zdecydowanie taniej i równie dobrze (nie oczekuj tylko wskazania konkretnych rozwiązań).
Daniel, Białystok.

Offline olaf_vima

  • Nowy użytkownik
  • *
  • Wiadomości: 7
  • Reputacja +0/-0
  • Wersja programu: Najnowsza
Odp: Mały serwer pod subiekta
« Odpowiedź #2 dnia: Kwiecień 17, 2021, 21:32:13 »
To prawda nie pomaga za bardzo, mamy serwisanta ale co do wyboru sprzętu to bardziej ufam jemu.
Co do hdd to tak zostaną przełożone ze starego komputera bo są tam 2x 3GB duplikowane.
Kopie są robione do chmury, lokalanie i na ftp, tu nie może być wpadki.
Ilości dokumentów nie doszacowałem ale wolę mieć zapas bo to inwestycja na ok 12 lat
Dyski chciałem mieć m2 nie ze względu na ich szybkość bo w codziennej pracy nie będzie pewnie to zauważalne względem zwykłych ssd ale to zaczyna być standard i trza iść w tym kierunku.
Swoją drogą jak ja się wkurzałem jak kilka lat temu większość np: laptopów miała w standardzie hdd jak dysk ssd 120 GB kosztował ok 200 zł.
Minęło parę lat i hdd w odwrocie. Nawiązuję do dysków SAS vs np: m2 nvme, które z uporem maniaka są montowane właśnie w takich serwerach.
Pomijam fakt łatwiejszego odzyskiwania utraconych danych ale chyba nie ma argumentów na obronę ich stosowania.
Czy serwer będzie kosztował 4 czy 7 k to w całkowitej inwestycji najdroższy jest soft niestety. 

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17054
  • Reputacja +798/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Mały serwer pod subiekta
« Odpowiedź #3 dnia: Kwiecień 17, 2021, 23:02:16 »
To prawda nie pomaga za bardzo, mamy serwisanta ale co do wyboru sprzętu to bardziej ufam jemu.

Jak widać nie ufasz żadnemu ;)

Ilości dokumentów nie doszacowałem ale wolę mieć zapas bo to inwestycja na ok 12 lat

Sprzęt na 12 lat ? :o Sprzęt się zużywa, zwiększa się ryzyko awarii, z innej strony technologia się rozwija, zmieniają się potrzeby - ja bym planował na 5-7 lat (gwarancja + jakiś margines), wydał połowę budżetu, a później w zależności do potrzeb dobrał nowy sprzęt...

Dyski chciałem mieć m2 nie ze względu na ich szybkość bo w codziennej pracy nie będzie pewnie to zauważalne względem zwykłych ssd ale to zaczyna być standard i trza iść w tym kierunku.

Mylisz złącze z interfejsem - na m2 były / są dyski z interfejsem SATA.

Swoją drogą jak ja się wkurzałem jak kilka lat temu większość np: laptopów miała w standardzie hdd jak dysk ssd 120 GB kosztował ok 200 zł.

Nie rozumiem - wystarczyło dobrze wybierać sprzęt, ja 10 lat kupiłem sobie laptopa z dyskiem SSD, a że większość użytkowników podejmuje decyzje na podstawie swojej niewiedzy / przekonania, że znają się na sprzęcie komputerowym to producenci / sprzedawcy to wykorzystują, aby sprzedać... Ciągle dokładam pamięć RAM i zmieniam dyski HDD na SSD, w tym sprzęcie, który ma 1-2 lata.

Minęło parę lat i hdd w odwrocie.

No nie, hdd są w odwrocie od momentu pojawienia się SSD tylko sprzęt jest wyceniany w USD, a my ciągle zarabiamy w PLN i koszty opóźniły / opóźniają tę zmianę - nowe rozwiązania serwerowe ciągle są "uznawane" za "za drogie" przez większość firm.

Nawiązuję do dysków SAS vs np: m2 nvme, które z uporem maniaka są montowane właśnie w takich serwerach.

Jak wyżej, wystarczy wybierać właściwe rozwiązania, też nie rozumiem wielu gotowych konfiguracji serwerów, ale po prostu z nich nie korzystam / dostosowuję do swoich potrzeb, niestety często takie spotykam u klientów.

Pomijam fakt łatwiejszego odzyskiwania utraconych danych ale chyba nie ma argumentów na obronę ich stosowania.

Nie wiem co masz na myśli, dyski SSD są już tak długo na rynku, że są już narzędzia, programy i firmy, które bez problemu odzyskują dane.

Czy serwer będzie kosztował 4 czy 7 k to w całkowitej inwestycji najdroższy jest soft niestety.

No nie, tutaj też jest kilka możliwości i można sporo zaoszczędzić w stosunku do Twojej propozycji.
Daniel, Białystok.

Offline olaf_vima

  • Nowy użytkownik
  • *
  • Wiadomości: 7
  • Reputacja +0/-0
  • Wersja programu: Najnowsza
Odp: Mały serwer pod subiekta
« Odpowiedź #4 dnia: Kwiecień 18, 2021, 00:33:35 »
Widzę, że kolega to taki forumowicz, co wyłapie najmniejszą nieścisłość i wytknie najmniejszy błąd.

Kontrola to nie brak zaufania
Nie zgadzam się totalnie. Sam mam w domu komputer złożony w 2012 r. na I5 3570 i absolutnie nie odczuwam potrzeby wymiany na nowy.
To nie czasy 286, 386, 486 że po 2-3 latach już nie byłeś w stanie czegoś uruchomić lub działało niedopuszczalnie wolno.
Nic nie mylę co do dysków, oczywiście chodziło mi o sposób ich podłączenia czyli ssd sata III vs ssd m2
Interfejs pierwszy osiągnął już maximum możliwości dlatego powstały dyski na złączu wykorzystującym wyższe transfery i o to mi chodziło co kolega widać, że zrozumiał ale swoje 5 groszy musiał dodać.
Dalej to już nie widzę sensu komentować poza odzyskiwaniem danych z hdd vs ssd co potwierdza większą trudność ( i $ ) opinia np: firmy Ontrack
Po to powstał post abym ja i ewentualnie inni w podobnej sytuacji mieli większą świadomość wyboru.

Jeżeli to nie problem to proszę wskaż te oszczędności, które mogę uzyskać na innym rozwiązaniu niż Win serv i jego zdalnych pulpitach

Offline the_foe

  • Nowy użytkownik
  • *
  • Wiadomości: 15
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.25
Odp: Mały serwer pod subiekta
« Odpowiedź #5 dnia: Maj 28, 2021, 18:16:41 »
specyfikacja wydaje się przysadzista, ale jesli to jest pod GT to chyba zaden zapas nie jest bezsensowny. Nie wiem jak inne produkty Insertu, bo nie uzywam innego niz GT + dodatki. No i cóż, za tym produktem wleczą się grzechy ciagłego nadbudowywania i przerzucania wszystkiego na bazę - bo tak łatwiej. IMO traktują normalizację akademicko, a przy sytuacji kiedy, w stosunku do odczytu, zapis jest rzadki, aż się prosi o jakąś zgrabną redundancję. Ergo: uważam, ze ten specs jest ok.

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17054
  • Reputacja +798/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Mały serwer pod subiekta
« Odpowiedź #6 dnia: Maj 29, 2021, 18:41:48 »
specyfikacja wydaje się przysadzista, ale jesli to jest pod GT to chyba zaden zapas nie jest bezsensowny.

Jeśli ktoś uważa, że wydanie o 5-10k netto więcej na sprzęt, który nie zostanie wykorzystany ma sens to ja z tym nie dyskutuję do momentu jeśli również chętnie będą wydawane środki na usługi serwisowe polegające na bieżącym monitorowaniu bazę danych i strojenie / optymalizację w przypadku pojawiania się problemów wydajnościowych czy usługi programistyczne i tworzenie dodatkowych rozwiązań usprawniających codzienną pracę... Niestety większość żyje błędnym przekonaniu, że sprzętem rozwiąże się wszystkie problemy wydajnościowe, a optymalizacja baz danych to magia (nie istnieje).

Nie wiem jak inne produkty Insertu, bo nie uzywam innego niz GT + dodatki. No i cóż, za tym produktem wleczą się grzechy ciagłego nadbudowywania i przerzucania wszystkiego na bazę - bo tak łatwiej. IMO traktują normalizację akademicko, a przy sytuacji kiedy, w stosunku do odczytu, zapis jest rzadki, aż się prosi o jakąś zgrabną redundancję.

Proszę o kilka przykładów, wygłaszanie takich tez bez żądnych argumentów nie jest poważne.

Polecam też zajrzeć do nexo i zobaczyć jaki efekt dało przeniesienie większości logiki z bazy danych do programu... Problematyczne wydajnościowo moduły/funkcjonalności są przenoszone "do bazy danych".
Daniel, Białystok.

Offline Artwi

  • Aktywny użytkownik
  • ***
  • Wiadomości: 187
  • Reputacja +3/-0
  • Wersja programu: Insert GT aktualny
Odp: Mały serwer pod subiekta
« Odpowiedź #7 dnia: Maj 31, 2021, 10:44:30 »
Wydaje mi się, że przy miażdżącej większości zastosowań InsERTa ta konfiguracja to "overkilling". Ale przecież można na obecnym sprzęcie sprawdzić w systemie obciążenie CPU, pamięci, dysku i sieci oraz zalogować się przez SSMS na MS SQL i tam zobaczyć na obciążenie operacjami i będzie wiadomo czy są jakieś wąskie gardła. Moim zdaniem nie będzie, ale jeśli ktoś na tym InsERT prowadzi jakiś np. sklep internetowy i do bazy wrzuca fotki wysokiej rozdzielczości albo wali skany dokumentów, to można zarżnąć nawet wypasiony serwer, bo bazy GT nie doczekały się wykorzystania FILESTREAM dostępnego od MS SQL 2008 i wszystko walą do bazy, zamiast trzymać na dysku.
Mając na uwadze, że ewentualna krytyka może być, tak musimy zrobić, żeby tej krytyki nie było, tylko aplauz i zaakceptowanie.

Offline the_foe

  • Nowy użytkownik
  • *
  • Wiadomości: 15
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.25
Odp: Mały serwer pod subiekta
« Odpowiedź #8 dnia: Czerwiec 06, 2021, 16:18:15 »
specyfikacja wydaje się przysadzista, ale jesli to jest pod GT to chyba zaden zapas nie jest bezsensowny.

Jeśli ktoś uważa, że wydanie o 5-10k netto więcej na sprzęt, który nie zostanie wykorzystany ma sens to ja z tym nie dyskutuję do momentu jeśli również chętnie będą wydawane środki na usługi serwisowe polegające na bieżącym monitorowaniu bazę danych i strojenie / optymalizację w przypadku pojawiania się problemów wydajnościowych czy usługi programistyczne i tworzenie dodatkowych rozwiązań usprawniających codzienną pracę... Niestety większość żyje błędnym przekonaniu, że sprzętem rozwiąże się wszystkie problemy wydajnościowe, a optymalizacja baz danych to magia (nie istnieje).

Nie wiem jak inne produkty Insertu, bo nie uzywam innego niz GT + dodatki. No i cóż, za tym produktem wleczą się grzechy ciagłego nadbudowywania i przerzucania wszystkiego na bazę - bo tak łatwiej. IMO traktują normalizację akademicko, a przy sytuacji kiedy, w stosunku do odczytu, zapis jest rzadki, aż się prosi o jakąś zgrabną redundancję.

Proszę o kilka przykładów, wygłaszanie takich tez bez żądnych argumentów nie jest poważne.

Polecam też zajrzeć do nexo i zobaczyć jaki efekt dało przeniesienie większości logiki z bazy danych do programu... Problematyczne wydajnościowo moduły/funkcjonalności są przenoszone "do bazy danych".


Wczytanie widoku ostatnich 30 dni faktur zajmuje u mnie 18.5 sek.
zczytanie tych samych danych bezpośrednio i wyplucie ze zmiennej to 3 sek:
"SELECT td.dok_DataWyst AS DATA, td.dok_NrPelny AS NUMER, te.adr_Nazwa AS KONTRAHENT, td.dok_WartTwBrutto AS WARTOSC, td.dok_DoDokNrPelny AS DOKUMENT_POW, tda.pwd_Tekst01 AS ZAMOWIENIE FROM dok__Dokument AS td JOIN adr__Ewid AS te ON td.dok_PlatnikId=te.adr_IdObiektu AND adr_TypAdresu=1 JOIN pw_Dane as tda ON tda.pwd_IdObiektu=td.dok_Id WHERE dok_typ='2' AND DATEDIFF(day, dok_DataWyst, GETDATE())<30 ORDER BY td.dok_Id DESC"Da się to jeszcze zomptymalizować, bo wczytanie do tablicy danych to dosłownie ułamki sekundy.
Co robi subiekt? Trudno powiedzieć, ale raczej coś głupiego, jak np. wczytywanie WSZYSTKICH produktów przypisanych do faktur, mimo, ze to nie jest potrzebne, no, ale dzieki temu mamy "instykt", dzieki któremu wyszukiwanie po produktach trwa tyle co nic, zamiast 0.6 sek :)))

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17054
  • Reputacja +798/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Mały serwer pod subiekta
« Odpowiedź #9 dnia: Czerwiec 06, 2021, 17:12:40 »
Wczytanie widoku ostatnich 30 dni faktur zajmuje u mnie 18.5 sek.

To nie jest normalne, ale nie jest też powszechne, było kilka optymalizacji w tym obszarze (tak się składa, że akurat z mojej inicjatywy - modyfikacja filtru okresu oraz dodatkowy indeks na tabeli oznaczeń dla JPK VAT, chociaż ten nie jest jeszcze optymalny i może powodować problemy z ładowaniem listy dokumentów), osobiście od dawna nie spotkałem się z problemami w tym obszarze, u naszych klientów wystawiających > 1k faktur dziennie lista ta za taki okres ładuje się w okolicach 1s.

zczytanie tych samych danych bezpośrednio i wyplucie ze zmiennej to 3 sek:
"SELECT td.dok_DataWyst AS DATA, td.dok_NrPelny AS NUMER, te.adr_Nazwa AS KONTRAHENT, td.dok_WartTwBrutto AS WARTOSC, td.dok_DoDokNrPelny AS DOKUMENT_POW, tda.pwd_Tekst01 AS ZAMOWIENIE FROM dok__Dokument AS td JOIN adr__Ewid AS te ON td.dok_PlatnikId=te.adr_IdObiektu AND adr_TypAdresu=1 JOIN pw_Dane as tda ON tda.pwd_IdObiektu=td.dok_Id WHERE dok_typ='2' AND DATEDIFF(day, dok_DataWyst, GETDATE())<30 ORDER BY td.dok_Id DESC"

Ale czego to ma być przykład, przecież to NIE są te same dane, które są ładowane do listy w programie ? :o A program jest jeden dla wszystkich użytkowników, a użytkownicy programów oczekują wyświetlania jak największej ilości informacji... Chcesz mieć programy dostosowany do swoich potrzeb to musisz sięgnąć po Navireo, tam możesz zmodyfikować listę tak, jak potrzebujesz - pobierać tylko te dane, które potrzebujesz.

Poza tym skąd jest to zapytanie, gdyż filtr okresu z bardzo starej wersji programu, sprzed wspomnianych wyżej optymalizacji i zawiera "szkolny" błąd (porównanie z wynikiem funkcji), który uniemożliwia skorzystanie z indeksu po dacie i tym samym powoduje nieoptymalne wykonanie zapytania, optymalny / poprawiony warunek wygląda tak:

Cytuj
WHERE (dok_Typ = 2 or dok_Typ = 4 or dok_Typ = 62) AND Dok.dok_MagId = 1 and dok_DataWyst>= '20210507' AND '20210606' >= dok_DataWyst

--

Da się to jeszcze zomptymalizować, bo wczytanie do tablicy danych to dosłownie ułamki sekundy.
Co robi subiekt? Trudno powiedzieć, ale raczej coś głupiego, jak np. wczytywanie WSZYSTKICH produktów przypisanych do faktur, mimo, ze to nie jest potrzebne,...

Co to w ogóle za pytanie, zgadywanie i bzdurne domysły ? :o Przecież dokładnie wiadomo co robi Subiekt, wystarczy zajrzeć  do komunikacji z serwerem SQL- nie robi niczego takiego jak opisujesz jak wczytywanie pozycji dokumentów... Subiekt nie jest samodzielną aplikacją, dane przechowuje w innej aplikacji jaką jest serwer SQL i równie ważne, a zwykle ważniejsze jest to co robi serwer SQL, w jakiej jest edycji, na jakim sprzęcie pracuje.

...no, ale dzieki temu mamy "instykt", dzieki któremu wyszukiwanie po produktach trwa tyle co nic, zamiast 0.6 sek :)))

Kolejne bzdury bez żadnego potwierdzenia - wyświetlanie listy dokumentów (bez filtrowania) NIE ma nic wspólnego z mechanizmem Instynktu, filtrowanie w GT jest przecież realizowane po stronie bazy danych poprzez dynamiczny SQL, a nie po stronie programu - dopiero w momencie włączenia filtru jest modyfikowane zapytanie listy tak, aby sięgało poprzez pozycje dokumentu do słownika InsTYNKT'u.

Wcześniej zwróciłem uwagę, że:

Proszę o kilka przykładów, wygłaszanie takich tez bez żadnych argumentów nie jest poważne.

Już wiele raz pisałem na tym forum - na prawdę rozumiem, że nie każdy musi się znać na wszystkim, jednak kompletnie nie rozumiem, dlaczego ktoś zabiera się / wypowiada na tematy, na których się nie zna, dlaczego tak łatwo i z taką pewnością opisuje kompletnie błędne wnioski zamiast wcześniej dowiedzieć się / założyć, że jednak czego nie wie lub najzwyczajniej w świecie coś przeoczył ?
Daniel, Białystok.

Offline the_foe

  • Nowy użytkownik
  • *
  • Wiadomości: 15
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.25
Odp: Mały serwer pod subiekta
« Odpowiedź #10 dnia: Czerwiec 09, 2021, 21:33:13 »
Cytuj
To nie jest normalne, ale nie jest też powszechne, było kilka optymalizacji w tym obszarze (tak się składa, że akurat z mojej inicjatywy - modyfikacja filtru okresu oraz dodatkowy indeks na tabeli oznaczeń dla JPK VAT, chociaż ten nie jest jeszcze optymalny i może powodować problemy z ładowaniem listy dokumentów), osobiście od dawna nie spotkałem się z problemami w tym obszarze, u naszych klientów wystawiających > 1k faktur dziennie lista ta za taki okres ładuje się w okolicach 1s.

U mnie dzień działa bez żadnego zauważalnego opóżnienia, ale to jest maks 2-3 tysiace faktur. Przy tygodniu już siada na coś koło 2-3 sek. Przy 30 dniach wspomniane ok 18 sek.

Cytuj
Ale czego to ma być przykład, przecież to NIE są te same dane, które są ładowane do listy w programie ? :o A program jest jeden dla wszystkich użytkowników, a użytkownicy programów oczekują wyświetlania jak największej ilości informacji... Chcesz mieć programy dostosowany do swoich potrzeb to musisz sięgnąć po Navireo, tam możesz zmodyfikować listę tak, jak potrzebujesz - pobierać tylko te dane, które potrzebujesz.

No to to jest truzim i przecież to ja pisałem, ze problemem jest to, ze dane które otrzymuje i które jako jedyne widzę, nie są wyłącznymi o które program pyta. Takie działanie to amartoszczyna nieco.
Cytuj
Poza tym skąd jest to zapytanie, gdyż filtr okresu z bardzo starej wersji programu, sprzed wspomnianych wyżej optymalizacji i zawiera "szkolny" błąd (porównanie z wynikiem funkcji), który uniemożliwia skorzystanie z indeksu po dacie i tym samym powoduje nieoptymalne wykonanie zapytania, optymalny / poprawiony warunek wygląda tak:

WHERE (dok_Typ = 2 or dok_Typ = 4 or dok_Typ = 62) AND Dok.dok_MagId = 1 and dok_DataWyst>= '20210507' AND '20210606' >= dok_DataWyst

skąd? co to za głupie pytanie, jest zapytanie, które napisałem, jako przykład i benchmark dla informacji z widoku, który stosuje. W moim przyapdku Twoja propozycja nie ma tu znaczenia, mam jeden magazyn i operuje tylko na FS w tym widoku, a filtr daty jest dla silnika SQL tożsamy, choć mój o wiele bardziej czytelny.
--


Cytuj
Co to w ogóle za pytanie, zgadywanie i bzdurne domysły ? :o Przecież dokładnie wiadomo co robi Subiekt, wystarczy zajrzeć  do komunikacji z serwerem SQL- nie robi niczego takiego jak opisujesz jak wczytywanie pozycji dokumentów... Subiekt nie jest samodzielną aplikacją, dane przechowuje w innej aplikacji jaką jest serwer SQL i równie ważne, a zwykle ważniejsze jest to co robi serwer SQL, w jakiej jest edycji, na jakim sprzęcie pracuje.



Cytuj
Kolejne bzdury bez żadnego potwierdzenia - wyświetlanie listy dokumentów (bez filtrowania) NIE ma nic wspólnego z mechanizmem Instynktu, filtrowanie w GT jest przecież realizowane po stronie bazy danych poprzez dynamiczny SQL, a nie po stronie programu - dopiero w momencie włączenia filtru jest modyfikowane zapytanie listy tak, aby sięgało poprzez pozycje dokumentu do słownika InsTYNKT'u.

znowu truizmy, które nic nie wnoszą.

Cytuj
Już wiele raz pisałem na tym forum - na prawdę rozumiem, że nie każdy musi się znać na wszystkim, jednak kompletnie nie rozumiem, dlaczego ktoś zabiera się / wypowiada na tematy, na których się nie zna, dlaczego tak łatwo i z taką pewnością opisuje kompletnie błędne wnioski zamiast wcześniej dowiedzieć się / założyć, że jednak czego nie wie lub najzwyczajniej w świecie coś przeoczył ?
same2you

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17054
  • Reputacja +798/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Mały serwer pod subiekta
« Odpowiedź #11 dnia: Czerwiec 09, 2021, 21:53:57 »
Cytuj
Poza tym skąd jest to zapytanie, gdyż filtr okresu z bardzo starej wersji programu, sprzed wspomnianych wyżej optymalizacji i zawiera "szkolny" błąd (porównanie z wynikiem funkcji), który uniemożliwia skorzystanie z indeksu po dacie i tym samym powoduje nieoptymalne wykonanie zapytania, optymalny / poprawiony warunek wygląda tak:

WHERE (dok_Typ = 2 or dok_Typ = 4 or dok_Typ = 62) AND Dok.dok_MagId = 1 and dok_DataWyst>= '20210507' AND '20210606' >= dok_DataWyst

skąd? co to za głupie pytanie, jest zapytanie, które napisałem, jako przykład i benchmark dla informacji z widoku, który stosuje. W moim przyapdku Twoja propozycja nie ma tu znaczenia, mam jeden magazyn i operuje tylko na FS w tym widoku, a filtr daty jest dla silnika SQL tożsamy, choć mój o wiele bardziej czytelny.

To nie jest "moja propozycja" tylko obecne działanie programu po optymalizacji, gdyż wielu użytkowników z większą ilością dokumentów miało poważne problemy z wyświetlaniem list... Wyraźnie napisałem i starałem się wytłumaczyć / czegoś nauczyć, że to robi zasadniczą różnicę wydajnościową, a Ty kolejny raz powtarzasz bzdury i usilnie, publicznie potwierdzasz swoją niewiedzę - przyjrzyj się planom wykonania zapytań, porównaj je, kiedy zauważysz tę zasadniczą różnicę to możemy wrócić do rozmowy, bo na razie niestety ewidentnie nie rozumiesz o czym piszę i jeszcze nie potrafisz się do tego przyznać.
Daniel, Białystok.

Forum Użytkownikow Subiekt GT

Odp: Mały serwer pod subiekta
« Odpowiedź #11 dnia: Czerwiec 09, 2021, 21:53:57 »