[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15616465#comment-15616465
 ] 

Enrico Olivelli commented on BOOKKEEPER-912:
--------------------------------------------

[~jujjuri] the idea of having "ledger types" is very good, I was thinking at 
something similar, I will check your new issue and then add my ideas

for the scope of this issue my improvement will be only to pass the 
Map<String,byte[]> customMetadata structure to the EnsemblePlacementPolicy at 
newEnsemble and replaceBookie, this way I can drive BookKeeper to choose the 
right bookies dedending on the SLA assigned to the tenant which is owning the 
ledger

an interesting idea also it would be to make the policy variable depending on 
the "ledger type" or on some custom data. This policy-dispatcher will be 
implementable with an higher level policy which delegates to other 
implementations depending on ledger metadata

> Allow EnsemblePlacementPolicy to choose bookies using ledger custom data 
> (multitenancy support)
> -----------------------------------------------------------------------------------------------
>
>                 Key: BOOKKEEPER-912
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-912
>             Project: Bookkeeper
>          Issue Type: New Feature
>          Components: bookkeeper-client
>    Affects Versions: 4.4.0
>            Reporter: Enrico Olivelli
>            Assignee: Enrico Olivelli
>             Fix For: 4.5.0
>
>
> I would like to restrict the set of bookies to be used for a specific ledger. 
> Actually a single EnsemblePlacementPolicy is used for all the ledgers.
> This is because I want to create a ledger only using a dedicated set of 
> machines/bookies which are dedicated to the 'tenant' for which I'm creating 
> the ledger.
> We can add an optional (byte[]) parameter to asyncCreateLedger which in turn 
> is to be passed to the configured EnsemblePlacementPolicy which in turn will 
> be able to decide which are the most suitable bookies for the tenant.
> This parameter must be stored on ledger metadata, in order to be used in 
> replaceBookie. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to