Wypowiedzi
-
Masz może skrypt do tej bazy i przykładowe dane testowe? Chętnie bym Ci pomógł w optymalnej konstrukcji zapytań, ale nie che mi się za bardzo klepać SQL-a by stworzyć ową bazkę.
Pozdrawiam -
Witajcie,
Mam sporą aplikację, w której Model, Prezenter, Widok i inne są ulokowane w różnych ClassLibrary. Chciałbym zrobić diagram klas dzięki "View Class Diagram", ale nie wiem co zrobić by Visual przy jego generowaniu pokazywał mi powiązania z innych bibliotek. Jeżeli kliknę na Presenters ( View Class Diagram ) to pokazuje same klasy prezenterów bez powiązań - co jest logiczne. Jakby wszystko było w jednym projekcie to nie było by problemu :) -
Sebastian O.:
Problem masz z długim czasem ustanawiania połączenia z bazą a nie wykonaniem zapytania.
Koncepcja na obejście problemu:
Ustanawianie połączenia z bazą robisz po wyświetleniu formularza czyli Ty uzupełniasz formularz a w tym czasie trwa łączenie z bazą. Zanim uzupełnisz to połączenie już będzie a dodanie rekordu zajmie sekundę.
Żeby tylko na koniec wypełniania formularza nie zobaczył timeout-a :) Wtedy cała praca w piach. Nie lepiej zrobić w jakimś labelu status np. Łączenie. Wtedy dajemy userowi pole manewru: albo iść i robić kawe, pogadać z kumplami w biurze, albo przystąpić do wypełniania formularza. -
"coraz więcej środowisk zaczyna implementować wzorzec MVC"
Ja bym powiedział, że wychodzi coraz więcej frameworków, pozwalajacych tworzyc aplikacje według tego wzorca. W aplikacjach desktopowych MVP, w aplikacjach webowych MVC. -
Etam bez nerwów.
Szymonie:
" Nie ma sprawy, idę sobie w miejsce inne, gdzie dyskusje są o konkretach, a ludzie nie kpią sobie ze zwrócenia uwagi, że ktoś bzdury opowiada. "
Nie uważam by stwierdzenie " funkcja okna może przyspieszyć zapytanie " było bzdurą, aczkolwiek może zdanie nie do końca prawdziwe ( chyba, że nie do tego się odnosisz ) bo na pewno jest lepiej pisać zapytanie nie tracąc przy tym szczegółowości i obracać się w obszarze pobranego już zbioru.
Piotrze,
" Chciałem ustawić sobie motto "Nie działa, to użyj okna" i co teraz? "
Trzeba kombinować :) Okna, indexy to nie wszystko. Wszystko zależy od samego modelu bazy ( wszyscy to pewnie wiecie, ja tylko prostuje wypowiedź moją ).
Generalnie aby pisać wydajne zapytania trzeba myśleć w kategoriach zbiorów. Funkcja okna pomaga przejść pomiędzy myśleniem iteracyjnym a myśleniem w kategoriach zbiorów.
:)
Chętnie się też dowiem ( i nie tylko ja ) jak wy radzicie sobie ze spadkiem wydajności. Może napotkaliście jakiś ciekawy przypadek? Może wiecie dlaczego procedura składowana ( gdy zwolni po jakimś czasie ), przekompilowana ma swoją pierwotną wydajność ( może a nie musi )? Przeczytałem kiedyś coś takiego na innym forum.Ten post został edytowany przez Autora dnia 24.09.13 o godzinie 18:02 -
Źle się wyraziłem, Istotnie nie jest do lekarstwo na wszystko, ale naprawdę potrafi przyspieszyć niektóre zapytania. Oczywiście macie rację, że nie zawsze i wszędzie działa, ale warto moim zdaniem wspomnieć o tym czy chociażby uwzględnić w testach.
Piotrze "Nie działa, to użyj okna" co to znaczy? Jak nie działa select to użyj okna? :)
Pomijając już wydajność - znając funkcje okna i mając możliwość jej stosowania naprawdę możemy "uschludnić" zapytanie do bazy.Ten post został edytowany przez Autora dnia 23.09.13 o godzinie 18:34 -
W swoich testach możesz też gdzieś napisać coś o funkcji okna w mssql 2012. Naprawdę niezły tuning zapytania. Możesz też coś napisać o podzapytaniach które spowalniaja całego selecta ( wiadomo nie da sie ich uniknac wszedzie ), ale lekarstwem na to jest wlasnie funkcja okna ( i nie tylko na to ). Kazda baza ma swoje mechanizmy, ktore w lepszym lub gorszym stopniu pozwalaja przyspieszyc selecty. O indexach juz pewnie wiesz ( szybki select, ale wolny update ) - to tak z grubsza zalezy od indeksu ( a rodzaji ich jest sporo ).
-
Jak Ci średnio leży to czego oczekujesz? Mnie się podoba bardzo, może Oracle SQL Developer?
-
Jeżeli chodzi o Categories to możesz to zrobić w ten sposób, że jedna kategoria może mieć wiele podkategorii np:
CATEGORIES:
ID_CATEGORY
ID_PARENT
NAME
DESCRIBE
P.S W innych tabelkach dałeś nazwę w liczbie mnogiej, a kategorie nie :) Nazwy tabel zawsze dawaj w liczbie mnogiej ponieważ jest to zbiór krotek.
Pozdrawiam DS. -
Dziękuję. Czytałem o tym lecz wypadło mi z głowy "centralny subskrybent", działa jak talala :)
Dobranoc i pozdrawiam. -
Witam
Czy robił już ktoś coś w stylu ( wiele publikatorów jeden subskrybent )?? Zależy mi na tym aby dane ( konkretne ) z wielu baz były przesyłane gdzieś do centralnego punktu. Oczywiście można to zrobić LinkedServerem ale czy taka koncepcja jak wyżej jest możliwa? Jak na razie każdy publikator usuwa mi starą tabele i tworzy nową ( swoją, która publikuje co jest całkiem logiczne ). Lecz mam małe doświadczenie w tym także pytam. Baza : SQL Server 2008 R2
Pozdrawiam.Damian S edytował(a) ten post dnia 20.03.13 o godzinie 21:54 -
Witam
Chcę zrobić replikację transakcyjną z możliwością modyfikacji publikatora przez subskrybentów. Pominę fakt, że aby wszystko na początek ładnie się konfigurowało w windows 7 musiałem włączyć milion usług ( jakiś koszmar ), teraz hamuje mnie jeden problem. Publikator stoi na Windows 7 Starter, subskrybent na Windows 7 Home Premium. Nie można przekazać bazy i rekordów subskrybentowi bo na serwerze jest błąd:
The process could not read file " i tutaj ścieżka sieciowa ". Uprawienia są nadane ( już chyba wszystkim możliwym użytkownikom ) i dalej jest ten sam błąd. Specjalnie dałem patch-a do folderu na dysku sieciowym zgodnie z zaleceniem SQL Server aby oby dwa komputery mogły mieć do niej dostęp. -
W takim razie może być i po angielsku ( z nim nie jest źle ), ale początki płynniej zawsze czyta się ojczystym językiem :).
-
Co Ty jesteś w stanie z Helionu polecić? Nie chcę tylko SQL i T-SQL czy PL/SQL bo tego już używam dość długo także mam dobrą praktykę. Chodzi mi coś na temat rozproszonych baz - na początek po polsku. Szukałem książki Oracle - projektowanie rozproszonych baz danych, ale nie ma jej już w sprzedaży. Wszędzie brak druków.Damian S edytował(a) ten post dnia 18.03.13 o godzinie 13:21
-
Spotkałem się jeszcze z fragmentaryzacją, ale najczęściej w skryptach pojawiało się słowo fragmentacja, więc zwątpiłem.
Pozdrawiam. -
Witam
Otóż bawię się rozproszonymi bazami danych i mam problem. Na jednym PC tworzę tabele, insertuje do niej rekordy i potem robię z tego PC publikator i wskazuje jakie tabele mają być subskrybowane. Potem na tym samym PC tworze nowego subskrybenta i wskazuje na innym komputer w sieci lokalenej - jest ok wszystko dzieje się jak należy niby wszystko się powodzi , ale na tym drugim PC za chiny nie chce się pokazać tabela którą wskazałem wcześniej...
Edit:
Banalna sprawa panowie.. W logach znalazłem, że nie ma dostępu do migawki ( i podana lokalizacja ). Zmieniłem ją na inną i jest okej. Pamiętajcie aby migawkę zapisywać w odpowiedniej lokalizacji ( np. sieciowej ) nie na ślepo!
Pozdrawiam.Damian S edytował(a) ten post dnia 15.03.13 o godzinie 17:52 -
Tak jest, jak tylko spojrzałem na pierwsze lepsze schematy Master - Slave stwierdziłem, że przy dużej ilości subskrybentów nie będzie to efektywne rozwiązanie.
PozdrawiamDamian S edytował(a) ten post dnia 14.03.13 o godzinie 08:33 -
Poczytałem dziś na temat replikacji i podzielę się swoimi myślami aby zweryfikować ich poprawność. Szczerze powiedziawszy z tego co dziś wyczytałem Replikacja niesie za sobą o wiele więcej korzyści niż fragmentacja - ale nie o tym, za małe doświadczenie w RBD. Otóż mowa była o sklepie. Każdy serwer ( sklep ) zawiera taką samą strukturę bazy danych jak publikator ( ściślej tabele, które podlegają replikacji - ale nikt nie zabroni każdej replikować ). Jeżeli nastąpi INSERT w sklepie A ( lokalne zmiany ) to takie same następują na serwerze publikacyjnym, a ten co jakiś czas rozdystrybuuje aktualne dane do węzłów Slave ( sam jest Master-em ). Oczywiście każdy Slave zawiera LinkedServer do publikatora.
Pozdrawiam.Damian S edytował(a) ten post dnia 12.03.13 o godzinie 22:29 -
Czy można łączyć replikacje z fragmentacją danych jednocześnie?? Że niektóre tabele źródłowe będą tylko replikowane a reszta poddana fragmentacji.
- 1
- 2