microsoft / FishStore

FishStore is a prototype fast ingestion and querying layer for flexible-schema data
MIT License
215 stars 23 forks source link

Enhanced PSF Interface with Flattened Field Inputs #6

Open dongx-psu opened 5 years ago

dongx-psu commented 5 years ago

To support #3 , we need to enhance the PSF definition and usage interface so that user can check and make decisions on wildcard based fields.

The API (example for inline PSF) can be like this:

fishstore::core::NullableInt foo(const std::vector<std::pair<uint16_t, typename adapter_t::field_t>>& fields)

In such API, along with parsed field, corresponding field ID is given for users to refer. Field ID should be relative one in PSF making function. This means field 0 referred in the API above is refer to the first field provided in MakeInlinePSF().

Internal value passing logic in BatchInsert should be altered to match this new feature as well.