Skip to main content

index module

Meta information maintenance

     After engine-server build is successful, data-owner synchronizes the dataset meta information to the chain. Meta includes database, data table, administrator and some description information.

  • dataset_name: dataset name
  • work_status: work status; 0: not set; 1 has started providing services; 2 has stopped providing services; 3 has been deleted
  • owner_address: dataset owner
  • expiration_time: expiration time
  • hosts: dataset domain name, users can use this domain name to request the dataset
  • manage_addresses: dataset management address, currently this address has no actual use scenario, and this field will be used to manage the dataset in the future
  • tables: dataset table collection
  • sum_cpdt: dataset's cousumer total collateral
  • description: dataset's description information, including some social information and reporting information
  • update_time: dataset's update time on the chain

Renewal Management

    When creating a dataset, a certain amount of GLI is consumed. Currently, setting 1 dataset requires 31.5 GLI per year, which can be defined in the system through the parameter fee_per_dataset_per_second. The expiration time can be viewed through the chain's API. When the dataset expires, it will enter a 30-day duration period, during which it can still be renewed. After the duration period, the dataset's mata information will be deleted, and the collateral on the dataset will be returned by the original route.

protocol

dataset

    dataset represents the meta information stored on the chain, field meaning


message Dataset {
string dataset_name = 1;
ServiceStatus work_status = 2;
string owner_address = 3;
google.protobuf.Timestamp expiration_time = 4 [(gogoproto.nullable) = false, (gogoproto.stdtime) = true];
string hosts = 5;
string manage_addresses = 6;
repeated Table tables = 7
[
(gogoproto.nullable) = false
];
string sum_cpdt = 8 //consumer pledge dataset token
[
(gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int",
(gogoproto.nullable) = false,
(gogoproto.customname) = "SumCPDT"
];
string description = 9;
google.protobuf.Timestamp update_time = 10
[(gogoproto.nullable) = false, (gogoproto.stdtime) = true, (gogoproto.moretags) = "yaml:\"update_time\""];
}

message Table{
string table_name = 1;
string description = 2;
google.protobuf.Timestamp update_time = 3
[(gogoproto.nullable) = false, (gogoproto.stdtime) = true, (gogoproto.moretags) = "yaml:\"update_time\""];
}

params

message Params {
option (gogoproto.goproto_stringer) = false;
string fee_per_dataset_per_second = 1
[(gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int", (gogoproto.nullable) = false];
int64 grace_period = 2;
}
  • fee_per_dataset_per_second: How much AGLI is consumed per dataset per second
  • grace_period: How long can the dataset be retained after it expires