I'm in the process of evaluating several ETL tools for my company and am on Pentaho. I'm finding documentation, tutorials and blogs lacking in the information I need. My use case is simple: I'm going to receive a JSON payload via HTTP, restructure it and ship it off somewhere via HTTP. The input schema and the output schema can be wildly different.
I've been staring at the Value Mapper component and it appears to operate on only a single field at a time (there could be dozens!) and I don't see a way to alter its jsPath. JsonOutput looks closer, but again I don't see a way to restructure the data - just accept the fields that it is getting from the previous step and name them.
Is there a mechanism for doing this in Pentaho? Mapping a Json Object from schema A to schema B? I would also need to have the ability to do transformations on the values, change the names of fields, infer / calculate new fields (but I'm willing to start small).
The first step would be to read all required fields using the JSON input step. Done right, this will give you a stream of columns.
Now, you can use the standard transformation steps such as Select Value, Add Constants, Formula Evaluator, Modified JavaScript step and more to yield the desired output. Eventually, you could write that using the JSON output step.
Note that most transformations in PDI actually consist of multiple small steps, each doing just one small thing.