using JiShe.CollectBus.Common.Models;
using JiShe.CollectBus.IoTDB.Model;
using JiShe.CollectBus.IoTDB.Options;
using JiShe.CollectBus.IoTDB.Provider;
namespace JiShe.CollectBus.IoTDB.Interface
{
///
/// IoTDB数据源,数据库能同时存多个时序模型,但数据是完全隔离的,不能跨时序模型查询,通过连接字符串配置
///
public interface IIoTDbProvider
{
/////
///// 切换 SessionPool
/////
///// 是否使用表模型
//void SwitchSessionPool(bool useTableSession);
IIoTDbProvider GetSessionPool(bool sessionpolType);
///
/// 插入数据
///
///
///
///
Task InsertAsync(T entity) where T : IoTEntity;
///
/// 批量插入数据
///
///
///
///
Task BatchInsertAsync(IEnumerable entities) where T : IoTEntity;
///
/// 批量插入数据
///
///
/// 设备元数据
///
///
Task BatchInsertAsync(DeviceMetadata deviceMetadata,IEnumerable entities) where T : IoTEntity;
///
/// 删除数据
///
///
///
///
Task