隨機造數,往表中插入數據
生成隨機數
生成隨機中文
#!/bin/bash
source ~/TDH-Client/init.sh
about="非洲酋長 歐皇 顏值控 宅男 技術宅 追求完美 中二晚期 高富帥 逗比 貓星人 手工 爲了聯盟 夜貓子 軟妹子 腹黑"
{
for i in {4..1000}
do
create_sql="CREATE TABLE employee_"$i" (
eid STRING,
name STRING,
age TINYINT,
height DOUBLE,
about STRING
)
STORED AS ES;"
echo "------------------$i------------------"
beeline -u jdbc:hive2://ct-11:10000/es_test -e "${create_sql}"
#判斷是否執行成功
if [ "$?" -ne "0" ];then
echo "beeline -u jdbc:hive2://ct-11:10000/es_test -e \"${create_sql}\" ERROR"|tee /tmp/create_sql_sh.log
fi
{
for n in {1..1000}
do
insert_sql="insert into employee_"$i"(eid,name,age,height,about) values(\"`head -200 /dev/urandom|cksum|cut -d " " -f 1`\",\"`date +%s%N|md5sum|head -c 10`\",$(($RANDOM%15+20)),$(($RANDOM%40+150)),\"`echo $about|cut -d " " -f $(($RANDOM%14+1))`\");"
#最後一個字段生成隨機中文
#生成要執行的insert語句
echo ${insert_sql} >> /tmp/employee_"$i".sql
done
beeline -u jdbc:hive2://ct-11:10000/es_test -f /tmp/employee_"$i".sql
if [ "$?" -ne "0" ];then
echo "beeline -u jdbc:hive2://ct-11:10000/es_test -f /tmp/employee_\"$i\".sql ERROR" >> /tmp/insert_sql_sh.log
else
rm -rf /tmp/employee_"$i".sql
fi
} &
done
}&
wait