Benefit of Extractor?
what is the benefit of using extractor if only a single authorize party can extract only its data?
Can you expand on your question? I’m not sure I follow. Seeing only the data visible to a party is a privacy feature intrinsic in DAML. All the Extractor does is using the Ledger API to expose one’s data on a relational database. What would you like to be able to do with Extractor?
I read in docs that extractor is useful for -
- Business analysts to analyze ledger data and create reports
how it is going to be useful when we can extract only single person data.
It depends on what you mean by “single person”. Extractor asks data on behalf of a party and reads all data visibile to the party. This means that the privacy guarantees of DAML are preserved as Extractor reads data via the Ledger API. If you want to do large scale analysis, you would need to be some form of market intermediary party that is (consensually with other parties via agreed-upon smart contracts) able to see a large chunk of data. In any other situation seeing more data than the one visible to one’s party would be a violation of DAML’s privacy guarantees.
Note that the extractor can also subscribe to the ledger as multiple parties:
--party <value> The party or parties whose contract data should be extracted.
Specify multiple parties separated by a comma, e.g. Foo,Bar
I think in this case i must have all party jwt keys ?
Yes, of course, you can only extract the data for parties which you have access to. But say you wanted to create a report on all accounts that you manage, you could use the extractor to dump all ledger data into a pSQL database and then query that.