This how-to shows you how to generate a digital Odometer with the column sequence generator.
This page demonstrates the tickerFor property that is used to fill unique columns constraint mostly.
The tickerFor property will tick another column, meaning that the generator associated will generate a new value.
To generate data, you need to create a generator file that will describe the data to be generated.
The below data resource generator:
kind: generator
spec:
Columns:
- name: id
type: integer
comment: A id column to see easily the number of values generated
data-supplier:
type: sequence
- name: x
type: integer
comment: A column with a sequence date generator
data-supplier:
type: sequence
arguments:
start: 0
# number from 0 to 9 will be generated (10 elements)
maxTick: 10
- name: y
type: integer
comment: A column with a sequence timestamp generator
data-supplier:
type: sequence
arguments:
start: 0
# number from 0 to 9 will be generated (10 elements)
maxTick: 10
# the x column will go to the next value when this sequence has reach its last value
tickerFor: x
- name: z
type: integer
comment: A column with a sequence timestamp generator
data-supplier:
type: sequence
arguments:
start: 0
# number from 0 to 9 will be generated (10 elements)
maxTick: 10
# the y column will go to the next value when this sequence has reach its last value
tickerFor: y
With the data head command, we can print the values generated.
tabul data head --limit 101 sequence_odometer--generator.yml@howto
The first 101 rows of the data resource (sequence_odometer@memgen):
id x y z
--- - - -
1 0 0 0
2 0 0 1
3 0 0 2
4 0 0 3
5 0 0 4
6 0 0 5
7 0 0 6
8 0 0 7
9 0 0 8
10 0 0 9
11 0 1 0
12 0 1 1
13 0 1 2
14 0 1 3
15 0 1 4
16 0 1 5
17 0 1 6
18 0 1 7
19 0 1 8
20 0 1 9
21 0 2 0
22 0 2 1
23 0 2 2
24 0 2 3
25 0 2 4
26 0 2 5
27 0 2 6
28 0 2 7
29 0 2 8
30 0 2 9
31 0 3 0
32 0 3 1
33 0 3 2
34 0 3 3
35 0 3 4
36 0 3 5
37 0 3 6
38 0 3 7
39 0 3 8
40 0 3 9
41 0 4 0
42 0 4 1
43 0 4 2
44 0 4 3
45 0 4 4
46 0 4 5
47 0 4 6
48 0 4 7
49 0 4 8
50 0 4 9
51 0 5 0
52 0 5 1
53 0 5 2
54 0 5 3
55 0 5 4
56 0 5 5
57 0 5 6
58 0 5 7
59 0 5 8
60 0 5 9
61 0 6 0
62 0 6 1
63 0 6 2
64 0 6 3
65 0 6 4
66 0 6 5
67 0 6 6
68 0 6 7
69 0 6 8
70 0 6 9
71 0 7 0
72 0 7 1
73 0 7 2
74 0 7 3
75 0 7 4
76 0 7 5
77 0 7 6
78 0 7 7
79 0 7 8
80 0 7 9
81 0 8 0
82 0 8 1
83 0 8 2
84 0 8 3
85 0 8 4
86 0 8 5
87 0 8 6
88 0 8 7
89 0 8 8
90 0 8 9
91 0 9 0
92 0 9 1
93 0 9 2
94 0 9 3
95 0 9 4
96 0 9 5
97 0 9 6
98 0 9 7
99 0 9 8
100 0 9 9
Because a generator is just a data resource, you can use it in every data operation.
How to use a generator in a data operation