You've already forked mariadb-columnstore-engine
							
							
				mirror of
				https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
				synced 2025-10-31 18:30:33 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			96 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| #This is the procedure for running bulkload using cpimport program
 | |
| #Usage of this program :
 | |
| #The necessary input parameter is the schema name
 | |
| #For example: bulkload.sh TPCH
 | |
| 
 | |
| #A table name and a Job ID can be entered by user when it is prompted or they can be skipped by hitting enter key
 | |
| #When the table name is skipped, ALL of the columns and index in ALL of the tables in the schema will be loaded 
 | |
| 
 | |
| #When table name is entered, All of the columns and indexes in the entered table will be loaded
 | |
| #Job ID will determine the names of the two xml files. For example, job id 100 will generate Job_100.xml for columns and Job_101 for index xml file. Job id for index xml file is the entered job id +1
 | |
| #if the job id is skipped, the default job ids are 299 and 300 for column and index files
 | |
| #There are two xml files will be generated which reside in bulkroot directory under subdirectory job
 | |
| #For example, the job directory may look like /usr/local/mariadb/columnstore/test/bulk/job 
 | |
| 
 | |
| # Set up a default search path.
 | |
| PATH="$HOME/genii/export/bin:.:/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin"
 | |
| export PATH
 | |
| 
 | |
| echo "This is Script name  " $0		
 | |
| 
 | |
| USERNAME=`grep "^${USER}:" /etc/passwd | cut -d: -f5`
 | |
| JOBID=""
 | |
| TABLENAME=""
 | |
| Schema =""
 | |
| echo "Your Name is :" $USERNAME
 | |
| echo "Your User Id  is :" $USER
 | |
| Schema=$1
 | |
| if [ -n "$Schema" ]; then
 | |
|  echo "Schema is   " $Schema
 | |
| else
 | |
|  Schema="TPCH"
 | |
| if [ -n "$Schema" ]; then
 | |
|   echo "Schema is   " $Schema
 | |
| else
 | |
|   echo "Error using the script, a schema is needed! "
 | |
|   echo "usage as follows: "
 | |
|   echo "                bulkload.sh SCHEMA_NAME(your schema name)"
 | |
|   echo "Try again! Goodbye!"
 | |
|   exit
 | |
|  fi
 | |
| fi
 | |
| 
 | |
|   
 | |
| MAXERROR=10
 | |
| FORMAT=CSV
 | |
| DESC="table columns definition"
 | |
| NAME="column definitions for tables in $Schema"
 | |
| 
 | |
| SUFFIX=.tbl
 | |
| if [ -n "$JOBID" ]; then 
 | |
|       echo "INPUT JOB ID is " $JOBID
 | |
| else
 | |
|  JOBID=299
 | |
|  echo "DEFAULT COLUMN JOB ID is " $JOBID
 | |
| fi
 | |
| 
 | |
| let "JOBID2 = JOBID+1"
 | |
| echo "DEFAULT INDEX JOB ID is " $JOBID2
 | |
| 
 | |
| #generate column xml file
 | |
| if [ -n "$TABLENAME" ]; then
 | |
|  colxml $Schema -t $TABLENAME  -j $JOBID   -d "|"   -s "$DESC" -e $MAXERROR  -n "$NAME"   -u $USER
 | |
|  command="colxml $Schema -t $TABLENAME -j $JOBID   -d \"|\" -f $FORMAT   -s \"$DESC\" -e $MAXERROR  -n \"$NAME\"   -u $USER "
 | |
|  echo $command
 | |
| else
 | |
|  colxml $Schema  -j $JOBID   -d "|"   -s "$DESC" -e $MAXERROR  -n "$NAME"   -u $USER
 | |
|  command="colxml $Schema  -j $JOBID   -d \"|\" -f $FORMAT   -s \"$DESC\" -e $MAXERROR  -n \"$NAME\"   -u $USER "
 | |
|  echo $command
 | |
| fi
 | |
| 
 | |
| 
 | |
| #generate index xml file
 | |
| DESC="table index definition"
 | |
| NAME="index definitions for tables in $Schema"
 | |
| 
 | |
| if [ -n "$TABLENAME" ]; then
 | |
|  indxml $Schema -t $TABLENAME  -j $JOBID2 -s "$DESC" -e $MAXERROR  -n "$NAME"  -u $USER 
 | |
|  command="indxml $Schema -t $TABLENAME -j $JOBID2 -s "$DESC" -e $MAXERROR  -n "$NAME"  -u $USER "
 | |
|  echo $command
 | |
| else
 | |
|  indxml $Schema -j $JOBID2 -s "$DESC" -e $MAXERROR  -n "$NAME"  -u $USER
 | |
|  command="indxml $Schema -j $JOBID2 -s "$DESC" -e $MAXERROR  -n "$NAME"  -u $USER "
 | |
|  echo $command
 | |
| fi
 | |
| 
 | |
| #bulk load column files
 | |
| cpimport  -j  $JOBID
 | |
| command="cpimport -j $JOBID"
 | |
| echo $command
 | |
| #bulk load index files
 | |
| cpimport -c -i -j $JOBID2
 | |
| command="cpimport -i -c -j $JOBID2"
 | |
| echo $command
 |