This is the multi-page printable view of this section. Click here to print.
Team IL
1 -
1.1 -
Property | Type | Description |
---|---|---|
(Root) |
object |
|
logisticsProductId* |
string |
technical 'logistics product ID' Maximum Length: 36 |
dateOfInformation* |
string (date) |
Date of creation |
predictionDay1* |
number (double) |
Value of Prediction for day= today + 1 |
predictionDay2* |
number (double) |
Value of Prediction for day= today + 2 |
predictionDay3* |
number (double) |
Value of Prediction for day= today + 3 |
predictionDay4* |
number (double) |
Value of Prediction for day= today + 4 |
predictionDay5* |
number (double) |
Value of Prediction for day= today + 5 |
predictionDay6* |
number (double) |
Value of Prediction for day= today + 6 |
predictionDay7* |
number (double) |
Value of Prediction for day= today + 7 |
predictionRangeShort* |
number (double) |
Value of Prediction as sum of the prediction values in range 8 to 20 days |
predictionRangeMiddle* |
number (double) |
Value of Prediction as sum of the prediction values in range 21 to 92 days |
predictionRangeLong* |
number (double) |
Value of Prediction as sum of the prediction values in range 93 to 365 days |
1.2 -
Property | Type | Description |
---|---|---|
(Root) |
object |
|
logisticsProductId* |
string |
technical 'logistics product ID' Maximum Length: 36 |
dateOfInformation* |
string (date) |
Date of creation |
ottoProperties |
object |
|
subKategoryId |
integer |
OTTO sub kategory Id |
itemCommunicationKey |
integer |
Communication Key Minimum: 0 |
itemOptionCommunicationKey |
integer |
Communication Key Minimum: 0 |
whitemno |
integer |
OTTO internal warehouse item number |
predSource |
string |
Source of prediction |
ddtDate |
string (date) |
Deal of the day |
absatz_3d |
number |
Absatz 3D |
absatz_7d |
number |
Absatz 7D Minimum: 0 |
absatz_14d |
number |
Absatz 14D Minimum: 0 |
absatz_21d |
number |
Absatz 21D Minimum: 0 |
absatz_42d |
number |
Absatz 42D Minimum: 0 |
absatz_120d |
number |
Absatz 120D Minimum: 0 |
run_id |
string |
RunId |
2 - S10 Product Sales Forecasting
- Status
-
V1.01, published 02.06.2023
- Comment
-
Die erste Version stellt die Anbindung der Absatzprognose von BRAIN an FLASH dar.
1. Stakeholder
Role | Application | Responsible |
---|---|---|
Communication |
Integration Layer |
Team FINE IL |
Leading App |
FLASH |
|
InterfaceOwner |
Team Flash Domain ??? |
|
Producer |
BRAIN |
Team BRAIN |
Consumer |
FLASH |
Team Flash Domain ??? |
Consumer |
kMotion |
Team Neon kMotion Ilowa |
2. Business Context
Die Prognosedaten werden zur Optimierung der Bestandsverteilung und Warenflüsse im LVS K.Motion, in FLASH sowie in Semper benötigt. Aus BRAIN wird dazu einmal täglich ein Topic als Snapshot in FINE bereitgestellt. Ein Aggregationsprozess erzeugt aus diesem eingehenden Messages separate Output-Topics:
-
Spezielle Aggregation je SKU für kMotion mit tägliche Prognosewerte je SKU für die nächsten 7 Tage und aggregierte Summe der Prognosewerte je SKU für folgende Zeitbereiche:
-
Short=Tage 8 bis 20
-
Middle=Tage 21 bis 92
-
Long=Tage 93 bis 365
-
-
Spezielle Aggregation je SKU in der Perspektive von 3, 7, 14, 21, 42, 120 Tagen - benötigt von FLASH, spezieller Cloud Process, der sich zum ItemOptionCommKey die zugehörige LogisticsProductId aus der masterdata.product… heranzieht.
3. Informationflow
Partner | Direction | FINE-Service | Topic/API | Description | Status |
---|---|---|---|---|---|
otto:brain |
send |
StockSalesForeCast-Service |
BrainForecastAggregator |
active |
|
LVS:kMotion |
receive |
StockSalesForeCast-Service |
stock.product_sales_forecast.kmotion |
ProductSalesForecast.kmotion |
active |
FINE:Flash |
receive |
StockSalesForeCast-Service |
stock.product_sales_forecast.flash |
FLASH internal |
active |
4. Interface
4.1. Technical Description
The interface is based on the Apache Kafka technology. The data is transferred in JSON format.
-
8 partitions,
-
Cleanup Policy: compact + delete,
-
retention time of 3 days,
-
compaction enabled !
-
without use of tombstones,
-
key is
itemOptionCommunicationKey
-
4.2. Header
This interface has no (standard) header. Motivation/reasons for this decision:
-
large size of this interface (about 800 mio messages)
-
the info are normally include in data header is already contain in data block
4.3. Datamodel
Topic stock.product_sales_forecast.kmotion
Property | Type | Description |
---|---|---|
(Root) |
object |
|
logisticsProductId* |
string |
technical 'logistics product ID' Maximum Length: 36 |
dateOfInformation* |
string (date) |
Date of creation |
predictionDay1* |
number (double) |
Value of Prediction for day= today + 1 |
predictionDay2* |
number (double) |
Value of Prediction for day= today + 2 |
predictionDay3* |
number (double) |
Value of Prediction for day= today + 3 |
predictionDay4* |
number (double) |
Value of Prediction for day= today + 4 |
predictionDay5* |
number (double) |
Value of Prediction for day= today + 5 |
predictionDay6* |
number (double) |
Value of Prediction for day= today + 6 |
predictionDay7* |
number (double) |
Value of Prediction for day= today + 7 |
predictionRangeShort* |
number (double) |
Value of Prediction as sum of the prediction values in range 8 to 20 days |
predictionRangeMiddle* |
number (double) |
Value of Prediction as sum of the prediction values in range 21 to 92 days |
predictionRangeLong* |
number (double) |
Value of Prediction as sum of the prediction values in range 93 to 365 days |
Topic stock.product_sales_forecast.flash
Property | Type | Description |
---|---|---|
(Root) |
object |
|
logisticsProductId* |
string |
technical 'logistics product ID' Maximum Length: 36 |
dateOfInformation* |
string (date) |
Date of creation |
ottoProperties |
object |
|
subKategoryId |
integer |
OTTO sub kategory Id |
itemCommunicationKey |
integer |
Communication Key Minimum: 0 |
itemOptionCommunicationKey |
integer |
Communication Key Minimum: 0 |
whitemno |
integer |
OTTO internal warehouse item number |
predSource |
string |
Source of prediction |
ddtDate |
string (date) |
Deal of the day |
absatz_3d |
number |
Absatz 3D |
absatz_7d |
number |
Absatz 7D Minimum: 0 |
absatz_14d |
number |
Absatz 14D Minimum: 0 |
absatz_21d |
number |
Absatz 21D Minimum: 0 |
absatz_42d |
number |
Absatz 42D Minimum: 0 |
absatz_120d |
number |
Absatz 120D Minimum: 0 |
run_id |
string |
RunId |
4.4. Schemata
Version |
Number |
File |
Published on |
Changes |
current version |
1.0 |
21.10.2023 |
initial version |
|
coming version |
||||
previous version |
Version |
Number |
File |
Published on |
Changes |
current version |
1.0 |
10.08.2023 |
initial version |
|
coming version |
||||
previous version |
4.5. Examples
{
"logisticsProductId": "27634458",
"dateOfInformation": "2023-08-10",
"predictionDay1": 0.09817549220074082,
"predictionDay2": 0.23,
"predictionDay3": 0.12,
"predictionDay4": 1.34,
"predictionDay5": 0.56,
"predictionDay6": 0.59,
"predictionDay7": 0.23,
"predictionRangeShort": 3.7,
"predictionRangeMiddle": 23.5,
"predictionRangeLong": 2345.3
}
{
"logisticsProductId": "27634458",
"dateOfInformation": "2023-08-10",
"ottoProperties": {
"subKategoryId": 117,
"itemCommunicationKey": "1662951323",
"itemOptionCommunicationKey": "1662951325",
"whitemno": 13247253,
"predSource": "450_DAYS_ROBUST_MODEL",
"ddtDate": null
},
"absatz_3d": 0.09817549220074082,
"absatz_7d": 0.2340979450089125,
"absatz_14d": 0.4322376129593085,
"absatz_21d": 0.6534741978100929,
"absatz_42d": 1.3121628241976917,
"absatz_120d": 3.216699556284073,
"run_id": "2023-08-10T02:53:09"
}