文档

关于 SequoiaDB

快速入门

快速入门之一键清理

安装

基本操作

数据模型

SQL引擎

FileSystem引擎

S3引擎

系统架构

数据库管理

连接器

驱动

参考手册

故障排除

SAC 管控中心

Web服务

版本信息

CSharp驱动概述

概述

SequoiaDB CSharp( 又称为C# ) 驱动提供了数据库操作和集群操作的接口。数据库操作包括数据库的连接,用户的创建删除,数据的增删改查,索引的创建删除,快照的获取与重置,以及集合与集合空间的创建删除操作等操作。集群操作包括管理分区组和数据节点的各种操作,譬如启动,停止分区组,启动,停止数据节点,获取主从数据节点,集合分区等。

CSharp 类实例

CSharp 驱动的有两种类实例。一种用于数据库操作,另一种用于集群操作。

  • 数据库操作实例

    SequoiaDB 数据库中的数据存放分为三个级别:

    1)数据库

    2)集合空间

    3)集合

    因此,在数据库操作中,可用3个类来分别表示连接,集合空间,集合实例,另1个类表示游标实例,1个类表示大对象:

    名称 描述
    SequoiaDB 数据库实例 代表一个单独的数据库连接
    CollectionSpace 集合空间实例 代表一个单独的集合空间
    DBCollection 集合实例 代表一个单独的集合
    DBCursor 游标实例 代表一个查询产生的结果集
    DBLob 大对象实例 用于对大对象进行读写操作

    C# 驱动需要使用不同的实例进行操作。譬如读取数据的操作需要游标实例,而创建表空间则需要数据库实例。

  • 集群操作实例

    SequoiaDB 数据库中的集群操作分为三个级别:

    1)分区组

    2)数据节点

    3)域

    Note:

    分区组包含三种类型:协调分区组,编目分区组,数据分区组。

    分区组实例和数据节点实例及域实例可以用以下三种类的实例表示。

    名称 描述
    ReplicaGroup 分区组类 分区组实例代表一个单独的分区组
    Node 数据节点类 数据节点实例代表一个单独的数据节点
    Domain 用于管理若干个分区组

    无疑与集群相关的操作需要使用分区组及数据节点实例。

    ReplicaGroup 的实例用于管理分区组。其操作包括启动,停止分区组,获取分区组中节点的状态,名称信息,数目信息。

    Node 的实例用于管理节点。其操作包括启动,停止指定的节点,获取指定节点实例,获取主从节点实例,获取数据节点地址信息。

线程安全性

对于每一个连接,其产生的集合空间,集合公用一个套接字。因此在多线程系统中,必须确保每个线程不会同时针对同一套接字,在同一时间发送或接收数据。一般来说,不建议使用多个线程共同操作一个连接实例与其产生的其它实例。如果每个线程使用自己的连接实例以及其它产生的实例,则可以保证线程安全。

错误信息

每一个接口都会抛出 SequoiaDB.BaseException 和 System.Exception 异常,分别对应于数据库引擎返回的异常信息和客户端本地的异常信息,其中 BaseException 的异常信息可以通过该异常类的 ErrorCode,ErrorType 和 Message 属性获得。

回到顶部