version ddn-next-1 publication "publication:diagram" with id "publication:diagram" title "10 / Shards, copies and placement" targets item target id "diagram" kind "view" format "svg" page size "content" width value 1600 unit "px" height value 1080 unit "px" margin top 30 right 30 bottom 30 left 30 minimum_text 10.666666666666666 element "ddn.usecases.commerce::tables.customer.customer_id" as "field" with id "ddn.usecases.commerce::tables.customer.customer_id" title "customer_id" properties key "primary" domain id "ddn.usecases.commerce::domains.customer_id" content parent id "ddn.usecases.commerce::tables.customer" ordinal 0 domain id "ddn.usecases.commerce::domains.customer_id" key "primary" element "ddn.usecases.commerce::tables.customer.display_name" as "field" with id "ddn.usecases.commerce::tables.customer.display_name" title "display_name" content parent id "ddn.usecases.commerce::tables.customer" ordinal 1 element "ddn.usecases.commerce::tables.customer.status" as "field" with id "ddn.usecases.commerce::tables.customer.status" title "status" content parent id "ddn.usecases.commerce::tables.customer" ordinal 2 element "ddn.usecases.commerce::tables.customer" as "table" with id "ddn.usecases.commerce::tables.customer" title "Customer" description "Authority for the customer registry, not for every customer attribute in all systems." facets workload item "OLTP" authority item "AUTH" properties level "definition" workload item "oltp" role "authoritative" metadata x_record layout_group "authoritative" members item id "ddn.usecases.commerce::tables.customer.customer_id" item id "ddn.usecases.commerce::tables.customer.display_name" item id "ddn.usecases.commerce::tables.customer.status" data columns item id "field" label "field" item id "type" label "type" item id "domain" label "domain" item id "constraint" label "constraint" item id "key" label "key" item id "comment" label "comment" rows item item "customer_id" item null item id "ddn.usecases.commerce::domains.customer_id" item null item "primary" item null item item "display_name" item null item null item null item null item null item item "status" item null item null item null item null item null element "ddn.usecases.commerce::tables.orders.order_id" as "field" with id "ddn.usecases.commerce::tables.orders.order_id" title "order_id" properties key "primary" domain id "ddn.usecases.commerce::domains.order_id" content parent id "ddn.usecases.commerce::tables.orders" ordinal 0 domain id "ddn.usecases.commerce::domains.order_id" key "primary" element "ddn.usecases.commerce::tables.orders.customer_id" as "field" with id "ddn.usecases.commerce::tables.orders.customer_id" title "customer_id" properties domain id "ddn.usecases.commerce::domains.customer_id" content parent id "ddn.usecases.commerce::tables.orders" ordinal 1 domain id "ddn.usecases.commerce::domains.customer_id" element "ddn.usecases.commerce::tables.orders.ordered_at" as "field" with id "ddn.usecases.commerce::tables.orders.ordered_at" title "ordered_at" content parent id "ddn.usecases.commerce::tables.orders" ordinal 2 element "ddn.usecases.commerce::tables.orders" as "table" with id "ddn.usecases.commerce::tables.orders" title "Orders" facets workload item "OLTP" properties level "definition" workload item "oltp" members item id "ddn.usecases.commerce::tables.orders.order_id" item id "ddn.usecases.commerce::tables.orders.customer_id" item id "ddn.usecases.commerce::tables.orders.ordered_at" data columns item id "field" label "field" item id "type" label "type" item id "domain" label "domain" item id "constraint" label "constraint" item id "key" label "key" item id "comment" label "comment" rows item item "order_id" item null item id "ddn.usecases.commerce::domains.order_id" item null item "primary" item null item item "customer_id" item null item id "ddn.usecases.commerce::domains.customer_id" item null item null item null item item "ordered_at" item null item null item null item null item null element "ddn.usecases.commerce::tables.line.line_id" as "field" with id "ddn.usecases.commerce::tables.line.line_id" title "line_id" properties key "primary" content parent id "ddn.usecases.commerce::tables.line" ordinal 0 key "primary" element "ddn.usecases.commerce::tables.line.order_id" as "field" with id "ddn.usecases.commerce::tables.line.order_id" title "order_id" content parent id "ddn.usecases.commerce::tables.line" ordinal 1 element "ddn.usecases.commerce::tables.line.sku" as "field" with id "ddn.usecases.commerce::tables.line.sku" title "sku" content parent id "ddn.usecases.commerce::tables.line" ordinal 2 element "ddn.usecases.commerce::tables.line.quantity" as "field" with id "ddn.usecases.commerce::tables.line.quantity" title "quantity" content parent id "ddn.usecases.commerce::tables.line" ordinal 3 element "ddn.usecases.commerce::tables.line" as "table" with id "ddn.usecases.commerce::tables.line" title "Order line" facets workload item "OLTP" properties level "definition" workload item "oltp" members item id "ddn.usecases.commerce::tables.line.line_id" item id "ddn.usecases.commerce::tables.line.order_id" item id "ddn.usecases.commerce::tables.line.sku" item id "ddn.usecases.commerce::tables.line.quantity" data columns item id "field" label "field" item id "type" label "type" item id "domain" label "domain" item id "constraint" label "constraint" item id "key" label "key" item id "comment" label "comment" rows item item "line_id" item null item null item null item "primary" item null item item "order_id" item null item null item null item null item null item item "sku" item null item null item null item null item null item item "quantity" item null item null item null item null item null element "ddn.usecases.deployment::model.shard" as "shard" with id "ddn.usecases.deployment::model.shard" title "Orders / shard A" properties level "fragment" element "ddn.usecases.deployment::model.primary" as "replica" with id "ddn.usecases.deployment::model.primary" title "Primary copy" facets distribution item "PRIMARY" properties level "copy" role "primary" location "local" metadata x_record layout_group "primary" element "ddn.usecases.deployment::model.follower" as "replica" with id "ddn.usecases.deployment::model.follower" title "Follower copy" properties level "copy" role "follower" location "cloud" metadata x_record layout_group "follower" element "ddn.usecases.deployment::model.local" as "service" with id "ddn.usecases.deployment::model.local" title "Local SQL service" properties level "instance" location "local" element "ddn.usecases.deployment::model.cloud" as "service" with id "ddn.usecases.deployment::model.cloud" title "Cloud SQL service" properties level "instance" location "cloud" element "ddn.usecases.commerce::domains.customer_id" as "domain" with id "ddn.usecases.commerce::domains.customer_id" title "Customer identifier" content meaning "Identifies a customer in the registry." notes item title "Additional source details" text { "meaning": "Identifies a customer in the registry." } format "plain" element "ddn.usecases.commerce::domains.order_id" as "domain" with id "ddn.usecases.commerce::domains.order_id" title "Order identifier" content meaning "Identifies an order in the order book." notes item title "Additional source details" text { "meaning": "Identifies an order in the order book." } format "plain" relation "ddn.usecases.commerce::tables.r_line_order" as "ref" with id "ddn.usecases.commerce::tables.r_line_order" title "references" properties source_mark "many" target_mark "one" endpoints item definition id "ddn.usecases.commerce::tables.line" member id "ddn.usecases.commerce::tables.line.order_id" item definition id "ddn.usecases.commerce::tables.orders" member id "ddn.usecases.commerce::tables.orders.order_id" relation "ddn.usecases.commerce::tables.r_order_customer" as "ref" with id "ddn.usecases.commerce::tables.r_order_customer" title "references" properties source_mark "zeromany" target_mark "one" endpoints item definition id "ddn.usecases.commerce::tables.orders" member id "ddn.usecases.commerce::tables.orders.customer_id" item definition id "ddn.usecases.commerce::tables.customer" member id "ddn.usecases.commerce::tables.customer.customer_id" relation "ddn.usecases.deployment::model.r_part" as "part" with id "ddn.usecases.deployment::model.r_part" title "partitioned into" endpoints item definition id "ddn.usecases.commerce::tables.orders" item definition id "ddn.usecases.deployment::model.shard" relation "ddn.usecases.deployment::model.r_primary_fragment" as "realizes" with id "ddn.usecases.deployment::model.r_primary_fragment" title "realizes partition" endpoints item definition id "ddn.usecases.deployment::model.primary" item definition id "ddn.usecases.deployment::model.shard" relation "ddn.usecases.deployment::model.r_follower_fragment" as "realizes" with id "ddn.usecases.deployment::model.r_follower_fragment" title "realizes partition" endpoints item definition id "ddn.usecases.deployment::model.follower" item definition id "ddn.usecases.deployment::model.shard" relation "ddn.usecases.deployment::model.r_primary_host" as "placed" with id "ddn.usecases.deployment::model.r_primary_host" title "placed on" endpoints item definition id "ddn.usecases.deployment::model.primary" item definition id "ddn.usecases.deployment::model.local" relation "ddn.usecases.deployment::model.r_follower_host" as "placed" with id "ddn.usecases.deployment::model.r_follower_host" title "placed on" endpoints item definition id "ddn.usecases.deployment::model.follower" item definition id "ddn.usecases.deployment::model.cloud" relation "ddn.usecases.deployment::model.r_replication" as "replicate" with id "ddn.usecases.deployment::model.r_replication" title "replicates to" endpoints item definition id "ddn.usecases.deployment::model.primary" item definition id "ddn.usecases.deployment::model.follower" view "diagram" as "ddn@1" with id "diagram" title "10 / Shards, copies and placement" selection include item id "ddn.usecases.commerce::tables.orders" item id "ddn.usecases.deployment::model.shard" item id "ddn.usecases.deployment::model.primary" item id "ddn.usecases.deployment::model.follower" item id "ddn.usecases.deployment::model.local" item id "ddn.usecases.deployment::model.cloud" item id "ddn.usecases.deployment::model.r_part" item id "ddn.usecases.deployment::model.r_primary_fragment" item id "ddn.usecases.deployment::model.r_follower_fragment" item id "ddn.usecases.deployment::model.r_primary_host" item id "ddn.usecases.deployment::model.r_follower_host" item id "ddn.usecases.deployment::model.r_replication" exclude item id "ddn.usecases.commerce::tables.r_line_order" item id "ddn.usecases.commerce::tables.r_order_customer" layout algorithm "manual" gap 120 display fields "none" badges "none" legend mode "numbers" width 340 keys model.r_part "1" model.r_primary_fragment "2" model.r_follower_fragment "3" model.r_primary_host "4" model.r_follower_host "5" model.r_replication "6" background color "#f6f8fc" regions item id "ddn.usecases.views.hybrid-deployment::diagram.local" name "ON-PREMISES / placement view" members item id "ddn.usecases.deployment::model.primary" item id "ddn.usecases.deployment::model.local" item id "ddn.usecases.views.hybrid-deployment::diagram.cloud" name "CLOUD / placement view" members item id "ddn.usecases.deployment::model.follower" item id "ddn.usecases.deployment::model.cloud" publication id "publication:diagram" use "ddn.usecases.commerce::tables.orders" named "appearance:diagram:ddn.usecases.commerce::tables.orders" with id "appearance:diagram:ddn.usecases.commerce::tables.orders" body "title" column_visibility field "shown" type "hidden" domain "hidden" constraint "hidden" key "hidden" comment "hidden" table header false use "ddn.usecases.deployment::model.shard" named "appearance:diagram:ddn.usecases.deployment::model.shard" with id "appearance:diagram:ddn.usecases.deployment::model.shard" use "ddn.usecases.deployment::model.primary" named "appearance:diagram:ddn.usecases.deployment::model.primary" with id "appearance:diagram:ddn.usecases.deployment::model.primary" use "ddn.usecases.deployment::model.follower" named "appearance:diagram:ddn.usecases.deployment::model.follower" with id "appearance:diagram:ddn.usecases.deployment::model.follower" use "ddn.usecases.deployment::model.local" named "appearance:diagram:ddn.usecases.deployment::model.local" with id "appearance:diagram:ddn.usecases.deployment::model.local" use "ddn.usecases.deployment::model.cloud" named "appearance:diagram:ddn.usecases.deployment::model.cloud" with id "appearance:diagram:ddn.usecases.deployment::model.cloud" use "ddn.usecases.deployment::model.r_part" named "appearance:diagram:ddn.usecases.deployment::model.r_part" with id "appearance:diagram:ddn.usecases.deployment::model.r_part" use "ddn.usecases.deployment::model.r_primary_fragment" named "appearance:diagram:ddn.usecases.deployment::model.r_primary_fragment" with id "appearance:diagram:ddn.usecases.deployment::model.r_primary_fragment" use "ddn.usecases.deployment::model.r_follower_fragment" named "appearance:diagram:ddn.usecases.deployment::model.r_follower_fragment" with id "appearance:diagram:ddn.usecases.deployment::model.r_follower_fragment" use "ddn.usecases.deployment::model.r_primary_host" named "appearance:diagram:ddn.usecases.deployment::model.r_primary_host" with id "appearance:diagram:ddn.usecases.deployment::model.r_primary_host" use "ddn.usecases.deployment::model.r_follower_host" named "appearance:diagram:ddn.usecases.deployment::model.r_follower_host" with id "appearance:diagram:ddn.usecases.deployment::model.r_follower_host" use "ddn.usecases.deployment::model.r_replication" named "appearance:diagram:ddn.usecases.deployment::model.r_replication" with id "appearance:diagram:ddn.usecases.deployment::model.r_replication"