summaryrefslogtreecommitdiffstats
path: root/infra/data-impl/Readme.adoc
blob: 61b2653b3927f63c3b888561f9e68659c9144757 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
= Honeycomb Data layer. Implementation

Models CONFIG data store as a DataTree.

Every read transaction reads directly from the DataTree.
Every write transaction is validated, then passed to the translation layer.
After successful update, config data tree is updated.

OPERATIONAL data store reads are passed directly to the translation layer.

Data transaction functionality for higher layers (i.e NETCONF/RESTCONF layer) is provided by DataBroker.

[ditaa, "data-layer-architecture"]
....
                   /------------------\
                   | RESTCONF/NETCONF |
                   \--------+---------/
                            |
----------------------------|------------------------------------
                            v
                   /------------------\
                   |    DataBroker    |
                   \-+--------------+-/
                     |              |
                     | read         | read/write
 Honeycomb           v              v
 data layer   /------+------\    /--+--------\       /----------\
              |             |    |           |       |          |
              | Operational |    | Config    +------>+ DataTree +
              | DataTree    |    | DataTree  |       |          |
              |             |    |           |       \----------/
              \------+------/    \--+--------/
                     |              |
---------------------|--------------|----------------------------
                     v              v
               /-----+--------------+-----\
               |     Translation layer    |
               \--------------------------/
....