SDN-R Database for Instanbul
In Istanbul we will switch from Elasticsearch to MariaDB (min. 10.2.7). In fact that the ccsdk/sli project has already established mysql/mariadb-reader/writer we don't have to do it again, and just connect to the service provided by dblib-provider.
What we have to do is the complete object mapping, because we like to have our own yang-based implementation. So we have to create:
CREATE TABLE statements
INSERT INTO statements
SELECT FROM statements
based on yang-generated interface classes plus adapted search filter functions from data-provider to mariadb (including pagination)
In fact we like to use it as a multi-domain(multi-site) database, there will be an additional porperty for all entries called 'odl-id'.
Table structure mapping
The table structure mapping will be based on the yang-generated interface class and its getters. The java types were mapped like this:
Java Type | MariaDB Type | description |
---|---|---|
Boolean | BOOLEAN | |
Byte | TINYINT | |
Integer | INTEGER | |
Long | BIGINT | |
BigInteger | BIGINT | |
Uint8 | SMALLINT | |
Uint16 | INTEGER | |
Uint32 | BIGINT | |
Uint64 | BIGINT | |
DateAndTime | DATETIME | |
String | NVARCHAR(255) | |
Class<?> extends DataObject | JSON |
Tables
tablename | id | description |
---|---|---|
connectionlog | auto | |
controller | java-gen UUID | |
eventlog | auto | |
faultcurrent | <node-id>/<uuid>/<problem-name> | |
faultlog | auto | |
guicutthrough | ||
historicalperformance15min | <node-id>/<uuid-interface>/<time-stamp> | |
historicalperformance24h | <node-id>/<uuid-interface>/<time-stamp> | |
inventoryequipment | <node-id>/<uuid> | |
maintenancemode | <node-id> | |
mediator-server | auto | |
networkelement-connection | <node-id> |