Scaled Load¶
The Scaled load template allows you to apply a factor value (such as order of magnitude, or negative value) and currency type to a set of ledgers. If occurency_key_column is included, it will be used to match occurrences for merging values together.
Suppose these ledgers have been created in S3:
s3://example_bucket/uploads/ledgers/test-files/parquet/general/simple.parquet
s3://example_bucket/uploads/ledgers/test-files/parquet/general/one.parquet
The general structure of the Scaled Load template in Graphene is:
{
"_schema": "ScaledLoad_1.0",
"paths": ["s3://example_bucket/uploads/ledgers/test-files/parquet/general/simple.parquet","s3://example_bucket/uploads/ledgers/test-files/parquet/general/one.parquet"],
"factor": -1,
"currency": "DOUBLE",
}
or
{
"_schema": "ScaledLoad_1.0",
"paths": ["s3://example_bucket/uploads/ledgers/test-files/parquet/general/record_level_currency.parquet"],
"factor": -1,
"currency_colunn": "Currency",
}
Parameters¶
The parameters are defined as follows:
Parameter Name |
Required |
Type |
Description |
---|---|---|---|
|
Yes |
|
Amount that the result will by multiplied by. For example, if you have a factor of -1 then all numbers in the result will be negative. |
|
No |
|
Currency that the ledger(s) are defined in, will be used to convert into the base currency. |
|
Yes |
|
Ledger(s) path location on s3 |
|
No |
|
Name of column to use as the occurrence key. If not provided, no occurrence key is used. |
|
No |
|
Name of column used to specify currencies of the individual records. If proficed, will be used to convert records into base currency. |
Behavior¶
In the first case, all ledgers located at the path
will be multiplied by factor
and be converted from their currency
value into the base currency.
In the second case, each record in the ledger will be multiplied by factor
and be converted from the currency stored in currency_column
into the base currency.
If the currency
and currency_column
values was omitted, it will still apply the factor
value to the ledger(s).
Note
it is not allowed to specify both currency
and currency_column
at the same time.
Multi-partition files are supported.
Example¶
User uploads ledger, currency
is set to “DOUBLE” and factor
is set to -1.
Ledger 1 (simple.parquet):
Trial |
Time |
Type |
Value |
Region |
Peril |
Ints |
Floats |
---|---|---|---|---|---|---|---|
1 |
1 |
Loss |
1 |
FL |
HU |
1 |
1 |
1 |
2 |
Loss |
2 |
FL |
HU |
2 |
2 |
1 |
3 |
Loss |
3 |
SC |
HU |
3 |
3 |
1 |
4 |
Loss |
4 |
CA |
EQ |
4 |
4 |
2 |
1 |
Loss |
1 |
FL |
HU |
5 |
5 |
2 |
1 |
Loss |
1 |
CA |
EQ |
6 |
6 |
4 |
1 |
Loss |
1 |
FL |
HU |
7 |
7 |
4 |
2 |
Loss |
2 |
FL |
HU |
8 |
8 |
4 |
2 |
Loss |
2 |
FL |
HU |
9 |
9 |
5 |
3 |
Fee |
3 |
nan |
nan |
||
8 |
2 |
Loss |
2 |
FL |
HU |
11 |
11 |
Leger 2 (one.parquet):
Trial |
Time |
Type |
Value |
---|---|---|---|
1 |
1 |
Loss |
1 |
2 |
1 |
Loss |
1 |
3 |
1 |
Loss |
1 |
4 |
1 |
Loss |
1 |
5 |
1 |
Loss |
1 |
6 |
1 |
Loss |
1 |
7 |
1 |
Loss |
1 |
8 |
1 |
Loss |
1 |
9 |
1 |
Loss |
1 |
10 |
1 |
Loss |
1 |
Output ledger:
Trial |
Time |
Type |
Value |
---|---|---|---|
1 |
1 |
Loss |
-0.5 |
1 |
1 |
Loss |
-0.5 |
1 |
2 |
Loss |
-1.0 |
1 |
3 |
Loss |
-1.5 |
1 |
4 |
Loss |
-2.0 |
2 |
1 |
Loss |
-0.5 |
2 |
1 |
Loss |
-0.5 |
2 |
1 |
Loss |
-0.5 |
3 |
1 |
Loss |
-0.5 |
4 |
1 |
Loss |
-0.5 |
4 |
1 |
Loss |
-0.5 |
4 |
2 |
Loss |
-1.0 |
4 |
2 |
Loss |
-1.0 |
5 |
1 |
Loss |
-0.5 |
5 |
3 |
Fee |
-1.5 |
6 |
1 |
Loss |
-0.5 |
7 |
1 |
Loss |
-0.5 |
8 |
1 |
Loss |
-0.5 |
8 |
2 |
Loss |
-1.0 |
9 |
1 |
Loss |
-0.5 |
10 |
1 |
Loss |
-0.5 |
Example notes:¶
Scaled Load is defined in currency “DOUBLE” which means a 1 in the parquet files will result in a 0.5 in the output.
For the currency
parameter, a list of codes can be found at the following link; currency code . More details on currency
can be found on our Currency Exchange page.
Example 2¶
User uploads ledger with currency_column
is set to “Currency”, and factor
is set to -1.
Input ledger:
Trial |
Time |
Type |
Value |
Currency |
Peril |
Ints |
Floats |
---|---|---|---|---|---|---|---|
1 |
1 |
Loss |
1 |
DOUBLE |
HU |
1 |
1 |
1 |
2 |
Loss |
2 |
HALF |
HU |
2 |
2 |
1 |
3 |
Loss |
3 |
USD |
HU |
3 |
3 |
Output ledger:
Trial |
Time |
Type |
Value |
---|---|---|---|
1 |
1 |
Loss |
-0.5 |
1 |
2 |
Loss |
-4 |
1 |
3 |
Loss |
-3 |
Example notes:¶
This example depends on DOUBLE, HALF, and USD having rates 0.5, 2 and 1 in the exchange rate table.