That's great in theory, but what if your customer is a national government 
(they require their data to remain within their borders) and there aren't 
enough DC's in nation to support multiple DC data distribution?

To get the throughput needed (say - if the government announces a new program 
and 30M people try to sign up at the same time) CQRS seems a likely part of the 
solution.

With Cassandra (and I'm definitely new to it), as I learn more it looks like a 
set of materialized views might be a way to achieve the goal.

Thoughts?

From: Andrew Cobley (Staff) <a.e.cob...@dundee.ac.uk>
Sent: Tuesday, December 15, 2020 11:57 AM
To: dev@cassandra.apache.org
Subject: [EXTERNAL] Re: Triggers

I may be wrong, but isn't the correct pattern for this to use two data centres? 
 You write to one data centre, replicate to the other and read from that one.  
Or am misunderstanding ?

Andy


[University of Dundee shield 
logo]<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-home&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442412850%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Ixrehte7KrUWOrVJEAEut%2FhQL2E2Ug0aRZbt6nFases%3D&reserved=0>


Andy Cobley
Senior Lecturer, Program Director Data Science and Data Engineering MSc
School of Science and Engineering, University of Dundee
+44 (0)1382 385078 (Not at present) | 
a.e.cob...@dundee.ac.uk<mailto:a.e.cob...@dundee.ac.uk>
[University of Dundee 
Facebook]<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-fb&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442412850%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=XMZmW3%2BbXmyJaVSDvAWPAe8e2y7ubJw%2BR7p2XBJJXVM%3D&reserved=0>
 [University of Dundee Twitter] 
<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-tw&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442422802%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=vrqZgx%2BT1aeT%2FmKcweRupF2FkRlMiOTqcEXjTeLLFIw%3D&reserved=0>
  [University of Dundee LinkedIn] 
<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-li&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442422802%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=2mxK7SOrBF3Q%2Bze2a8n8zhPDLFjAoexb%2FFZz2vvn2qk%3D&reserved=0>
  [University of Dundee YouTube] 
<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-yt&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442422802%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=AuOTbGCAYIzzylIlraKmZz8aopERMF2mKa%2FONYaTrDU%3D&reserved=0>
  [University of Dundee Instagram] 
<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-ig&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442432759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=gc28ZiYUWpTG%2F7knxx65ytSqzNJpAfZW1xSaDUYzaro%3D&reserved=0>
  [University of Dundee Snapchat] 
<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-sc&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442432759%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=LV5u9t0Bv%2FAfiLpqv%2BQWsl07MTRjuBU8SnyS3QWgqmE%3D&reserved=0>
One of the UK's top 20 
universities<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-strapline&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442442719%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=6lbV668OjpYmcQq8hgRXRepJmWCRWfj8xxCVbtJ1fHs%3D&reserved=0>
The Guardian University Guide 2021
[Covid code of conduct 
icons]<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fuod.ac.uk%2Fsig-cvc&data=04%7C01%7Cgolive%40microsoft.com%7Ca5f6a2b17aea4b0f1e6508d8a0f0931a%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637436302442442719%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=IuTeD3CgBxfqlULotR8tOx7KsYgZ9s%2Fu3ww4SyMv%2Bfg%3D&reserved=0>


From: Benjamin Lerer 
<benjamin.le...@datastax.com<mailto:benjamin.le...@datastax.com>>
Date: Tuesday, 15 December 2020 at 11:50
To: dev@cassandra.apache.org<mailto:dev@cassandra.apache.org> 
<dev@cassandra.apache.org<mailto:dev@cassandra.apache.org>>
Subject: Re: Triggers
Hi Greg,

Things are more tricky in an eventually consistent distributed system than
they are in a relational database. Even if the C* triggers were perfect
(and they are not) and your write and read tables were exactly the same,
there is no guarantee that all the updates created by the trigger from the
original mutations will be successfully delivered to your other table and
there are no entropy mechanisms to repair those problems. Overtime the data
in your write and read tables will just start to diverge.

On Mon, Dec 14, 2020 at 2:02 PM Greg Oliver 
<gol...@microsoft.com.invalid<mailto:gol...@microsoft.com.invalid>>
wrote:

> Hi all,
>
> My customer wants to use Cassandra together with the CQRS pattern. This is
> to say, they want to separate reads and writes to different tables,
> potentially in different keyspace or database.
>
> In my experience with relational databases I would set up a trigger on the
> "write" table such that on new row & update row events, a similar row would
> be inserted into the "read" table.
>
> I found a few examples of setting up a trigger on a Cassandra table and
> have replicated that on my system. But in reading the various Stack
> Overflow posts on the topic a persistent message saying "don't do it unless
> you really know what you're doing" pops up.
>
> Why? What are the cases for and against using triggers in Cassandra? What
> are the edge cases to avoid? What is the happy path?
>
> Thanks,
> Greg
>

The University of Dundee is a registered Scottish Charity, No: SC015096

Reply via email to