You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Create Database

Delete Database

Query Database


//todo

Create Timeseries



Query Timeseries

// todo


Delete Timeseries

//todo


Insert Data



写入流程

  • 客户端 C 连接集群任意 DataNode A 发送InsertReq
  • DataNode A 将 InsertReq 转换为 InsertStatement
  • Coordinator 创建 QueryExecution,并开始执行
    • Analyzer: 接收 InsertStatement。根据 PartitionFetcher(更新分区缓存),拿到 DataPartition ,放到 Analysis 中。
    • LogicalPlanner :根据 InsertStatement,构造 InsertPlanNode(包含 InsertStatement 与空的 RegionReplicaSet )
    • DistributionPlanner:根据 Analysis 中的 DataPartition,将原始的 InsertPlanNode 拆分成多个 InsertPlanNode,并根据 RegionReplicaSet 对 InsertPlanNode 分组
  • ClusterScheduler
    • 将 FragmentInstance(包含InsertPlanNode) 交给Dispatcher进行转发
    • 等待各个 DataNode 返回结果,进行汇总处理,返回给客户端
  • Dispatcher 将序列化后的 FragmentInstance 通过 InternalService 发送到对应节点
  • DataNode B 的 InternalServiceImpl 接收到 FragmentInstance, 判断 FragmentInstance类型,如果是写操作,从中反序列化出 InsertPlanNode,通过 SchemaValidatar 调用 SchemaFetcher 进行元数据校验(自动创建元数据,更新缓存等),校验完成后更新InsertPlanNode,将measurementSchemas set进去
  • 将 InsertPlanNode重新序列化后传入 IConsensus 进行写入。


Delete Data




Raw Data Query




Flush 


flush on local/flush on cluster:Flush 当前或所有 DataNode 的数据



Authority Management


Query



Create



Log in



Authority Check




  • No labels