aboutsummaryrefslogtreecommitdiff
#
msgid ""
msgstr ""

msgid ""
"title: \"Datomic on global: good reasons for and against it\"\n"
"date: 2020-10-22\n"
"layout: slides\n"
"lang: en\n"
"ref: datomic-on-global-good-reasons-for-and-against-it\n"
"published: false"
msgstr ""

msgid "Datomic on global"
msgstr ""

msgid "**Good** reasons for and against it"
msgstr ""

msgid "When creating a new service..."
msgstr ""

msgid "...which is, in my opinion, a poor heuristic."
msgstr ""

msgid "notifications vs toasty"
msgstr ""

msgid "jurassic-park vs auth"
msgstr ""

msgid "Thank you!"
msgstr ""

msgid "References:"
msgstr ""

msgid "these slides: [{{ site.tld }}/slides.html]({% link slides.md %})"
msgstr ""

msgid ""
"[prose version of this presentation]({% link _articles/2020-10-22-datomic-"
"on-global-good-reasons-for-and-against-it.md %})"
msgstr ""

msgid "Premise"
msgstr ""

msgid "Datomic's bottleneck is **write** throughput, not read"
msgstr ""

msgid ""
"(defn database-for-service\n"
"  [service]\n"
"  (let [prototype (prototype-for-service service)]\n"
"    (if (= :global prototype)\n"
"      :datomic\n"
"      #{:dynamodb :redis :nothing})))\n"
msgstr ""

msgid ""
"The deciding factor shouldn't be the prototype, but the **cardinality**"
msgstr ""

msgid ""
" (defn database-for-service\n"
"   [service]\n"
"-  (let [prototype (prototype-for-service service)]\n"
"-    (if (= :global prototype)\n"
"-      :datomic\n"
"-      #{:dynamodb :redis :nothing})))\n"
"+  (let [cardinality (cardinality-for-service service)]\n"
"+    (if (= :too-high cardinality)\n"
"+      #{:dynamodb :redis :nothing\n"
"+      :datomic))))\n"
msgstr ""

msgid ""
"(defn database-for-service\n"
"  [service]\n"
"  (let [cardinality (cardinality-for-service service)]\n"
"    (if (= :too-high cardinality)\n"
"      #{:dynamodb :redis :nothing\n"
"      :datomic))))\n"
msgstr ""

msgid "But how to determine when the cardinality is"
msgstr ""

msgid "**`:too-high`**?"
msgstr ""

msgid "Let's think about the cardinality of existing services we know"
msgstr ""

msgid "What is the cardinality of..."
msgstr ""

msgid "savings-accounts"
msgstr ""

msgid "inductor"
msgstr ""

msgid "crebito"
msgstr ""

msgid "diablo"
msgstr ""

msgid "lost-boy?"
msgstr ""

msgid "hook?"
msgstr ""

msgid "ledger"
msgstr ""

msgid "blackleach"
msgstr ""

msgid "notification"
msgstr ""

msgid "toasty"
msgstr ""

msgid "auth"
msgstr ""

msgid "waypoint"
msgstr ""

msgid "jurassic-park"
msgstr ""

msgid "Compare the database choice of services with similar cardinalities:"
msgstr ""

msgid "Compare different cardinalities for services on global prototype:"
msgstr ""

msgid ""
"Compare different cardinality for different services inside the same domain:"
msgstr ""

msgid "savings-accounts -> blackleach -> diablo -> ledger"
msgstr ""

msgid ""
"\"[Understanding Database "
"Sharding](https://www.digitalocean.com/community/tutorials/understanding-"
"database-sharding)\""
msgstr ""

#~ msgid ""
#~ "(defn prototype->database\n"
#~ "  [prototype]\n"
#~ "  (if (= :global prototype)\n"
#~ "    :datomic\n"
#~ "    #{:dynamodb :redis :nothing}))\n"
#~ msgstr ""

#~ msgid "blackleach -> diablo -> ledger"
#~ msgstr ""