Page 1 of 1

Determination if the Hash File Size has increased.

Posted: Thu Aug 04, 2005 3:02 am
by Gokul
Hi ,

Due to some obscure requirement we had to resize one of our hash file

1. Now how do i determine whether the hash file size has changed or it is able to accomodate data > 2 GB.

2. I tried using ANALYSE.FILE hashfilename.
But i got a error stating the 'VERB ANALYSE.FILE is not present in the VOC'
How do we add the entry or verb in VOC.

Thanks in advance,
Gokul

Posted: Thu Aug 04, 2005 3:41 am
by roy
Hi,
ANALYZE.FILE
IHTH,

Posted: Thu Aug 04, 2005 4:45 am
by Gokul

Code: Select all

Hi, 
ANALYZE.FILE 
While executing the above command from Adminstrator Command window,i am getting error "Verb does not exist in VOC".
How do we add the Verb ANALYSE.FILE in VOC?


Thanks,
Gokul

Posted: Thu Aug 04, 2005 4:54 am
by ArndW
ANALYZE.FILE is a standard verb in the VOC, if it is missing then you have removed this (and perhaps other) VOC entries - which might cause problems in DataStage; the VOCabulary file is the crucial file from which everything is ultimately done; you should be very wary of modifying this file.

If you do a "LIST VOC WITH @ID LIKE ...ZE..." do you get any result?

Posted: Thu Aug 04, 2005 5:28 am
by roy
Hi,
I'm guessing you didn't notice that the correct syntax is with a Z not an S and it is:

Code: Select all

ANALYZE.FILE <HashFile Name>
Regarding hash files that are not account files
you'll need to build an entry in the voc file (corrected syntax)

Code: Select all

SETFILE HashFilePath HashFileName OVERWRITING
Then you can use the alias file name in your ANALYZE.FILE command.

Bare in mind you might want to remove this entry later

Code: Select all

DELETE.FILE [DICT | DATA] [filename]
IMPORTANT NOTICE:
Messing around with your VOC file is dangerous and entirely at your own risk if you do not know what your doing !!!.

IHTH,

Posted: Thu Aug 04, 2005 5:30 am
by Gokul
Thanks Arndw,

Since i was testing in a separate Project the modification of VOC did not matter much. I created a new Project and in that ANALYZE.FILE was working.
Now my query is how we determine whether the RESIZE command actually changes the size of hash file
I had created a hash file whose statistics given by ANALYZE.FILE

Code: Select all

File name ..................... D_DSTemp1
Pathname ...................... /home/w951hdx/temp/DStemp1
File type ..................... DYNAMIC
Hashing algorithm ............. GENERAL
No. of groups(modulus)......... 2 current (Minimum 1)
Large record size ............. 1628 bytes
Group size .................... 2048 byets
Load Factors .................. 80%(split),50%(merge) and 46%(Actual)
Total size .................... 8192 bytes
After using RESIZE Command to increase the size of hash file.
The Ouput of ANALYZE.FILE is given as follows

Code: Select all

File name ..................... D_DSTemp1
Pathname ...................... /home/w951hdx/temp/DStemp1
File type ..................... DYNAMIC
Hashing algorithm ............. GENERAL
No. of groups(modulus)......... 2 current (Minimum 1)
Large record size ............. 1628 bytes
Group size .................... 2048 byets
Load Factors .................. 80%(split),50%(merge) and 57%(Actual)
Total size .................... 8192 bytes
Comparing 2 o/ps only Load Factor seems to be different.

Code: Select all

Then How we determine whether the RESIZE has actually changed the size of hash file
[/color]

Thanks,
Gokul

Posted: Thu Aug 04, 2005 5:32 am
by ArndW
Doing a RESIZE on an empty file will not change the size (Hence the 8Kb in both cases). Put some data into the file and then do a before/after compare of the RESIZE results.

Posted: Thu Aug 04, 2005 5:48 am
by Gokul
ArndW,

The actual hash file size hash not changed before and after executing of RESIZE Command.
My query is how will determine (without actual loading > 2GB of data in the hash file) that Hash file can accomodate data > 2GB.
i.e execution of RESIZE command was sucessful.
Thanks
Gokul

Posted: Thu Aug 04, 2005 6:29 am
by ArndW
Do a "UVFIXFILE {yourfilename} " and it will tell you what you want to know.

Posted: Thu Aug 04, 2005 7:19 am
by Gokul
Thanks ArndW,

The UVFIXFILE does not work for 64 bit file,from that we can conclude that RESIZE has worked successfully.

Posted: Thu Aug 04, 2005 7:23 am
by ArndW
Exactly 8)

Posted: Thu Aug 04, 2005 4:24 pm
by ray.wurlod
The second parameter of RESIZE is interpreted as a MINIMUM.MODULUS setting; the third parametr is interpreted as GROUP.SIZE 2 only if the parameter value is 8.

RESIZE is primarily used by dynamic hashed files to reclaim free space within the file structure. As Arnd noted, there probably isn't any in an empty hashed file.

RESIZE is far more important in tuning static hashed files, where the three parameters are hashing algorithm (= file type), actual modulus and separation.