Skip to content

Conversation

@PierreZ
Copy link
Owner

@PierreZ PierreZ commented Dec 6, 2020

Motivation

Managed schema is a recordSpace where the schema is directly handled
by the record-store. This allow to offer a dedicated grpc service that
you can use to shim something, or offer another type of dev experience.

The first Managed schema is the KV, which offers a Key/Value experience.
It has his own grpc service that will be easier to implement. Others may
follow.

*Motivation*

Managed schema is a `recordSpace` where the schema is directly handled
by the record-store. This allow to offer a dedicated grpc service that
you can use to shim something, or offer another type of dev experience.

The first Managed schema is the KV, which offers a Key/Value experience.
It has his own grpc service that will be easier to implement. Others may
follow.
Copy link
Collaborator

@StevenLeRoux StevenLeRoux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

few comments


Record-Store is great to handle customers defined schema, but sometimes you may need to store something simple.

We are now providing dedicated `recordSpace` where the schema is directly handled by the Record-Store, lowering the difficulty to use the Record-Store. Under the hood, you will still open a `recordSpace`, but you will not be able to manipulate the schema.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove temporality (now). Would be better adopting a ligher style (we are providing => A recordSpace is a keyspace directly managed by... )


## Managed KeyValue

You want to use a simple key/value? We got you covered! We even offer a simplified gRPC service:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rework :)

return getKeySpacePath(tenant, recordSpace, "unmanaged", "data");
}

private static KeySpacePath getKeySpacePath(String tenant, String env, String recordSpaceType, String subDirectory) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't you prefer to use a constant enum or boolean instead of a string to characterize managed/unmanaged?

@PierreZ
Copy link
Owner Author

PierreZ commented Dec 20, 2020

Resolved most of your comments @StevenLeRoux, a lot of files modified as I added a formatter with gradle.

TODO: add a service to manage managedSchemas

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants