Copyright © TIBCO Software Inc. All Rights Reserved
Copyright © TIBCO Software Inc. All Rights Reserved


Chapter 1 Using TIBCO Object Service Broker Utilities : hrnbrtbl (Batch Load)

hrnbrtbl (Batch Load)
Syntax
hrnbrtbl -C controlfile [arguments] filename
Platforms
Windows, Solaris
Description
You can use the hrnbrtbl (Batch Load) utility to:
Arguments
 
-A auditreport
-C controlfile
Indicates that the input file is in z/OS Variable Block format. If the input file (filename) was created on Windows or Solaris using one of the offline batch unload utilities—hrnbrula (Batch Unload from Archive), hrnbrulb (Batch Unload (Offline)), hrnbrulh (Batch Unload (Online))—the ‑m argument must be specified on the command line. If the input file was created on z/OS and ported to Windows or Solaris, do not include the m argument.
Indicates the maximum number of buffers to be used for sorting secondary indexes. The default is 4 and the minimum is 2.
-s segment#
The offline segment number or segment name. If this option is omitted, the segment defaults to 0 (that is, the base segment is used).
-W workpath
 
Files
controlfile
A file containing the control information describing the input file and the table you want to load. You can create this file with the BATCHLOAD_CARDS tool or manually with an ASCII editor like Notepad or vi.
filename
The pathname of the file containing the data you want to load in a table.
Fixed (F) or Fixed Block (FB) format means that all records are the same length. Under TIBCO Object Service Broker for Open Systems, there is no difference between F and FB formats.
Variable Block (VB) means that each block is prefixed by a four-byte Block Descriptor Word (BDW) containing the length of the data in the block, including the four-byte BDW itself. For example, the BDW for a 256-byte block of data would appear as follows:
where the first two bytes contain the length followed by two bytes containing zeros.
Within each block, each record has a Record Descriptor Word (RDW) with exactly the same format as the BDW. If a record contained 20 bytes of data, the RDW would appear as follows:
where the first two bytes contain the length, followed by two bytes containing zeros. If this record is the first in the block, the beginning of the block would appear as follows:
followed by the first record (of 20 bytes).
Environment Variable
UNICODEDIR
Set this to indicate the directory that contains the Unicode configuration files, for example, %OS_ROOT%\database\UNICODEDIR in Windows or ${OS_ROOT}/database/UNICODEDIR in Solaris. For more information, refer to TIBCO Object Service Broker for Open Systems Installing and Operating.
Constraints
Segment Offline
The segment containing the table to be loaded must be offline. This means that if the target segment for the table is segment 0, the Data Object Broker must be shut down.
Control File
You must prepare a correctly formatted ASCII control file describing the following:
The file must be completely defined for the hrnbrtbl utility to determine the size of the largest record. If there are fields that you do not want loaded into the target table, define them as filler0 through fillern in the file definition and omit them from the table definition (if consecutive fields are not wanted, define them as one continuous field). This information can be prepared using the BATCHLOAD_CARDS tool or with an ASCII editor like Notepad, vi, or a word processor in ASCII mode. For more information, refer to TIBCO Object Service Broker Shareable Tools.
On the first screen of the BATCHLOAD_CARDS tool, there is a field called Dynamic Block Size, which defaults to 4096 if left blank. Using this screen, you can set this value only as high as 32767. However, maximum blocksize of 65536 is recommended for improved performance (especially if your table contains secondary indexes) unless you have memory constraints or maximum throughput is not required. To set the blocksize to 65536, you must edit the value in the control file after it is created by BATCHLOAD_CARDS, using an ASCII editor like Notepad or vi.
Non-parameterized Table
If the table is non-parameterized, it must be empty prior to the load.
Parameterized Table
If the table is parameterized, it can contain data provided that the table instances to be loaded do not already exist.
Primary Keys
Primary key fields must be either cross-referenced to an input field or system generated (that is, an IDgen key). They must not appear on value cards.
Secondary Indexes
If you want secondary indexes to be built while you load the table, you must predefine them with the online SIXBUILD tool.
Disk Space
You must have sufficient disk work space (refer to the ‑W argument).
EBCDIC Format
The data to be loaded must be in EBCDIC format and must be in the proper sequence (ascending—parameter 1 through n, primary keys—1 through n). If your data is in ASCII format, it must be converted to EBCDIC for the batch load to work correctly.
Validation
Some data validation is done and records are rejected if the data is bad; if the number of records rejected exceeds the reject limit, the load is aborted.
Null-equivalent Values
Numeric syntax fields (binary and packed decimal) have a null-equivalent value that is defined as the lowest possible value that the field can hold. Null values in the input file are preserved using the following default behavior:
Packed decimal fields use the alternative negative sign (X’B’), which means that the lowest possible value can still be used in tables. In a file where the default null-equivalent value is used, the following values must not be used:
The default values can be overridden to use a user-defined value, the highest possible value, or no null-equivalence permitted.
You cannot represent a floating point null in fixed format. When a floating point null is unloaded using the hrnbrulb (Batch Unload (Offline)) utility or the hrnbrulh (Batch Unload (Online)) utility, it is unloaded as true zero. Therefore, when floating point nulls are reloaded using the hrnbrtbl utility they are loaded as a zero.
Examples
Windows
hrnbrtbl -A audit.log -C c:\cntl\control.file -s 1 -n 40 input.file
Solaris
hrnbrtbl -A audit.trail -C /usr1/cntl/control.file -s 1
         -n 40 input.file
