There's also the issue of lots of memtables flushing to disk during commit
log rotations.  Can be problematic.

On Wed, Apr 6, 2016 at 2:08 PM Michael Penick <michael.pen...@datastax.com>
wrote:

> Are the tenants using the same schema? If so, you might consider using the
> tenant's ID as part of the primary key for the tables they have in common.
>
> If they're all using different, largish schemas I'm not sure that
> Cassandra is well suited to that type of multi-tenancy. There's the per
> overhead memory pre-table and there's that fact that it's difficult to tune
> a single cluster to handle the different (probably competing) workloads
> effectively.
>
> Mike
>
> On Tue, Apr 5, 2016 at 8:40 PM, jason zhao yang <
> zhaoyangsingap...@gmail.com> wrote:
>
>> Hi Jack,
>>
>> Thanks for the reply.
>>
>> Each tenant will has around 50-100 tables for their applications.
>> probably log collection, probably account table, it's not fixed and depends
>> on tenants' need.
>>
>> There will be a team in charge of helping tenant to do data modeling and
>> access patterns. Tenants will not directly admin on the cluster, we will
>> take care.
>>
>> Yes, multi-cluster is a solution. But the cost will be quite high,
>> because each tenant's data is far less than the capacity of a 3 node
>> cluster. So I want to put multiple tenants into one clusters.
>>
>>
>>
>> Jack Krupansky <jack.krupan...@gmail.com>于2016年4月6日周三 上午10:41写道:
>>
>>> What is the nature of these tenants? Are they each creating their own
>>> data models? Is there one central authority that will approve of all data
>>> models and who can adjust the cluster configuration to support those models?
>>>
>>> Generally speaking, multi-tenancy is an anti-pattern for Cassandra and
>>> for most servers. The proper way to do multitenancy is to not do it at all,
>>> and to use separate machines or at least separate virtual machines.
>>>
>>> In particular, there needs to be a central authority managing a
>>> Cassandra cluster to assure its smooth operation. If each tenant is going
>>> in their own directions, then nobody will be in charge and capable of
>>> assuring that everybody is on the same page.
>>>
>>> Again, it depends on the nature of these tenants and how much control
>>> the cluster administrator has over them.
>>>
>>> Think of a Cassandra cluster as managing the data for either a single
>>> application or a collection of applications which share the same data. If
>>> there are multiple applications that don't share the same data, then they
>>> absolutely should be on separate clusters.
>>>
>>>
>>> -- Jack Krupansky
>>>
>>> On Tue, Apr 5, 2016 at 5:40 PM, Kai Wang <dep...@gmail.com> wrote:
>>>
>>>> Once a while the question about table count rises in this list. The
>>>> most recent is
>>>> https://groups.google.com/forum/#!topic/nosql-databases/IblAhiLUXdk
>>>>
>>>> In short C* is not designed to scale with the table count. For one each
>>>> table/CF has some fixed memory footprint on *ALL* nodes. The consensus is
>>>> you shouldn't have more than "a few hundreds" of tables.
>>>>
>>>> On Mon, Apr 4, 2016 at 10:17 AM, jason zhao yang <
>>>> zhaoyangsingap...@gmail.com> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> This is Jason.
>>>>>
>>>>> Currently, I am using C* 2.1.10, I want to ask what's the optimal
>>>>> number of tables I should create in one cluster?
>>>>>
>>>>> My use case is that I will prepare a keyspace for each of my tenant,
>>>>> and every tenant will create tables they needed. Assume each tenant 
>>>>> created
>>>>> 50 tables with normal workload (half read, half write).   so how many
>>>>> number of tenants I can support in one cluster?
>>>>>
>>>>> I know there are a few issues related to large number of tables.
>>>>> * frequent GC
>>>>> * frequent flush due to insufficient memory
>>>>> * large latency when modifying table schema
>>>>> * large amount of tombstones during creating table
>>>>>
>>>>> Is there any other issues with large number of tables? Using a 32GB
>>>>> instance, I can easily create 4000 tables with off-heap-memtable.
>>>>>
>>>>> BTW, Is this table limitation solved in 3.X?
>>>>>
>>>>> Thank you very much.
>>>>>
>>>>>
>>>>
>>>
>

Reply via email to