<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=DistOS_2021F_2021-11-02</id>
	<title>DistOS 2021F 2021-11-02 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=DistOS_2021F_2021-11-02"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS_2021F_2021-11-02&amp;action=history"/>
	<updated>2026-05-14T08:42:19Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS_2021F_2021-11-02&amp;diff=23432&amp;oldid=prev</id>
		<title>Soma: Created page with &quot;==Notes==  &lt;pre&gt; Lecture 13: Cassandra &amp; Dynamo ------------------------------  - haven&#039;t graded midterm, will do so by next week     - I had to submit a grant app on Monday...&quot;</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=DistOS_2021F_2021-11-02&amp;diff=23432&amp;oldid=prev"/>
		<updated>2021-11-03T00:04:50Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==Notes==  &amp;lt;pre&amp;gt; Lecture 13: Cassandra &amp;amp; Dynamo ------------------------------  - haven&amp;#039;t graded midterm, will do so by next week     - I had to submit a grant app on Monday...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Notes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Lecture 13: Cassandra &amp;amp; Dynamo&lt;br /&gt;
------------------------------&lt;br /&gt;
 - haven&amp;#039;t graded midterm, will do so by next week&lt;br /&gt;
    - I had to submit a grant app on Monday&lt;br /&gt;
&lt;br /&gt;
 - will have grades on midterm before proposal is due&lt;br /&gt;
    - you have until Nov 9th&lt;br /&gt;
&lt;br /&gt;
Algorithm for making a proposal (for a lit review)&lt;br /&gt;
 - find a paper you like/find interesting that is related to the course&lt;br /&gt;
   - make sure it is a good one, published somewhere reputable&lt;br /&gt;
     (ACM/IEEE isn&amp;#039;t sufficient)&lt;br /&gt;
   - preferably with reasonable number of citations&lt;br /&gt;
&lt;br /&gt;
From that paper, find a related set of papers&lt;br /&gt;
 - related to *one aspect* of the paper&lt;br /&gt;
 - see citations (who the paper cites, who cites the paper)&lt;br /&gt;
 - follow graph and search keywords to expand out&lt;br /&gt;
&lt;br /&gt;
I prefer using a CS-standard citation format (like the papers we read use)&lt;br /&gt;
&lt;br /&gt;
I prefer individual projects.  If you want to do pairs it is possible -&lt;br /&gt;
  but there has to be a clear division of responsibilities&lt;br /&gt;
  (so assume no unless it makes sense for the topic and you ask me)&lt;br /&gt;
&lt;br /&gt;
(Partners make more sense if you&amp;#039;re building something.)&lt;br /&gt;
&lt;br /&gt;
related to this class: can relate to &amp;quot;distributed&amp;quot; and &amp;quot;operating system&amp;quot;&lt;br /&gt;
 - can&amp;#039;t just be distributed or OS related&lt;br /&gt;
&lt;br /&gt;
Try not to start with papers we&amp;#039;ve covered in class&lt;br /&gt;
 - branch out, search!&lt;br /&gt;
 - use ones related to your other interests&lt;br /&gt;
&lt;br /&gt;
You should look for patterns amongst the papers you identify as being related.  Your paper&amp;#039;s argument is showing that that pattern exists and how it connects to the papers you find.&lt;br /&gt;
 - don&amp;#039;t just list summaries of papers, that&amp;#039;s not a lit review&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
On to the papers&lt;br /&gt;
&lt;br /&gt;
relational databases were inspired by the needs of airline reservation systems&lt;br /&gt;
&lt;br /&gt;
dynamo was inspired by the needs of e-commerce shopping carts&lt;br /&gt;
 - so writes (users selecting something to buy always gets saved)&lt;br /&gt;
&lt;br /&gt;
other systems will refuse writes when they&amp;#039;ll make the system inconsistent&lt;br /&gt;
 - so client has to retry&lt;br /&gt;
&lt;br /&gt;
dynamo always accepts writes, even when they&amp;#039;ll make things inconsistent&lt;br /&gt;
 - so how do they deal with inconsistency?&lt;br /&gt;
   - when data is read&lt;br /&gt;
   - use application specific semantics to reconcile conflicts&lt;br /&gt;
     in the client&lt;br /&gt;
     (like with source code version control - the programmer&lt;br /&gt;
      has to manually figure out how to reconcile conflicts)&lt;br /&gt;
&lt;br /&gt;
A hard problem in any distributed system is determining a canonical order of events&lt;br /&gt;
 - in principle this can not exist, but we may need an ordering anyway&lt;br /&gt;
&lt;br /&gt;
A ring is the simplest topolgy that remains connected when you lose a node&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
</feed>