HI.

I don't have the answer to the whole thing, but if option 2 is the way to
go, have a think of the Amazing http server features of MarkLogic 8:

Among other things, you have the ability to switch databases,  modules
database and modules root on-the-fly per request to the server.

In this way, its is possible to design the system with one (or more) http
servers while not actually needing 5,000 of them. There is more than enough
to use for evaluation of the request to send people to the proper dataset
or even a specific modules database for custom code.  Then you still get
your physical separation by separate databases per client without running
5,000 http servers. There are about 100 new items in the management REST
API as well that can probably take care of the majority of the automation
for this setup.


Of course, this does not help the issue of number of forests - but at least
you don't have the http servers as well..



Kind Regards,
David Ennis


David Ennis
*Content Engineer*

[image: HintTech]  <http://www.hinttech.com/>
Mastering the value of content
creative | technology | content

Delftechpark 37i
2628 XJ Delft
The Netherlands
T: +31 88 268 25 00
M: +31 63 091 72 80

[image: http://www.hinttech.com] <http://www.hinttech.com>
<https://twitter.com/HintTech>  <http://www.facebook.com/HintTech>
<http://www.linkedin.com/company/HintTech>

On 18 December 2014 at 22:50, Gary Russo <[email protected]> wrote:
>
> I’m building a MarkLogic cluster that will be used by accounting firms to
> manage client tax data.
>
>
>
> Notes:
>
> ·      Each accounting firm will have a unique set of users and clients.
>
> ·      Every accounting firm needs their own isolated “dataspace” to
> store client data.
>
> ·      Need to support 5,000 accounting firms.
>
> ·      Need to have a “physical” firewall to isolate data of each
> accounting firm.
>
> ·      It is very important to not commingle data between accounting
> firms.
>
>
>
> Example:
>
> ·      Account Firm A – Will have 20 users that will manage data for 40
> clients.
>
> ·      Account Firm B – Will have 25 users and will manage data for 100
> clients.
>
> ·      Account Firm C – Will have 100 users and will manage data for 500
> clients.
>
>
>
>
>
> I see 2 approaches: option 1 - Application/User Level and option 2 -
> Port/Database Level
>
>
>
> Option 1 is the salesforce.com approach where each firm has a unique REST
> endpoint with unique set of users/permissions.
>
>
>
> Option 2 is to give every accounting firm a unique database and port
> numbers. This means the MarkLogic cluster will have more than ~10,000
> forests with ~5,000 unique HTTP servers.
>
>
>
> If Option 2 is used, the accounting firm on boarding process will be fully
> automated. A web app will be created that will utilize the REST Management
> APIs.  => http://docs.marklogic.com/REST/management
>
>
>
>
>
> My questions:
>
> 1.       What is the best approach to support the “multiple tenants” like
> this?
>
> 2.       For option 2, is the use of unique databases/port numbers for
> 5,000 firms considered too much?
>
> 3.       For option2, how will 10,000 forests on a 3 node cluster impact
> performance considering the 2 CPU core per forest rule of thumb?
>
>
>
>
>
>
>
> *Gary Russo*
>
> *Enterprise NoSQL Developer*
>
> *Phone: 201-536-4432 <201-536-4432>*
>
> *Skype: garyprusso*
>
> *http://garyrusso.wordpress.com <http://garyrusso.wordpress.com/>*
>
>
>
> _______________________________________________
> General mailing list
> [email protected]
> http://developer.marklogic.com/mailman/listinfo/general
>
>
_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to