时序数据库推荐taos

野生程序猿-杂烧3年前随意分享667

  时序数据库(Time Series Database,TSDB) 全称为时间序列数据库。时间序列数据库指主要用于处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。

  大家在开发的时候都想把日志详详细细的记录,不管以后遇到问题查询,还是对客户数据进行分析都是很有价值的。但是,我们很快会发现,这些日志实在是太大量了,存储成文本动不动就n个G,分析起来也麻烦。普通数据库根本承载不了这么大的数据。于是我们必须寻找一种新型的数据库。

  时序数据库,这种数据库大量应用在物联网上。能够进行超大数据量的记录,关键由于其时序的特性,能够很快的读取。最NB的是,数据库的占用空间远比文本日志小,而且支持很多数据库语法的操作,可以做一些分析。我只能说,这种数据库真的是太棒了,太值得大家学习研究了。

  https://www.taosdata.com/?zh

  当然优点之外就是缺点了,这种数据库跟其他主流数据库比就太小众了。遇到的坑后很难找到解决办法,很多时候要购买官方的售后服务。这里我就说一点自己遇到的实际问题,时序数据库插入的时候一定要按时间顺序插,如果乱序很高概率把数据库弄崩了,这个重启也恢复不了,多半要找官方协助处理了。所以写入数据的时候一定要注意。如果是乱序插,有专门的数据库语法。

  但是总的来说,如果不重要的数据。像日志类用于分析,完全可以弄个这类数据库玩玩,速度高效,太高效了。

【db_taos.py】

# -*- coding: UTF-8 -*-
import taos


class db_taos(object):
    conn = None

    def __init__(self, host, username, password, db, config='/etc/taos'):
        self.host = host
        self.username = username
        self.password = password
        self.db = db

        self.config = config
        
        #self.conn = pymysql.connect(host=self.host, port=self.port, user=self.username, password=self.password, db=self.db,charset=self.charset)
        #self.cursor = self.conn.cursor(cursor=pymysql.cursors.DictCursor)
        self.conn = taos.connect(host=self.host, user=self.username, password=self.password,database=self.db)
        self.cursor = self.conn.cursor()
        
        #use_db_str='use '+self.db
        #print(use_db_str)
        #self.cursor.execute(use_db_str)


    def close(self):
        self.cursor.close()
        self.conn.close()



    def select_all(self, sql):
        list_data = ()
        try:
            self.cursor.execute(sql)
            list_data = self.cursor.fetchall()
        except Exception as e:
            print(e)
        return list_data


    def dosql(self, sql):
        #print(sql)
        count = 0
        try:
            count = self.cursor.execute(sql)
        except Exception as e:
            print(e)
        return count


标签: 软件推荐

相关文章

介绍一款文件比较工具Beyond Compare

介绍一款文件比较工具Beyond Compare

这款软件除了可以比较我们的代码差异,还可以比较图片形状差异。有以下几个优点1、代码支持特殊字符,如换行符的一些差异(不同操作系统,如linux跟windows下很多时候会有这个现象)。2、支持上下文功...

推荐个强迫症最爱的任务栏管理工具7+ Taskbar Tweaker

推荐个强迫症最爱的任务栏管理工具7+ Taskbar Tweaker

我们开发人员用到的软件特别多,尤其全栈。前后端开发软件、ps、模拟器、办公软件、cmd窗口。工作的时候我不喜欢把任务栏按组叠加。像cmd窗口给我叠在一起,找都找不到,打乱开发的节奏。...

ffmpeg的创作视频

如何将图片、文字、音频合并起来用代码生成视频,这里推荐个好工具ffmpeg先来看我的一个demoffmpeg  -f image2  -loop&nb...

前端有没必要学习photoshop

前端有没必要学习photoshop

  现在前端开发已经工程化,可以说前端前几年的受欢迎程度已经超过后端。再加上javascript的后端语言nodejs,让前端或者说前后端全栈更受欢迎。  在我就职的几家公司里,遇到了不少前端、后端,...