提交 c4812f91 编写于 作者: P Ping Xiao

[TD-632]: keep inserting data into database

上级 be9c504e
......@@ -11,9 +11,12 @@
# -*- coding: utf-8 -*-
import sys
import taos
import time
from datetime import datetime
import csv
class DBWriteNonStop:
def __init__(self):
......@@ -21,36 +24,57 @@ class DBWriteNonStop:
self.user = "root"
self.password = "taosdata"
self.config = "/etc/taos"
def connectDB(self):
self.conn = taos.connect(self.host, self.user, self.password, self.config)
self.cursor = self.conn.cursor()
self.conn = taos.connect(
self.host,
self.user,
self.password,
self.config)
self.cursor = self.conn.cursor()
def createTable(self):
self.cursor.execute("drop database if exists dbwrite")
self.cursor.execute("create database dbwrite")
self.cursor.execute("use dbwrite")
self.cursor.execute("create table if not exists st (ts timestamp, value nchar(50), speed int) tags(dev nchar(50))")
self.cursor.execute(
"create table if not exists st (ts timestamp, value nchar(50), speed int) tags(dev nchar(50))")
def insertData(self):
def writeDataToCSVFile(self, data, duration):
csvFile = open('csvFile.csv', 'a', newline='')
writer = csv.writer(csvFile)
writer.writerow([data[0][0], data[0][1], data[0][2],
data[0][3], data[0][4], data[0][5], duration])
csvFile.close()
def insertData(self):
i = 1
startTime = datetime.now()
while True:
self.cursor.execute("insert into st1 using st tags('dev_001') values(now, 'taosdata%d', %d)" % (i % 10000, i % 100000))
self.cursor.execute(
"insert into st1 using st tags('dev_001') values(now, 'taosdata%d', %d)" %
(i %
10000,
i %
100000))
i += 1
i = i % 32000000
endTime = datetime.now()
if (endTime - startTime).seconds >= 5 * 2:
startTime = endTime
self.cursor.execute("select last(ts) from st >> output.txt")
self.cursor.execute("select count(*) from st >> output.txt")
if (endTime - startTime).seconds >= 10 * 2:
startTime = endTime
start = datetime.now()
self.cursor.execute(
"select first(ts), last(ts), min(speed), max(speed), avg(speed), count(*) from st")
data = self.cursor.fetchall()
end = datetime.now()
self.writeDataToCSVFile(data, (end - start).seconds)
time.sleep(.001)
def closeConn(self):
self.cursor.close()
self.conn.close()
test = DBWriteNonStop()
test = DBWriteNonStop()
test.connectDB()
test.createTable()
test.insertData()
......
#!/bin/bash
ulimit -c unlimited
function buildTDengine {
cd /root/TDengine
git remote update
REMOTE_COMMIT=`git rev-parse --short remotes/origin/develop`
LOCAL_COMMIT=`git rev-parse --short @`
echo " LOCAL: $LOCAL_COMMIT"
echo "REMOTE: $REMOTE_COMMIT"
if [ "$LOCAL_COMMIT" == "$REMOTE_COMMIT" ]; then
echo "repo up-to-date"
else
echo "repo need to pull"
git pull
LOCAL_COMMIT=`git rev-parse --short @`
cd debug
rm -rf *
cmake ..
make > /dev/null
make install
fi
}
function restartTaosd {
systemctl stop taosd
pkill -KILL -x taosd
sleep 10
rm -rf /var/lib/taos/data/*
rm -rf /var/lib/taos/log/*
taosd 2>&1 > /dev/null &
sleep 10
}
buildTDengine
restartTaosd
python3 insert/writeDBNonStop.py
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册