08.11.2014 Views

Full Disclosure Report

Full Disclosure Report

Full Disclosure Report

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

sqlcmd -E -Q"alter database %DB% set PAGE_VERIFY NONE" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -Q"alter database tempdb set PAGE_VERIFY NONE" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

:BULKINSERT<br />

if NOT '%DoBULKINSERT%' == 'TRUE' goto :CREATEINDEX<br />

rem<br />

rem BULKINSERT starts a process per %DBGEN_PARALLELISM%<br />

rem Each process inserts one or more segments<br />

rem<br />

sqlcmd -E -Q"sp_dboption %DB%,'trunc',TRUE" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -Q"sp_dboption %DB%,'select into',TRUE" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -Q"sp_dboption %DB%,'torn',FALSE" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

echo Dropping and Re-Creating Tables<br />

sqlcmd -E -d%DB% -Q"if exists (select * from sysobjects where name =<br />

'LOADTIMES') drop table LOADTIMES" -b -o<br />

%OUTPUTPATH%\Drop_Loadtimes.out<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -d%DB% -Q"create table LOADTIMES(STEP<br />

char(35),TIMESTAMP datetime)" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('LOAD<br />

begin',getdate())" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('Create Tables<br />

begin',getdate())" -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

for %%i in (REGION NATION SUPPLIER PARTSUPP PART<br />

CUSTOMER ORDERS LINEITEM) do sqlcmd -E -d%DB% -Q"drop table<br />

%%i" -o %OUTPUTPATH%\Drop_Table_%%i.out<br />

sqlcmd -E -e -d%DB% -i%DB%\CreateTables.sql -o<br />

%OUTPUTPATH%\CreateTables.out -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('Create Tables<br />

end',getdate())" -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

echo Starting bulk inserts<br />

for %%i in (LINEITEM ORDERS CUSTOMER PART PARTSUPP<br />

SUPPLIER) do call :BULKINSERTi %%i<br />

echo for NATION and REGION<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('Nation/Region<br />

insert begin',getdate())" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -e -d%DB% -Q"bulk insert NATION from<br />

'%FLATFILEDRIVE%\%FLATFILEDIR%1%FLATFILESUBDIR%\Natio<br />

n.tbl' with (FieldTerminator = '|', RowTerminator ='|\n',tablock)" -o<br />

%OUTPUTPATH%\BulkInsert_Nation.out -b -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -e -d%DB% -Q"bulk insert REGION from<br />

'%FLATFILEDRIVE%\%FLATFILEDIR%1%FLATFILESUBDIR%\Regio<br />

n.tbl' with (FieldTerminator = '|', RowTerminator ='|\n',tablock)" -o<br />

%OUTPUTPATH%\BulkInsert_Region.out -b -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -e -d%DB% -Q"insert into LOADTIMES values ('Nation/Region<br />

insert end',getdate())" -b -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

goto :CREATEINDEX<br />

:BULKINSERTi<br />

echo Starting bulk inserts for %1<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('%1 bulk insert<br />

begin',getdate())" -l 300<br />

for /l %%j in (1,1,%DBGEN_PARALLELISM%) do start cmd /C Setup<br />

BULKINSERTn %1 %%j<br />

semaphore -wait %1 -count %DBGEN_PARALLELISM%<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('%1<br />

end',getdate())" -b -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

goto :EOF<br />

:BULKINSERTn<br />

for /l %%k in<br />

(%3,%DBGEN_PARALLELISM%,%DBGEN_SEGMENTS%) do call<br />

:BULKINSERTn2 BULKINSERTn2 %2 %%k<br />

semaphore -release %2<br />

goto :EOF<br />

:BULKINSERTn2<br />

sqlcmd -E -e -d%DB% -Q"bulk insert %2 from<br />

'%FLATFILEDRIVE%\%FLATFILEDIR%%3%FLATFILESUBDIR%\%2.<br />

tbl.%3' with (FieldTerminator = '|', RowTerminator ='|\n',tablock)" -o<br />

%OUTPUTPATH%\BulkInsert_%2_%3.out -b -l 300<br />

goto :EOF<br />

:CREATEINDEX<br />

if NOT '%DoCREATEINDEX%' == 'TRUE' goto :CLEANUP<br />

rem<br />

rem Create Indexes<br />

rem<br />

echo %TIME% Starting create indexes<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('Create indexes<br />

begin',getdate())" -b -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -e -d%DB% -i %DB%\CreateIndexes_1.sql -o<br />

%OUTPUTPATH%\CreateIndexes_1.out -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -e -d%DB% -i %DB%\CreateFK.sql -o<br />

%OUTPUTPATH%\CreateFK.out -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -e -d%DB% -i %DB%\CreateIndexes_2.sql -o<br />

%OUTPUTPATH%\CreateIndexes_2.out -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

echo Starting create indexes<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('Create indexes<br />

end',getdate())" -b -l 300<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

echo %TIME% Done creating indexes indexes<br />

:CLEANUP<br />

if NOT '%DoCLEANUP%' == 'TRUE' goto :BACKUP<br />

rem<br />

rem CLEANUP sets statistics and lock options<br />

rem<br />

echo Setting Cleanup Options<br />

sqlcmd -E -d%DB% -Q"insert into LOADTIMES values ('Cleanup<br />

start',getdate())" -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

sqlcmd -E -e -d%DB% -Q"sp_createstats @fullscan='fullscan' " -o<br />

%OUTPUTPATH%\CreateStats.out -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

osql -I -E -e -d%DB% -Q"alter database %DB% set<br />

date_correlation_optimization ON" -o<br />

%OUTPUTPATH%\DateCorrelation.out -b<br />

if ERRORLEVEL 1 goto :ERROR_EXIT<br />

HP TPC-H FULL DISCLOSURE REPORT 85 July, 2010<br />

© 2010 Hewlett-Packard Company. All rights reserved.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!