leastsquare.sim 1.8 KB
Newer Older
S
slguan 已提交
1
sleep 3000
S
scripts  
slguan 已提交
2
sql connect
S
slguan 已提交
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

$dbPrefix = m_le_db
$tbPrefix = m_le_tb
$mtPrefix = m_le_mt
$tbNum = 10
$rowNum = 20
$totalNum = 200

print =============== step1
$i = 0
$db = $dbPrefix . $i
$mt = $mtPrefix . $i

sql drop database $db -x step1
step1:
S
scripts  
slguan 已提交
18
sql create database $db keep 36500
S
slguan 已提交
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
sql use $db
sql create table $mt (ts timestamp, tbcol int) TAGS(tgcol int)

$i = 0
while $i < $tbNum
  $tb = $tbPrefix . $i
  sql create table $tb using $mt tags( $i )
  
  $x = 2
  $ms = 1000
  while $x < $rowNum
    $ms = $ms + 1000
    sql insert into $tb values ($ms , $x ) 
    $x = $x + 1
  endw 
 
  $i = $i + 1
endw 

sleep 100

print =============== step2
$i = 1
$tb = $tbPrefix . $i

sql select leastsquares(tbcol, 1, 1) from $tb
print ===> $data00
S
scripts  
slguan 已提交
46
if $data00 != @{slop:1.000000, intercept:1.000000}@ then
S
slguan 已提交
47 48 49 50 51 52
  return -1
endi

print =============== step3
sql select leastsquares(tbcol, 1, 1) from $tb where ts < now + 4m
print ===> $data00
S
scripts  
slguan 已提交
53
if $data00 != @{slop:1.000000, intercept:1.000000}@ then
S
slguan 已提交
54 55 56 57 58 59
  return -1
endi

print =============== step4
sql select leastsquares(tbcol, 1, 1) as b from $tb
print ===> $data00
S
scripts  
slguan 已提交
60
if $data00 != @{slop:1.000000, intercept:1.000000}@ then
S
slguan 已提交
61 62 63 64 65 66
  return -1
endi

print =============== step5
sql select leastsquares(tbcol, 1, 1) as b from $tb interval(1m)
print ===> $data01 
S
scripts  
slguan 已提交
67
if $data01 != @{slop:1.000000, intercept:1.000000}@ then
S
slguan 已提交
68 69 70 71 72
  return -1
endi

sql select leastsquares(tbcol, 1, 1) as b from $tb interval(1d)
print ===> $data01
S
scripts  
slguan 已提交
73
if $data01 != @{slop:1.000000, intercept:1.000000}@ then
S
slguan 已提交
74 75 76 77 78 79
  return -1
endi

print =============== step6
sql select leastsquares(tbcol, 1, 1) as b from $tb where ts < now + 4m interval(1m)
print ===> $data01
S
scripts  
slguan 已提交
80
if $data01 != @{slop:1.000000, intercept:1.000000}@ then
S
slguan 已提交
81 82 83 84 85 86 87 88 89 90 91 92
  return -1
endi
print ===> $rows
if $rows != 1 then 
  return -1
endi

print =============== clear
sql drop database $db
sql show databases
if $rows != 0 then 
  return -1
S
scripts  
slguan 已提交
93
endi