1

Temat: Vaccum full na mocnej maszynie

Cześć,
chciał bym przyśpieszyć wykonanie procesu vaccum full na swoim systemie.

Głównym ograniczeniem na mojej maszynie jest procesor, a właciwie jego wykorzystanie przez postgresa.

Posiadam 24 rdzenie, a wykorzystywany jest tylko jeden wieć wpadłem na pomysł aby wykorzystać pętle for do tego zadania.

najpierw wrzucamy nazwy wszystkich tabel do pliku "tabele1.log"

a później należy wykonać coś w podobie do:

for i in `cat tabele1.log` ; do `./analiza_fork.sh $i & ` ; done

gdzie skrypt analiza_fork wygląda tak:

#!/bin/bash

psql -U user db << EOF

VACUUM FULL partitions.$1 ;

EOF


problem w tym że pętla nie przeskakuje do następnego procesu mimo znaku & na końću linii. Czy ktoś z was ma jakiś pomysł?

2

Odp: Vaccum full na mocnej maszynie

1. całkowicie niepotrzebne, psujące, użycie ` do wywołania analiza_fork.sh

2. po co w ogóle używasz vacuum full? czy wiesz co to robi i jak?

depesz

--
The best thing about modern society is how easy it is to avoid contact with it.

3

Odp: Vaccum full na mocnej maszynie

Hej,

2 .Vaccum full  niesestety blokuje tabele, następnie "kopiuje" ją na bok, sprawdza co może usunąć, usówa, analizuje i wtłacza ją z powrotem.
Przynajmniej ja tak to widzę.
Na swój dziwny sposób jestem skazany na vacuum full bez korzystania z auto vacuum.

1. bash -x for i in `cat tabele1.log` ; do ./analiza_fork.sh $i &  ; done
-bash: syntax error near unexpected token `do'

troszkę nie wiem jak ten temat ugryźć.

Ostatnio edytowany przez pietro54 (2014-11-02 15:11:02)

4

Odp: Vaccum full na mocnej maszynie

Co ma vacuum full do autovacuuma? Czemu używasz vacuum full, a nie normalnego vacuuma? I pytanie dwa: czemu uważasz, że nie możesz użyć autovacuums?

Co do skryptu - coś musiałeś popsuć. takie coś działa:

for a in `cat tabele1.log`; do ./analiza_fork.sh $i & done

*ale* to jest falatalny pomysł. Najpierw zastanów się w ogóle co robisz i po co. Vacuum full jest bardzo skomplikowaną metodą zrobienia sobie krzywdy. (w 98% przypadków, pozostałe 2% są nieistotne, bo i tak są lepsze metody).

--
The best thing about modern society is how easy it is to avoid contact with it.