{"id":12361,"date":"2024-11-21T14:07:28","date_gmt":"2024-11-21T13:07:28","guid":{"rendered":"https:\/\/pomoc.comarch.pl\/cee\/?post_type=ht_kb&#038;p=12361"},"modified":"2025-10-08T14:59:59","modified_gmt":"2025-10-08T12:59:59","slug":"optymalizacja-sekwencji-kolumn-optclmsqn","status":"publish","type":"ht_kb","link":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/documentation\/optymalizacja-sekwencji-kolumn-optclmsqn\/","title":{"rendered":"Optymalizacja kolejno\u015bci kolumn (optclmsqn)"},"content":{"rendered":"<h3 id=\"wprowadzenie\" id=\"wprowadzenie\" >Wprowadzenie<\/h3>\n<p>System zarz\u0105dzania baz\u0105 danych <em>Oracle<\/em> w szczeg\u00f3lno\u015bci rozdziela kolumny tabeli bazy danych na kilka blok\u00f3w w pewnych okoliczno\u015bciach. Oznacza to, \u017ce aby odczyta\u0107 wiersz, nale\u017cy odczyta\u0107 kilka blok\u00f3w. Kolumny, kt\u00f3re s\u0105 u\u017cywane szczeg\u00f3lnie cz\u0119sto, lepiej jest umie\u015bci\u0107 razem w pierwszym bloku, aby na przyk\u0142ad tylko jeden blok musia\u0142 zosta\u0107 odczytany dla zapyta\u0144. Za pomoc\u0105 narz\u0119dzia <em>optclmsqn<\/em> mo\u017cna zoptymalizowa\u0107 sekwencj\u0119 kolumn tabeli bazy danych, a tym samym skr\u00f3ci\u0107 czas wykonywania zapyta\u0144 do bazy danych.<\/p>\n<h3 id=\"grupa-docelowa\" id=\"grupa-docelowa\" >Grupa docelowa<\/h3>\n<ul>\n<li>Administratorzy systemu<\/li>\n<li>Konsultanci techniczni<\/li>\n<\/ul>\n<h4 id=\"opis\" id=\"opis\" ><span id=\"Opis\" class=\"ez-toc-section\"><\/span>Opis<\/h4>\n<p>Narz\u0119dzie do optymalizacji kolejno\u015bci kolumn (<em>optclmsqn<\/em>) sortuje kolejno\u015b\u0107 kolumn w tabeli bazy danych zgodnie z cz\u0119stotliwo\u015bci\u0105 ich u\u017cywania i czasem wykonywania w instrukcjach SQL. Umo\u017cliwia to zmniejszenie liczby blok\u00f3w do odczytania w zapytaniu do bazy danych, a w konsekwencji skr\u00f3cenie czasu wykonania zapytania.<\/p>\n<h4 id=\"polecenie\" id=\"polecenie\" >Polecenie<\/h4>\n<p>Poni\u017cej znajduje si\u0119 polecenie wraz ze wszystkimi mo\u017cliwymi parametrami.<\/p>\n<table style=\"border-collapse: collapse; width: 100%;\">\n<tbody>\n<tr>\n<td style=\"width: 50%; border-style: outset;\">optclmsqn<\/td>\n<td style=\"width: 50%; border-style: outset;\">[-o:&lt;str&gt;][-db:&lt;str&gt;][-analyseMonitor:&lt;str&gt;][-optimize]<\/p>\n<p>[-verbose]<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4 id=\"parametry\" >Parametry<\/h4>\n<p>Parametry polecenia zosta\u0142y wyja\u015bnione w poni\u017cszej tabeli. Parametry w nawiasach kwadratowych s\u0105 opcjonalne, podczas gdy pozosta\u0142e s\u0105 parametrami obowi\u0105zkowymi. Gwiazdka (*) mo\u017ce by\u0107 okre\u015blona jako symbol zast\u0119pczy dla niekt\u00f3rych parametr\u00f3w, aby m\u00f3c wy\u015bwietli\u0107 wszystkie mo\u017cliwe warto\u015bci. Nie wszystkie parametry mog\u0105 by\u0107 okre\u015blone wielokrotnie; tylko te z nast\u0119puj\u0105cym dodatkiem do zmiennych parametr\u00f3w s\u0105 dozwolone do wielokrotnego okre\u015blenia: <em>&lt;str-1&gt; &#8230; &lt;str-n&gt;<\/em>.<\/p>\n<p>Parametr musi by\u0107 wymieniony w ca\u0142o\u015bci, np. -f&lt;str&gt;, i w kolejno\u015bci, w jakiej jest u\u017cywany w poleceniu.<\/p>\n<table style=\"border-collapse: collapse; width: 100%; height: 115px;\">\n<tbody>\n<tr style=\"height: 23px;\">\n<td style=\"width: 50%; height: 23px; border-style: outset;\"><strong>Parametr<\/strong><\/td>\n<td style=\"width: 50%; height: 23px; border-style: outset;\"><strong>Opis<\/strong><\/td>\n<\/tr>\n<tr style=\"height: 23px;\">\n<td style=\"width: 50%; height: 23px; border-style: outset;\">[-o:&lt;str&gt;]<\/td>\n<td style=\"width: 50%; height: 23px; border-style: outset;\">Parametr s\u0142u\u017cy do wyboru obiektu wed\u0142ug jego w pe\u0142ni kwalifikowanej nazwy.<\/td>\n<\/tr>\n<tr style=\"height: 23px;\">\n<td style=\"width: 50%; height: 23px; border-style: outset;\">-db:&lt;str&gt;<\/td>\n<td style=\"width: 50%; height: 23px; border-style: outset;\">Parametr pozwala wybra\u0107 bazy danych, dla kt\u00f3rych ma zosta\u0107 wykonana operacja. Mo\u017cesz wybra\u0107 tylko te bazy danych, kt\u00f3re s\u0105 r\u00f3wnie\u017c pod\u0142\u0105czone do serwera aplikacji.<\/td>\n<\/tr>\n<tr style=\"height: 23px;\">\n<td style=\"width: 50%; height: 23px; border-style: outset;\">[analyseMonitor:&lt;str&gt;]<\/td>\n<td style=\"width: 50%; height: 23px; border-style: outset;\">Nale\u017cy okre\u015bli\u0107 numer monitora wydajno\u015bci za pomoc\u0105 parametru -analyseMonitor. Monitor wydajno\u015bci musi rejestrowa\u0107 instrukcje bazy danych i musi zosta\u0107 zreorganizowany co najmniej raz. Nale\u017cy u\u017cy\u0107 pliku szablonu <em>DatabaseMonitor-FullAnalysis.xml,<\/em> aby wprowadzi\u0107 odpowiedni monitor wydajno\u015bci (plik jest dost\u0119pny z poziomu<em> Panel System<\/em> -&gt; <em>Typ: File<\/em> -&gt; <em>Nazwa: com.cisag.sys.tools.profiling.monitoring.templates.DatabaseMonitorFullAnalysis<\/em>). Sekwencja kolumn wybranego obiektu biznesowego w wybranej bazie danych jest optymalizowana na podstawie danych tego monitora wydajno\u015bci.<br \/>\nWynikiem analizy jest fragment XML. Mog\u0105 Pa\u0144stwo przenie\u015b\u0107 ten fragment XML do w\u0142a\u015bciwo\u015bci bazy danych.<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%; border-style: outset;\">[-optimize]<\/td>\n<td style=\"width: 50%; border-style: outset;\">Ten parametr s\u0142u\u017cy do optymalizacji sekwencji kolumn obiektu biznesowego zgodnie z wynikiem analizy monitora wydajno\u015bci lub zgodnie z w\u0142a\u015bciwo\u015bciami bazy danych.<\/p>\n<ul>\n<li>zapianie bazy danych przed optymalizacj\u0105 sekwencji kolumn.<\/li>\n<li>upewnienie si\u0119, \u017ce \u017caden u\u017cytkownik nie pracuje w systemie podczas optymalizacji sekwencji kolumn.<\/li>\n<li>zrestartowanie systemu po optymalizacji sekwencji kolumn.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 50%; border-style: outset;\" width=\"188\">[-verbose]<\/td>\n<td style=\"width: 50%; height: 23px; border-style: outset;\">Wszystkie instrukcje bazy danych zawieraj\u0105ce wybrany obiekt biznesowy s\u0105 wy\u015bwietlane podczas analizy monitora wydajno\u015bci.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"author":29,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"class_list":["post-12361","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-baza-danych"],"_links":{"self":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb\/12361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb"}],"about":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/comments?post=12361"}],"version-history":[{"count":9,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb\/12361\/revisions"}],"predecessor-version":[{"id":38885,"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/ht_kb\/12361\/revisions\/38885"}],"wp:attachment":[{"href":"https:\/\/pomoc.comarch.pl\/cee\/index.php\/wp-json\/wp\/v2\/media?parent=12361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}