These examples show:
Sample Audit Log
The following illustrates a sample audit log for the hrnbrtbl utility:

 
*batchsrv OFFLINE BATCH UTILITY SERVER DATE 2007 MAR 06 TIME 11 27
Requested Utility: hrnbrtbl
 
CONTROL - file: Y2000TBL.CTL
INPUT - file: TBL.IN: Data type: Huron; Record format: Variable
OUTPUT - TDS Table: Y2000_TDS_LOAD Character Set: ENGL
 
Fill Percentage: Data - 075; Index - 075; SIndex - 075; Group - 075
#fields - 50; #records - 100000; #parameters - 0; #secondaries - 0
Areas: IxBuf - 4096; Ix - 4; E - 16; Parms - 0; PKeys - 4; LSIndex - 0
Input sizes: Record - 18; Minimum Record - 8 Buffer - 65536
 
UNLESS SPECIFIED BELOW (COLS 64-79) THE FOLLOWING PACKED DECIMAL AND
BINARY INPUT VALUES WILL BE CONVERTED TO NULL ON THE LOADED TABLE:
BINARY: (default = LOWVALUE) Length 2 thru 8 x'80~~~~~~~~00'
PACKED: (default = LOWVALUE) Length 1 thru 8 x'9B' thru x'999999999999999B'
 
LOAD FIELD: KEY ---> KEY (PRIMARY KEY)
IN: type= ; syn= B; len= 4; dec= 0; offset=0
OUT: type= I; syn= B; len= 4; dec= 0; fld= 1; key= 1; prm= 0
 
LOAD FIELD: FLD ---> FLD
IN: type= ; syn= C; len= 10; dec= 0; offset=4
OUT: type= S; syn= C; len= 10; dec= 0; fld= 2; key= 0; prm= 0
 
**NOTE** -1 = Not Applicable.
END OF TABLE
 
 
PAGESTORE SEGMENT NAME SEG01 SEGMENT # 1 TYPE TDS - OPENED
 
*hrnbrtbl TDS TABLE LOAD Date 2007 MAR 06 Time 11:27
 
PAGESTORE SEGMENT NAME SEG01 SEGMENT # 1 SEGMENT TYPE TDS
 
CONTROL - file: Y2000TBL.CTL
INPUT - file: TBL.IN: Data type: Huron; Record format: Variable
OUTPUT - TDS Table: Y2000_TDS_LOAD Character Set: ENGL
 
Table's primary path begins at page: 00000084; no secondaries allocated.
 
S6BBL148E NO INPUT RECORDS READ, PROCESSING TERMINATED
 
PAGESTORE SEGMENT NAME SEG01 SEGMENT # 1 TYPE TDS - CONNECTION TERMINATED

 
Related Utilities

Copyright © TIBCO Software Inc. All Rights Reserved
Copyright © TIBCO Software Inc. All Rights Reserved