Go Back   A UNIX és Linux Forums > Top Fórumok > Shell programozás és Scripting
.
Google Site



Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt.

Closed Thread
English Japanese Spanish French German Portuguese Italian Powered by Powered by Google
 
Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 04-20-2009
Regisztrált felhasználó
 

Join Date: Apr 2009
Hozzászólások: 7
Teljesítmény kérdése, míg a UNIX generáló. Dat file nagy szöveges fájl

Hello Gurus,

Az előttünk álló néhány kérdés UNIX teljesítményét. Ha valaki már szembesült az ilyen jellegű probléma az elmúlt kérjük, adja meg javaslatokat ezzel kapcsolatban.

A probléma meghatározása:
/Néhány terhelési folyamatok a mi Pénzügyminisztérium Application néznek szembe a kérdést UNIX, amikor használ egy shell scriptet, amelynek része az alábbi kódot. Az alábbi kód része szól egy bemeneti fájlt és kiírja azokat egy. Dat file. Az előadás kérdése merül fel, amikor hatalmas mennyiségű adat a bemeneti fájlban.
Például: az adatok mennyisége, amelynek 200.000 feljegyzéseket vesz 38 perc Magabiztossági To Get A / írás a. dat file ami növeli a teljes terhelés folyamat időket. Meg kell növelni a teljesítményét ennek proces azáltal, hogy csökkenti az idő, hogy figyelembe, hogy A / írni a nyilvántartásokban.
/*****************************************

Része a kódot a Shell forgatókönyvíró:
/************************************************** ************************************************** *******************************************
m_arr_ctr \u003d 1
cat $ (m_recv_dir) / $ (m_glb_d92_nm) $ (m_glb_file_seq) | közben olvasni d92_line
tesz
m_brch_cd \u003d `echo" $ (d92_line) "| cut-c166-168"
# Ez a helyzet, ha elérjük az utolsó sort'*/', mi csak hagyja ki ezt a sort
if [ "$ (m_brch_cd)" \u003d ""]
majd
tovább
fi
if [ "$ (m_brch_cd)" \u003d "400"]
majd
m_jv_cd \u003d `echo" $ (d92_line) "| cut-c190-192"
vagy
m_jv_cd \u003d $ (m_brch_cd)
fi
if [! -s tmp_d92 $ (m_brch_cd) z $ (m_jv_cd)]
majd
echo "TMP"> tmp_d92 $ (m_brch_cd) z $ (m_jv_cd)
m_a_d92_list [$ m_arr_ctr] \u003d tmp_d92 $ (m_brch_cd) z $ (m_jv_cd)
m_a_d92_files [$ m_arr_ctr] \u003d $ (m_recv_dir) / $ (gd m_brch_cd) x $ (m_jv_cd) $ (m_glb_rate_cd). dat
m_arr_ctr \u003d `expr $ m_arr_ctr + 1`
m_touched \u003d "N"
vagy
m_touched \u003d "Y",
fi
if [m_touched \u003d "N"]
majd
echo "$ (d92_line)"> $ (m_recv_dir) / $ (gd m_brch_cd) $ (m_jv_cd) $ (m_glb_rate_cd). dat
vagy
echo "$ (d92_line)">> $ (m_recv_dir) / $ (gd m_brch_cd) $ (m_jv_cd) $ (m_glb_rate_cd). dat
fi

kész
A m_file_name in `echo $ (m_a_d92_files [*]}`
tesz
if [[ `grep" * / "$ (m_file_name) | wc-l` \u003d 0]]
majd
echo "* /">> $ (m_file_name)
fi
kész
A m_file_name in `echo $ (m_a_d92_list [*]}`
tesz
rm-f $ m_file_name
kész
/************************************

Kérjük, adja meg az értékes javaslatokat. Is van bármilyen módon használja SED parancsot mellékelik a kibocsátás gyors megoldás?


Sponsored Links
  #2 (permalink)  
Old 04-20-2009
cfajohnson's Avatar
Shell programozó, szerző
 

Join Date: Mar 2007
Helyszín: Toronto, Kanada
Hozzászólások: 2550
*
Idézet:
Originally Posted by KRAMA View Post
Az előttünk álló néhány kérdés UNIX teljesítményét. Ha valaki már szembesült az ilyen jellegű probléma az elmúlt kérjük, adja meg javaslatokat ezzel kapcsolatban.

A probléma meghatározása:
/ Néhány terhelési folyamatok a mi Pénzügyminisztérium Application néznek szembe a kérdést UNIX, amikor használ egy shell scriptet, amelynek része az alábbi kódot. Az alábbi kód része szól egy bemeneti fájlt és kiírja azokat egy. Dat file. Az előadás kérdése merül fel, amikor hatalmas mennyiségű adat a bemeneti fájlban.
Például: az adatok mennyisége, amelynek 200,000 rekordok vesz 38 mins to get A / írjon be. Dat file ami növeli a teljes terhelés folyamat időket. Meg kell növelni a teljesítményét ennek proces azáltal, hogy csökkenti az idő, hogy figyelembe, hogy A / írni a nyilvántartásokban.

Egy fájl mérete, akkor tényleg használni awk.
Idézet:
/*****************************************

Része a kódot a Shell forgatókönyvíró:

Kérjük, hogy a kódot belül [code] címkékkel.
Idézet:
/****************************************

Kód:
m_arr_ctr=1
cat ${m_recv_dir}/${m_glb_d92_nm}${m_glb_file_seq} |while read d92_line


Azt macska egy felesleges külső parancs, de mivel csak egyszer futtatja, kiküszöbölve azt kiválóságai, hogy nagyon kevés a különbség.

Része a lassúság oka az, hogy több külső hívó parancsok (amelyek közül több felesleges: nincs szükség a expr mint a héj tehetünk a saját aritmetikai) minden sorban.
Idézet:

Kód:
do
m_brch_cd=`echo "${d92_line}" |cut -c166-168`


Mi shell használ? Ha ez bash vagy ksh93, Akkor cserélje ki a hívás vág:


Kód:
m_brch_cd=${d92_line:165:3}

Idézet:

Kód:
for m_file_name in `echo ${m_a_d92_files[*]}`


Szükségtelen alhéj (itt és később) adhat jelentős időt. Alkalmazása:


Kód:
for m_file_name in "${m_a_d92_files[@]"

Idézet:

Kód:
do
if [[ `grep "*/" ${m_file_name} | wc -l` = 0 ]]


Nem kell wc valamint grep:


Kód:
if grep "*/" ${m_file_name} > /dev/null

Idézet:

Kód:
then
echo "*/" >> ${m_file_name}
fi
done
for m_file_name in `echo ${m_a_d92_list[*]}`
do
rm -f $m_file_name
done
/************************************

Kérjük, adja meg az értékes javaslatokat. Is van bármilyen módon használja SED parancsot mellékelik a kibocsátás gyors megoldás?
  #3 (permalink)  
Old 04-20-2009
Regisztrált felhasználó
 

Join Date: Apr 2009
Hozzászólások: 7
Hi Johnson,

thanks for your advise. Megpróbálom végrehajtani a javaslatot, és megvizsgálja a teljesítményt. Továbbá a shell itt használt KSH.
  #4 (permalink)  
Old 04-20-2009
cfajohnson's Avatar
Shell programozó, szerző
 

Join Date: Mar 2007
Helyszín: Toronto, Kanada
Hozzászólások: 2550

KSH melyik változat?
  #5 (permalink)  
Old 04-21-2009
Regisztrált felhasználó
 

Join Date: Apr 2009
Hozzászólások: 7
Hi John,

A KSH verzió 88f. Én is végre a Comand amit adott, de az egyetlen, amelynek megszüntetése vágva (azaz m_brch_cd \u003d $ (d92_line: 165:3)) nem működött, mint ahogyan azt fog munkálkodni ksh93. És a többi parancs nem javított a perfoprmance sokat. (ez a jobb teljesítmény 1-2 perc). Legyen szíves, segítsen nekem azzal a javaslattal használata AWK. Én nagyon új a AWK.

Last edited by KRAMA; 04-21-2009 at 04:50 PM..
  #6 (permalink)  
Old 04-21-2009
cfajohnson's Avatar
Shell programozó, szerző
 

Join Date: Mar 2007
Helyszín: Toronto, Kanada
Hozzászólások: 2550
Idézet:
Originally Posted by KRAMA View Post
Legyen szíves, segítsen nekem azzal a javaslattal használata AWK. Én nagyon új az AWK ...

Kérjük, írja le pontosan, mi a forgatókönyvet kell csinálni.

Mit jelent ez a fájlokat használja a bemeneti? Mi a forma, az ilyen fájlokat?

Mi az a kimeneti formátum?
  #7 (permalink)  
Old 04-21-2009
Regisztrált felhasználó
 

Join Date: Apr 2009
Hozzászólások: 7
Hi John,

Kérjük, keresse meg a válaszokat az alábbiak szerint:

Kérjük, írja le pontosan, mi a forgatókönyvet kell csinálni.
Ez a szkript osztja az adatokat Detail fájlokat (azaz melyek a bemeneti fájlokat a shell script-ben. Txt formátumban). Ebben az esetben a detal fájlban található $ (m_recv_dir) / $ (m_glb_d92_nm) $ (m_glb_file_seq). amely a kezdő adag a kód, amit kiküldték.

Ez a szkript beolvassa az adatokat soronként a szöveges fájl, és előkészíti kimenet. DAT fájlt.

Egyszer a. DAT fájlt hoz létre, hogy "* /" fájl vége karaktert alján a kimeneti fájl keletkezett. Egyszer a. DAT kimeneti fájl jön létre egy másik shell szkript betölti az adatokat. DAT fájlokat dolgozni táblák az adatbázis SQL Loader.

Mit jelent ez a fájlokat használja a bemeneti? Mi a forma, az ilyen fájlokat?

A formátum a bemeneti fájl. Txt

Mi az a kimeneti formátum?

A kimeneti formátum. DAT

Kérlek, hadd tudjam, mit szükséges információt, így tud nekem segíteni ebben ..
Sponsored Links
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Ki


Több, UNIX és Linux fórum témák Ön által talált Hasznos
Szál Thread Starter Fórum Válaszok Utolsó hozzászólás
Need to extract 7 karakter után azonnal szöveg'19 'egy nagy fájlt. parshant_bvcoe Shell programozás és Scripting 7 01-21-2009 08:10 AM
Hogyan lehet értelmezni, nem szöveges fájl unix - ELF-64 futtatható fájl objektum - IA64 alexcol A UNIX a fejlett és szakértői Felhasználók 8 11-07-2008 08:56 AM
Scaling Up szöveg Osztályozást Nagy állományrendszerekkel Linux Bot UNIX és Linux RSS hírek 0 06-23-2008 06:20 AM
hogyan kell szerkeszteni a nagy fájlok UNIX balireddy_77 Shell programozás és Scripting 3 12-14-2006 07:40 AM
Unix fájlrendszer teljesítménye a nagy könyvtárak dive A UNIX a dummies Kérdések és válaszok 3 03-12-2004 05:31 PM



Minden idő GMT -4. Az idő most 06:57 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Content Copyright © 1993-2010. All Rights Management by Reserved.Ad RedTyger

Content Relevant URLs by vBSEO 3.2.0