From 78ace25b1d795d3c4b6f278ddbf222dbe22e86b2 Mon Sep 17 00:00:00 2001 From: Vasco Santos Date: Mon, 11 Mar 2024 16:57:10 +0100 Subject: [PATCH] fix: remove datawherehouse store in favour of location claims --- rfc/datawherehouse.md | 90 ++++++++++-- rfc/datawherehouse/datawherehouse-0.tldr | 169 +++++++++-------------- rfc/datawherehouse/datawherehouse-1.svg | 4 +- rfc/datawherehouse/datawherehouse-1.tldr | 130 +++++++++-------- rfc/datawherehouse/datawherehouse-2.svg | 6 +- rfc/datawherehouse/datawherehouse-2.tldr | 68 ++++----- 6 files changed, 245 insertions(+), 222 deletions(-) diff --git a/rfc/datawherehouse.md b/rfc/datawherehouse.md index bb59b17..73a630c 100644 --- a/rfc/datawherehouse.md +++ b/rfc/datawherehouse.md @@ -11,7 +11,7 @@ TL;DR 1. We're missing a mapping of Data CID -> target URI (Bucket, Saturn Node, etc). -2. We don't want clients to create location claims for internal bucket URLs because we might change the location in the future (reputation hit for client). +2. We don't want clients to create location claims tight with internal bucket URLs because we might change the location in the future (reputation hit for client). 3. We don't have bucket events in Cloudflare, so need the client to tell us when it has uploaded something to the provided write target. 4. We want freeway code to be usable in Saturn nodes, so ideally it uses only content claims to discover locations. 5. We want this information available as soon as content is written so that read interfaces can serve the content right away. @@ -20,7 +20,7 @@ TL;DR > 1. We're missing a mapping of Data CID -> target URI (Bucket, Saturn Node, etc). -We considered at first location claims would be the solution here. But when we got closer to put that into practise we realized this was not a good idea. We need this mapping so that w3s Read/Write Interfaces can discover where the bytes are. Where the bytes are stored may actually be private write targets (for instance, a R2 bucket), which location is not public. We consider that locations claims MUST be retrievable, have public access and not heavily rate limited. Finally, some read interfaces (for instance Roundabout, Freeway) require some information encoded in the URI (like bucket name), which would not be available in a public URL of R2 bucket. All things considered, Location claims should include URIs like `https://bafy...data.ipfs.w3s.link`, and we need a mapping of `bafy...data` to where its bytes are actually stored internally. +We considered at first location claims directly to data bytes would be the solution here. But when we got closer to put that into practise we realized this was not a good idea. We need this mapping so that w3s Read/Write Interfaces can discover where the bytes are. Where the bytes are stored may actually be private write targets (for instance, a R2 bucket), which location is not public. We consider that location claims MUST be retrievable, have public access and not heavily rate limited. Finally, some read interfaces (for instance Roundabout, Freeway) require some information encoded in the URI (like bucket name), which would not be available in a public URL of R2 bucket. All things considered, Location claims should include URIs like `https://bafy...data.ipfs.w3s.link`, and we need a mapping of `bafy...data` to where its bytes are actually stored internally. > 2. We don't want clients to create location claims for internal bucket URLs because we might change the location in the future (reputation hit for client). @@ -36,9 +36,7 @@ Actually we can even extend on this point by saying that today we have no verifi * Confirms successful transfer of data. * Effect linked by `store/add` receipt. * Can be batched with other invocations like `filecoin/offer` -* Handler writes to carwhere - * CAR CID -> bucket mapping table -* Materialize location claims on demand for CAR CID from data in table. Short lived so we can change location and not have to revoke 1,000's of UCANs. +* Handler writes to location claims with encoded information The following diagram presents the described flow, and is illustrated with the following steps: @@ -46,7 +44,7 @@ The following diagram presents the described flow, and is illustrated with the f 2. Service issues a receipt stating the URI of a write target for the client to write those bytes 3. Client writes the bytes into the write target 4. Client notifies the service that the bytes were written to the provided write target -5. Service verifies that the bytes are stored in the provided write target +5. Service verifies that the bytes are stored in the provided write target and writes a claim about it. 6. Service issues a receipt stating bytes are being stored by the service. ![datawherehouse1](./datawherehouse/datawherehouse-1.svg) @@ -59,7 +57,75 @@ On the other side of things, the next diagram presents the flow when a client wa ![datawherehouse2](./datawherehouse/datawherehouse-2.svg) -## carwhere store design +## Location claims + +Content claims service is currently deployed implementing the [content claims spec](https://github.com/web3-storage/specs/pull/86). Among other claims, it provides [Location Claims](https://hackmd.io/IiKMDqoaSM61TjybSxwHog?view#Location-Claims) which MAY be used to claim that the bytes that hash to a given CID are available in a given URL. + +In w3s the service is responsible to deciding the write target, therefore service SHOULD be responsible for claiming the location of the bytes. + +While thinking about using location claims to record where bytes are stored by the service, there are a few characteristics we want to have: +- location claim MUST resolve to a public and fetchable URLs +- location in location claim SHOULD (ideally) not change recurrently given it MAY impact negatively the reputation of a party + +Read interfaces MAY have some requirements other than the CID to better, such as knowing bucket name, region, etc. + +As a way to store the location of this bytes, we discussed relying on a "private" location claims concept, or even on location claims for a gateway that have hints as encoded params in the URL that the read interface can decide if want to try to use. This would allow us to already have the infra and datastores we have, leaving the decentralization of content claims for a completely different problem. + +### _private_ location claims + +_private_ location claims would enable us to not expose these claims directly to the user, given their sole purpose at the moment is internal routing. This would enable queries of w3s read/write interfaces to know where the bytes for a CID are stored. + +With this building block we can issue claims that MAY not be public and fetchable URLs, as well as not have worries on a potential future data migration. + +A _private_ location claim MAY look like: + +```json +{ + "op": "assert/datawherehouse", + "rsc": "https://web3.storage", + "input": { + "content" : CID /* CAR CID */, + "location": "`https://..web3.storage//.car`", + "range" : [ start, end ] /* Optional: Byte Range in URL + } +} +``` + +Note that we could actually make this location URL publicly available in R2 custom domain, if we would like it. Of course this would still not be a good reason to make it public, given moving the data to a different location would lead to invalid claims. But can actually be a good idea for a transition period for decentralized write nodes. + +### location claims with encoded params + +On the other side, we could also rely on a known resolvable location and encode the needed information as part of the URL. This would allow w3s service to just issue claims point to the gateway with extra hints that they can use for a "fast lane". + +A location claim MAY look like: + +```json +{ + "op": "assert/location", + "rsc": "https://web3.storage", + "input": { + "content" : CID /* CAR CID */, + "location": "`https:.dag.w3s.link?bucket=®ion=`", + "range" : [ start, end ] /* Optional: Byte Range in URL + } +} +``` + +The public IPFS HTTP Gateway could decide if it wants to use the HINTs or any other discovery method. Therefore, this location should be able to still be fetachable on the future when content is somewhere else. + +We do not need to have an internal "private" claim for storing this data. Once we move to a decentralized write target approach, likely they will have public locations we can just stick here, which means we could just rely on location claims issued by the service (even though revocation would become a concern on data moving around). + +In case we issue further claims with different query parameters, the service can still look at their date and attempt latest first, without real need to revoke them given the URL will still resolve to the data. + +Also note that we do not really need to do any change in `dag.w3s.link`. The service can call content claims and see what are the hints. For optimization purpuses we can however check and try them first. + +## Proposal + +Location claims with encoded params seems to be the simplest solution and also puts us into the future direction where write targets may actually have public URLs. Therefore, relying on `location claims with encoded params` can solve all the requirements while better position us for future. In addition, it is also the easy solution to implement. + +## Deprecated + +### Store design carwhere is a store that enables a `store/*` implementer to map CAR CIDs to one or more locations where they are written (and confirmed!). @@ -71,11 +137,11 @@ From a price standpoint, as well as ease of storage migration, Bucket store will Proposal: Bucket Store -## Bucket data Location URIs +### Bucket data Location URIs Defining the format of data locations for these target locations is critical to have a mapping of these locations to the buckets to fulfill all requirements of read interfaces (See https://hackmd.io/5qyJwDORTc6B-nqZSmzmWQ#Read-Use-cases). -### URIs in well known write targets +#### URIs in well known write targets Typically, objects in S3 buckets can be located via following URIs: - S3 URI (e.g. `s3:////.car`) @@ -96,7 +162,7 @@ However, R2 object locations have different patterns, instead of following S3 pa Note that a data location URI may not be readable from all actors, as some may be behind a given set of permissions/capabilities. -### URI Patterns +#### URI Patterns The main pattern that we can identify is to have URLs that can be accessed by any HTTP client. Except for S3 URIs and given the correct setup/keys is available, all other URLs are fetch'able. Therefore, we can assume as an advantage that claim is directly fetchable without any pre-knowledge. @@ -116,7 +182,7 @@ Alternatively, we can require `` to become bucket name, in order The Public Object URL for Dev should not be adopted, as it is heavily rate limited, we do not know what CF may do with it in the future, and also does not even have information about the Bucket name. -### Proposal +#### Proposal Nothing prevents us from claiming multiple location URIs for a given content, however we may need to also be careful on having multiple claims for the same location as if it is not fully available it MAY be ranked badly in whatever reputation system we may create. However, some smart clients MAY benefit of cost savings or faster retrievals if they have extra information encoded in the URI. @@ -127,6 +193,6 @@ In conclusion, this document proposes that w3up clients, once they successfully - `https://.web3.storage//.car` - `https://.r2.cloudflarestorage.com///` -## Materialize location claims +### Materialize location claims Extend materialized location claims to include carwhere locations short lived. We will need to align on how these claims will look like. diff --git a/rfc/datawherehouse/datawherehouse-0.tldr b/rfc/datawherehouse/datawherehouse-0.tldr index f3b8da7..4e3952e 100644 --- a/rfc/datawherehouse/datawherehouse-0.tldr +++ b/rfc/datawherehouse/datawherehouse-0.tldr @@ -66,9 +66,9 @@ { "id": "pointer:pointer", "typeName": "pointer", - "x": 644.4921574857524, - "y": -543.5546731948857, - "lastActivityTimestamp": 1709825320826, + "x": 1490.5101979215556, + "y": -643.5447031659849, + "lastActivityTimestamp": 1710168056141, "meta": {} }, { @@ -79,9 +79,9 @@ "typeName": "page" }, { - "x": -437.9166417386821, - "y": 836.2499856948857, - "z": 0.5, + "x": -469.3507199505383, + "y": 1058.5791225954877, + "z": 0.470844458545766, "meta": {}, "id": "camera:page:page", "typeName": "camera" @@ -89,46 +89,7 @@ { "editingShapeId": null, "croppingShapeId": null, - "selectedShapeIds": [ - "shape:CHOOwtQW8HCR7-WKoBXKw", - "shape:Lr7WjGk36QuHdYx49Ly6r", - "shape:cFy3LFqiM-juO1A0p2x3R", - "shape:wSODlgiCl9z6Ne_d8FYc0", - "shape:aiOUMqBfWugzoik_9IWZ6", - "shape:zJFA7epV-zanwROqbO1no", - "shape:qii_GivVPwSuaZRpXf62I", - "shape:LUYcSnifhxORKHDkRUoCg", - "shape:JctEgwkFzR76y1EBrvVYH", - "shape:kzGLqfwrquM-fxq4K05rT", - "shape:OAO7lT9ptvvrDD7zgksmQ", - "shape:BZv2PmSy7YQc7xQhLrXK_", - "shape:H7kpWoZbltii1FgrLNTrI", - "shape:uuKXkPPG-wiOduRNjZoXw", - "shape:kYHRJKxozdIvb4tY2XKpZ", - "shape:JZp7LMR__SDiy7qPUavdq", - "shape:vLkyF8-3wf8mx5sOdQGkl", - "shape:upxx0Y_0dPIGONSPvlDCz", - "shape:cqt6AyB90ZNFac74KaVIW", - "shape:bfd7RfIywfhR_-ZPnaRnj", - "shape:4q9k59hMHOflrz6psvnSs", - "shape:lj1_2JPjppmfwX-Zm6nt-", - "shape:NYVX_N943fIgbVEWHUvWd", - "shape:d1_ENHiWcEKfPw3qEVYUI", - "shape:bZ0yqiIY0uNTWuJTuGrYj", - "shape:1614jerxZL3OkVxq-0ll9", - "shape:OFbfII4pikFQ1zirgwEzd", - "shape:Xwhey_UXi7uZsL5cO1e9F", - "shape:sg5MKrEEku1qakooHp17e", - "shape:CW8KamHfgucEaXghFUsNZ", - "shape:CO-8z12Me99q5oePzRWLo", - "shape:K0Q21G4WKJfldtOtu4i-V", - "shape:ll3E3UC0u7AKIdbonoDcb", - "shape:ccybd8L9sRdjJryuVyCqG", - "shape:airwb1kCrr0VEDwodHu5v", - "shape:6H-mwoPqPe_sJyF0_QyH3", - "shape:ErL9R3Jlj6ti1JlGwEFat", - "shape:kQnO7b6hkfSVa-22Sy3w-" - ], + "selectedShapeIds": [], "hoveredShapeId": null, "erasingShapeIds": [], "hintingShapeIds": [], @@ -159,8 +120,8 @@ "screenBounds": { "x": 0, "y": 0, - "w": 1217.5, - "h": 952.5 + "w": 972.5, + "h": 955 }, "insets": [ false, @@ -195,7 +156,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:CHOOwtQW8HCR7-WKoBXKw", "type": "image", "props": { "w": 29.55159695131982, @@ -207,6 +167,7 @@ }, "parentId": "page:page", "index": "a1", + "id": "shape:CHOOwtQW8HCR7-WKoBXKw", "typeName": "shape" }, { @@ -216,7 +177,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:Lr7WjGk36QuHdYx49Ly6r", "type": "image", "props": { "w": 32.37759789372534, @@ -228,6 +188,7 @@ }, "parentId": "page:page", "index": "a2", + "id": "shape:Lr7WjGk36QuHdYx49Ly6r", "typeName": "shape" }, { @@ -237,7 +198,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:cFy3LFqiM-juO1A0p2x3R", "type": "image", "props": { "w": 31.933645340732486, @@ -249,6 +209,7 @@ }, "parentId": "page:page", "index": "a3", + "id": "shape:cFy3LFqiM-juO1A0p2x3R", "typeName": "shape" }, { @@ -258,7 +219,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:wSODlgiCl9z6Ne_d8FYc0", "type": "image", "props": { "w": 31.603149215403594, @@ -270,6 +230,7 @@ }, "parentId": "page:page", "index": "a4", + "id": "shape:wSODlgiCl9z6Ne_d8FYc0", "typeName": "shape" }, { @@ -279,7 +240,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:aiOUMqBfWugzoik_9IWZ6", "type": "text", "props": { "color": "red", @@ -293,6 +253,7 @@ }, "parentId": "page:page", "index": "a5", + "id": "shape:aiOUMqBfWugzoik_9IWZ6", "typeName": "shape" }, { @@ -302,7 +263,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:zJFA7epV-zanwROqbO1no", "type": "geo", "props": { "w": 189.21682673746474, @@ -322,6 +282,7 @@ }, "parentId": "page:page", "index": "a6", + "id": "shape:zJFA7epV-zanwROqbO1no", "typeName": "shape" }, { @@ -331,7 +292,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:qii_GivVPwSuaZRpXf62I", "type": "arrow", "parentId": "page:page", "index": "a8", @@ -358,6 +318,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:qii_GivVPwSuaZRpXf62I", "typeName": "shape" }, { @@ -367,7 +328,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:LUYcSnifhxORKHDkRUoCg", "type": "arrow", "parentId": "page:page", "index": "a9", @@ -394,6 +354,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:LUYcSnifhxORKHDkRUoCg", "typeName": "shape" }, { @@ -403,7 +364,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:JctEgwkFzR76y1EBrvVYH", "type": "text", "props": { "color": "light-blue", @@ -417,6 +377,7 @@ }, "parentId": "page:page", "index": "aA", + "id": "shape:JctEgwkFzR76y1EBrvVYH", "typeName": "shape" }, { @@ -426,7 +387,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:kzGLqfwrquM-fxq4K05rT", "type": "text", "props": { "color": "light-blue", @@ -440,6 +400,7 @@ }, "parentId": "page:page", "index": "aB", + "id": "shape:kzGLqfwrquM-fxq4K05rT", "typeName": "shape" }, { @@ -449,11 +410,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:OAO7lT9ptvvrDD7zgksmQ", "type": "group", "parentId": "page:page", "index": "aC", "props": {}, + "id": "shape:OAO7lT9ptvvrDD7zgksmQ", "typeName": "shape" }, { @@ -463,11 +424,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:YyN7VP2nHaPHzTN4czYgw", "type": "group", "parentId": "shape:OAO7lT9ptvvrDD7zgksmQ", "index": "a1", "props": {}, + "id": "shape:YyN7VP2nHaPHzTN4czYgw", "typeName": "shape" }, { @@ -477,7 +438,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:HKxXohFsL0FyGdl4NjGNZ", "type": "text", "props": { "color": "light-blue", @@ -491,6 +451,7 @@ }, "parentId": "shape:YyN7VP2nHaPHzTN4czYgw", "index": "a1", + "id": "shape:HKxXohFsL0FyGdl4NjGNZ", "typeName": "shape" }, { @@ -500,7 +461,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:4YOwRsfOKsyAiBHHL5CYt", "type": "geo", "props": { "w": 147.97265625, @@ -520,6 +480,7 @@ }, "parentId": "shape:YyN7VP2nHaPHzTN4czYgw", "index": "a2", + "id": "shape:4YOwRsfOKsyAiBHHL5CYt", "typeName": "shape" }, { @@ -529,7 +490,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:yvonKTPbO-E1sWIXchOFi", "type": "geo", "props": { "w": 23.07894955423899, @@ -549,6 +509,7 @@ }, "parentId": "shape:OAO7lT9ptvvrDD7zgksmQ", "index": "a2", + "id": "shape:yvonKTPbO-E1sWIXchOFi", "typeName": "shape" }, { @@ -558,7 +519,6 @@ "isLocked": false, "opacity": 0.1, "meta": {}, - "id": "shape:YeDRwOOM8DywcjIeTawC8", "type": "geo", "props": { "w": 24.18359330727776, @@ -578,6 +538,7 @@ }, "parentId": "shape:OAO7lT9ptvvrDD7zgksmQ", "index": "a3", + "id": "shape:YeDRwOOM8DywcjIeTawC8", "typeName": "shape" }, { @@ -587,7 +548,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:BZv2PmSy7YQc7xQhLrXK_", "type": "arrow", "parentId": "page:page", "index": "aD", @@ -614,6 +574,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:BZv2PmSy7YQc7xQhLrXK_", "typeName": "shape" }, { @@ -623,7 +584,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:H7kpWoZbltii1FgrLNTrI", "type": "arrow", "parentId": "page:page", "index": "aE", @@ -650,6 +610,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:H7kpWoZbltii1FgrLNTrI", "typeName": "shape" }, { @@ -659,7 +620,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:uuKXkPPG-wiOduRNjZoXw", "type": "text", "props": { "color": "light-blue", @@ -673,6 +633,7 @@ }, "parentId": "page:page", "index": "aF", + "id": "shape:uuKXkPPG-wiOduRNjZoXw", "typeName": "shape" }, { @@ -682,7 +643,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:kYHRJKxozdIvb4tY2XKpZ", "type": "arrow", "parentId": "page:page", "index": "aG", @@ -709,6 +669,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:kYHRJKxozdIvb4tY2XKpZ", "typeName": "shape" }, { @@ -718,11 +679,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:JZp7LMR__SDiy7qPUavdq", "type": "group", "parentId": "page:page", "index": "aH", "props": {}, + "id": "shape:JZp7LMR__SDiy7qPUavdq", "typeName": "shape" }, { @@ -732,7 +693,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:nu6vWKO1UAK1i2s8wbzgp", "type": "geo", "props": { "w": 161.046875, @@ -752,6 +712,7 @@ }, "parentId": "shape:JZp7LMR__SDiy7qPUavdq", "index": "a1", + "id": "shape:nu6vWKO1UAK1i2s8wbzgp", "typeName": "shape" }, { @@ -761,7 +722,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:vpqEeFGjf-Mea-w0StCRV", "type": "text", "props": { "color": "light-blue", @@ -775,6 +735,7 @@ }, "parentId": "shape:JZp7LMR__SDiy7qPUavdq", "index": "a2", + "id": "shape:vpqEeFGjf-Mea-w0StCRV", "typeName": "shape" }, { @@ -784,11 +745,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:vLkyF8-3wf8mx5sOdQGkl", "type": "group", "parentId": "page:page", "index": "aI", "props": {}, + "id": "shape:vLkyF8-3wf8mx5sOdQGkl", "typeName": "shape" }, { @@ -798,7 +759,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:94LWnKyXjFOQ2KYtqdlkz", "type": "geo", "props": { "w": 30.63569842285744, @@ -818,6 +778,7 @@ }, "parentId": "shape:vLkyF8-3wf8mx5sOdQGkl", "index": "a1", + "id": "shape:94LWnKyXjFOQ2KYtqdlkz", "typeName": "shape" }, { @@ -827,7 +788,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:7K8P7E0D2SCndOXDUw3T9", "type": "text", "props": { "color": "light-blue", @@ -841,6 +801,7 @@ }, "parentId": "shape:vLkyF8-3wf8mx5sOdQGkl", "index": "a2", + "id": "shape:7K8P7E0D2SCndOXDUw3T9", "typeName": "shape" }, { @@ -850,11 +811,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:CstmjDUtEHwxnsAwU9CB_", "type": "group", "parentId": "shape:vLkyF8-3wf8mx5sOdQGkl", "index": "a3", "props": {}, + "id": "shape:CstmjDUtEHwxnsAwU9CB_", "typeName": "shape" }, { @@ -864,7 +825,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:eh70HReeLQxCeWVEdazrd", "type": "text", "props": { "color": "light-blue", @@ -878,6 +838,7 @@ }, "parentId": "shape:CstmjDUtEHwxnsAwU9CB_", "index": "a1", + "id": "shape:eh70HReeLQxCeWVEdazrd", "typeName": "shape" }, { @@ -887,7 +848,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:6myvbhhFgY72BrcxT5dJI", "type": "geo", "props": { "w": 30.452930631178752, @@ -907,6 +867,7 @@ }, "parentId": "shape:CstmjDUtEHwxnsAwU9CB_", "index": "a2", + "id": "shape:6myvbhhFgY72BrcxT5dJI", "typeName": "shape" }, { @@ -916,7 +877,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:upxx0Y_0dPIGONSPvlDCz", "type": "arrow", "parentId": "page:page", "index": "aJ", @@ -943,6 +903,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:upxx0Y_0dPIGONSPvlDCz", "typeName": "shape" }, { @@ -952,7 +913,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:cqt6AyB90ZNFac74KaVIW", "type": "geo", "props": { "w": 23.07894955423899, @@ -972,6 +932,7 @@ }, "parentId": "page:page", "index": "aQ", + "id": "shape:cqt6AyB90ZNFac74KaVIW", "typeName": "shape" }, { @@ -981,7 +942,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:bfd7RfIywfhR_-ZPnaRnj", "type": "arrow", "parentId": "page:page", "index": "aR", @@ -1008,6 +968,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:bfd7RfIywfhR_-ZPnaRnj", "typeName": "shape" }, { @@ -1017,7 +978,6 @@ "isLocked": false, "opacity": 0.1, "meta": {}, - "id": "shape:4q9k59hMHOflrz6psvnSs", "type": "geo", "props": { "w": 24.18359330727776, @@ -1037,6 +997,7 @@ }, "parentId": "page:page", "index": "aS", + "id": "shape:4q9k59hMHOflrz6psvnSs", "typeName": "shape" }, { @@ -1046,7 +1007,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:lj1_2JPjppmfwX-Zm6nt-", "type": "text", "props": { "color": "light-blue", @@ -1060,6 +1020,7 @@ }, "parentId": "page:page", "index": "aT", + "id": "shape:lj1_2JPjppmfwX-Zm6nt-", "typeName": "shape" }, { @@ -1069,7 +1030,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:NYVX_N943fIgbVEWHUvWd", "type": "text", "props": { "color": "red", @@ -1083,6 +1043,7 @@ }, "parentId": "page:page", "index": "aU", + "id": "shape:NYVX_N943fIgbVEWHUvWd", "typeName": "shape" }, { @@ -1092,7 +1053,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:d1_ENHiWcEKfPw3qEVYUI", "type": "text", "props": { "color": "red", @@ -1106,6 +1066,7 @@ }, "parentId": "page:page", "index": "aV", + "id": "shape:d1_ENHiWcEKfPw3qEVYUI", "typeName": "shape" }, { @@ -1115,7 +1076,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:bZ0yqiIY0uNTWuJTuGrYj", "type": "text", "props": { "color": "light-blue", @@ -1129,6 +1089,7 @@ }, "parentId": "page:page", "index": "aW", + "id": "shape:bZ0yqiIY0uNTWuJTuGrYj", "typeName": "shape" }, { @@ -1138,7 +1099,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:1614jerxZL3OkVxq-0ll9", "type": "text", "props": { "color": "red", @@ -1152,6 +1112,7 @@ }, "parentId": "page:page", "index": "aX", + "id": "shape:1614jerxZL3OkVxq-0ll9", "typeName": "shape" }, { @@ -1161,7 +1122,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:OFbfII4pikFQ1zirgwEzd", "type": "text", "props": { "color": "red", @@ -1175,6 +1135,7 @@ }, "parentId": "page:page", "index": "aY", + "id": "shape:OFbfII4pikFQ1zirgwEzd", "typeName": "shape" }, { @@ -1184,7 +1145,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:Xwhey_UXi7uZsL5cO1e9F", "type": "text", "props": { "color": "light-blue", @@ -1198,6 +1158,7 @@ }, "parentId": "page:page", "index": "aZ", + "id": "shape:Xwhey_UXi7uZsL5cO1e9F", "typeName": "shape" }, { @@ -1207,7 +1168,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:sg5MKrEEku1qakooHp17e", "type": "text", "props": { "color": "light-blue", @@ -1221,6 +1181,7 @@ }, "parentId": "page:page", "index": "ae", + "id": "shape:sg5MKrEEku1qakooHp17e", "typeName": "shape" }, { @@ -1230,11 +1191,10 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:CW8KamHfgucEaXghFUsNZ", "type": "geo", "props": { - "w": 278.7945451132749, - "h": 287.0290232860256, + "w": 238.1716789209819, + "h": 256.1191359231429, "geo": "pentagon", "color": "light-green", "labelColor": "black", @@ -1250,22 +1210,22 @@ }, "parentId": "page:page", "index": "ah", + "id": "shape:CW8KamHfgucEaXghFUsNZ", "typeName": "shape" }, { - "x": 1590.548536291834, - "y": -7.91318443753957, + "x": 1613.2450072602244, + "y": -37.13698729872414, "rotation": 0.17453292519943275, "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:K0Q21G4WKJfldtOtu4i-V", "type": "text", "props": { "color": "light-green", "size": "xl", - "w": 143.99921468414718, - "text": "datawherehouse", + "w": 193.5897275604708, + "text": "content-claims", "font": "draw", "align": "middle", "autoSize": true, @@ -1273,6 +1233,7 @@ }, "parentId": "page:page", "index": "ai", + "id": "shape:K0Q21G4WKJfldtOtu4i-V", "typeName": "shape" }, { @@ -1282,7 +1243,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:CO-8z12Me99q5oePzRWLo", "type": "arrow", "parentId": "page:page", "index": "ahV", @@ -1314,6 +1274,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:CO-8z12Me99q5oePzRWLo", "typeName": "shape" }, { @@ -1323,7 +1284,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:ll3E3UC0u7AKIdbonoDcb", "type": "text", "props": { "color": "orange", @@ -1337,6 +1297,7 @@ }, "parentId": "page:page", "index": "aj", + "id": "shape:ll3E3UC0u7AKIdbonoDcb", "typeName": "shape" }, { @@ -1346,7 +1307,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:ccybd8L9sRdjJryuVyCqG", "type": "geo", "props": { "w": 317.5064697265625, @@ -1366,6 +1326,7 @@ }, "parentId": "page:page", "index": "ak", + "id": "shape:ccybd8L9sRdjJryuVyCqG", "typeName": "shape" }, { @@ -1375,7 +1336,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:6H-mwoPqPe_sJyF0_QyH3", "type": "arrow", "parentId": "page:page", "index": "al", @@ -1412,6 +1372,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:6H-mwoPqPe_sJyF0_QyH3", "typeName": "shape" }, { @@ -1421,7 +1382,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:ErL9R3Jlj6ti1JlGwEFat", "type": "arrow", "parentId": "page:page", "index": "am", @@ -1448,6 +1408,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:ErL9R3Jlj6ti1JlGwEFat", "typeName": "shape" }, { @@ -1457,7 +1418,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:airwb1kCrr0VEDwodHu5v", "type": "arrow", "parentId": "page:page", "index": "akV", @@ -1494,6 +1454,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:airwb1kCrr0VEDwodHu5v", "typeName": "shape" }, { @@ -1503,7 +1464,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:kQnO7b6hkfSVa-22Sy3w-", "type": "text", "props": { "color": "light-blue", @@ -1517,6 +1477,7 @@ }, "parentId": "page:page", "index": "an", + "id": "shape:kQnO7b6hkfSVa-22Sy3w-", "typeName": "shape" }, { diff --git a/rfc/datawherehouse/datawherehouse-1.svg b/rfc/datawherehouse/datawherehouse-1.svg index 3f7950e..07e6598 100644 --- a/rfc/datawherehouse/datawherehouse-1.svg +++ b/rfc/datawherehouse/datawherehouse-1.svg @@ -1,8 +1,8 @@ -clientclientStorefrontStorefrontHave content?Have content?store/deliverstore/deliverissue receiptissue receiptstore/addstore/addS3S3R2R2not foundnot foundHTTP POSTHTTP POST1122334466fx.forkfx.forkcontent-claimscontent-claims55 \ No newline at end of file diff --git a/rfc/datawherehouse/datawherehouse-1.tldr b/rfc/datawherehouse/datawherehouse-1.tldr index 3917cce..f5f6ea1 100644 --- a/rfc/datawherehouse/datawherehouse-1.tldr +++ b/rfc/datawherehouse/datawherehouse-1.tldr @@ -66,9 +66,9 @@ { "id": "pointer:pointer", "typeName": "pointer", - "x": 1330.7421510418264, - "y": -947.6432103249773, - "lastActivityTimestamp": 1709825373726, + "x": 1648.668605938854, + "y": -196.8659648505636, + "lastActivityTimestamp": 1710168084674, "meta": {} }, { @@ -79,9 +79,9 @@ "typeName": "page" }, { - "x": -308.7499635418264, - "y": 950.4166478249773, - "z": 0.5, + "x": -546.2565950689386, + "y": 906.9525485470631, + "z": 0.6565917166988985, "meta": {}, "id": "camera:page:page", "typeName": "camera" @@ -89,9 +89,7 @@ { "editingShapeId": null, "croppingShapeId": null, - "selectedShapeIds": [ - "shape:Yvq70_fNfx5nIp9GkQqQ9" - ], + "selectedShapeIds": [], "hoveredShapeId": null, "erasingShapeIds": [], "hintingShapeIds": [], @@ -118,8 +116,8 @@ "screenBounds": { "x": 0, "y": 0, - "w": 1217.5, - "h": 952.5 + "w": 972.5, + "h": 955 }, "insets": [ false, @@ -137,7 +135,7 @@ "isFocused": true, "devicePixelRatio": 2.4000000953674316, "isCoarsePointer": false, - "isHoveringCanvas": false, + "isHoveringCanvas": true, "openMenus": [], "isChangingStyle": false, "isReadonly": false, @@ -154,7 +152,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:ihFBrdkuR17a771HAxs8Z", "type": "image", "props": { "w": 29.55159695131982, @@ -166,6 +163,7 @@ }, "parentId": "page:page", "index": "a1", + "id": "shape:ihFBrdkuR17a771HAxs8Z", "typeName": "shape" }, { @@ -175,7 +173,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:Gl9o2-AErgR9SUGTEeWtD", "type": "image", "props": { "w": 32.37759789372534, @@ -187,6 +184,7 @@ }, "parentId": "page:page", "index": "a2", + "id": "shape:Gl9o2-AErgR9SUGTEeWtD", "typeName": "shape" }, { @@ -196,7 +194,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:I-iW-lhB2Cq_iqNE95Y4U", "type": "image", "props": { "w": 31.933645340732486, @@ -208,6 +205,7 @@ }, "parentId": "page:page", "index": "a3", + "id": "shape:I-iW-lhB2Cq_iqNE95Y4U", "typeName": "shape" }, { @@ -217,7 +215,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:dOX4aLhLyxR8L8Ab-TO12", "type": "image", "props": { "w": 31.603149215403594, @@ -229,6 +226,7 @@ }, "parentId": "page:page", "index": "a4", + "id": "shape:dOX4aLhLyxR8L8Ab-TO12", "typeName": "shape" }, { @@ -238,7 +236,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:0XZdSVlDSmr-7zW80vQoY", "type": "text", "props": { "color": "red", @@ -252,6 +249,7 @@ }, "parentId": "page:page", "index": "a5", + "id": "shape:0XZdSVlDSmr-7zW80vQoY", "typeName": "shape" }, { @@ -261,7 +259,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:LG07gf3PUHdQJ1JRBSkSA", "type": "geo", "props": { "w": 189.21682673746474, @@ -281,6 +278,7 @@ }, "parentId": "page:page", "index": "a6", + "id": "shape:LG07gf3PUHdQJ1JRBSkSA", "typeName": "shape" }, { @@ -290,7 +288,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:AkNPuS-S71NMI9rnEQEZZ", "type": "arrow", "parentId": "page:page", "index": "a7", @@ -317,6 +314,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:AkNPuS-S71NMI9rnEQEZZ", "typeName": "shape" }, { @@ -326,7 +324,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:mWzjnDDXiVexjZDaVleg3", "type": "arrow", "parentId": "page:page", "index": "a8", @@ -353,6 +350,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:mWzjnDDXiVexjZDaVleg3", "typeName": "shape" }, { @@ -362,7 +360,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:tZg7_WJoAqspGitaD7E4o", "type": "text", "props": { "color": "light-blue", @@ -376,6 +373,7 @@ }, "parentId": "page:page", "index": "a9", + "id": "shape:tZg7_WJoAqspGitaD7E4o", "typeName": "shape" }, { @@ -385,7 +383,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:187rWcSHLH8IIyDjWgg20", "type": "text", "props": { "color": "light-blue", @@ -399,6 +396,7 @@ }, "parentId": "page:page", "index": "aA", + "id": "shape:187rWcSHLH8IIyDjWgg20", "typeName": "shape" }, { @@ -408,11 +406,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:Jg5asFu3xeqvf0p-B2c_k", "type": "group", "parentId": "page:page", "index": "aB", "props": {}, + "id": "shape:Jg5asFu3xeqvf0p-B2c_k", "typeName": "shape" }, { @@ -422,11 +420,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:z8mRh8YEoLD9-WI1ZUFzA", "type": "group", "parentId": "shape:Jg5asFu3xeqvf0p-B2c_k", "index": "a1", "props": {}, + "id": "shape:z8mRh8YEoLD9-WI1ZUFzA", "typeName": "shape" }, { @@ -436,7 +434,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:TI_Fe5opuLWIRBd5c42Qd", "type": "text", "props": { "color": "light-blue", @@ -450,6 +447,7 @@ }, "parentId": "shape:z8mRh8YEoLD9-WI1ZUFzA", "index": "a1", + "id": "shape:TI_Fe5opuLWIRBd5c42Qd", "typeName": "shape" }, { @@ -459,7 +457,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:tqiVOrkG_tWlWoWuA_bfl", "type": "geo", "props": { "w": 147.97265625, @@ -479,6 +476,7 @@ }, "parentId": "shape:z8mRh8YEoLD9-WI1ZUFzA", "index": "a2", + "id": "shape:tqiVOrkG_tWlWoWuA_bfl", "typeName": "shape" }, { @@ -488,7 +486,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:2iotcu9pCjWPN7HFbBQiB", "type": "geo", "props": { "w": 23.07894955423899, @@ -508,6 +505,7 @@ }, "parentId": "shape:Jg5asFu3xeqvf0p-B2c_k", "index": "a2", + "id": "shape:2iotcu9pCjWPN7HFbBQiB", "typeName": "shape" }, { @@ -517,7 +515,6 @@ "isLocked": false, "opacity": 0.1, "meta": {}, - "id": "shape:6Ub9k21XdXO-zFBlDMjd5", "type": "geo", "props": { "w": 24.18359330727776, @@ -537,6 +534,7 @@ }, "parentId": "shape:Jg5asFu3xeqvf0p-B2c_k", "index": "a3", + "id": "shape:6Ub9k21XdXO-zFBlDMjd5", "typeName": "shape" }, { @@ -546,7 +544,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:nasf7bNdJg4CgH7_qkcs-", "type": "arrow", "parentId": "page:page", "index": "aC", @@ -573,6 +570,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:nasf7bNdJg4CgH7_qkcs-", "typeName": "shape" }, { @@ -582,7 +580,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:fMMkzt1e4FB__p-nJp4o-", "type": "arrow", "parentId": "page:page", "index": "aD", @@ -609,6 +606,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:fMMkzt1e4FB__p-nJp4o-", "typeName": "shape" }, { @@ -618,7 +616,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:FJFgCZXEefCGtAc9giweD", "type": "text", "props": { "color": "light-blue", @@ -632,6 +629,7 @@ }, "parentId": "page:page", "index": "aE", + "id": "shape:FJFgCZXEefCGtAc9giweD", "typeName": "shape" }, { @@ -641,7 +639,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:iINKYAo_6LwC1b0pzCPzV", "type": "arrow", "parentId": "page:page", "index": "aF", @@ -668,6 +665,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:iINKYAo_6LwC1b0pzCPzV", "typeName": "shape" }, { @@ -677,11 +675,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:8NW90DcNarcOT-QWmK2gH", "type": "group", "parentId": "page:page", "index": "aG", "props": {}, + "id": "shape:8NW90DcNarcOT-QWmK2gH", "typeName": "shape" }, { @@ -691,7 +689,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:AOjSqzuMsxEhksryd6_L_", "type": "geo", "props": { "w": 161.046875, @@ -711,6 +708,7 @@ }, "parentId": "shape:8NW90DcNarcOT-QWmK2gH", "index": "a1", + "id": "shape:AOjSqzuMsxEhksryd6_L_", "typeName": "shape" }, { @@ -720,7 +718,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:0orXbYjkm15fFue2i43RR", "type": "text", "props": { "color": "light-blue", @@ -734,6 +731,7 @@ }, "parentId": "shape:8NW90DcNarcOT-QWmK2gH", "index": "a2", + "id": "shape:0orXbYjkm15fFue2i43RR", "typeName": "shape" }, { @@ -743,11 +741,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:Q45LfwOruLK43Mn9R3pID", "type": "group", "parentId": "page:page", "index": "aH", "props": {}, + "id": "shape:Q45LfwOruLK43Mn9R3pID", "typeName": "shape" }, { @@ -757,7 +755,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:ygwclvXoqHCT3sGO2_N9W", "type": "geo", "props": { "w": 30.63569842285744, @@ -777,6 +774,7 @@ }, "parentId": "shape:Q45LfwOruLK43Mn9R3pID", "index": "a1", + "id": "shape:ygwclvXoqHCT3sGO2_N9W", "typeName": "shape" }, { @@ -786,7 +784,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:IvjrE5slE807qX2PIl7KA", "type": "text", "props": { "color": "light-blue", @@ -800,6 +797,7 @@ }, "parentId": "shape:Q45LfwOruLK43Mn9R3pID", "index": "a2", + "id": "shape:IvjrE5slE807qX2PIl7KA", "typeName": "shape" }, { @@ -809,11 +807,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:DPRip8WtRDJ19nvw2loVE", "type": "group", "parentId": "shape:Q45LfwOruLK43Mn9R3pID", "index": "a3", "props": {}, + "id": "shape:DPRip8WtRDJ19nvw2loVE", "typeName": "shape" }, { @@ -823,7 +821,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:6TZJpIBZs_lSMEoHo7YsR", "type": "text", "props": { "color": "light-blue", @@ -837,6 +834,7 @@ }, "parentId": "shape:DPRip8WtRDJ19nvw2loVE", "index": "a1", + "id": "shape:6TZJpIBZs_lSMEoHo7YsR", "typeName": "shape" }, { @@ -846,7 +844,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:jHOtacmEWr4qUZFKsTK5n", "type": "geo", "props": { "w": 30.452930631178752, @@ -866,6 +863,7 @@ }, "parentId": "shape:DPRip8WtRDJ19nvw2loVE", "index": "a2", + "id": "shape:jHOtacmEWr4qUZFKsTK5n", "typeName": "shape" }, { @@ -875,7 +873,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:cL1jO_MBp7Tmr40nQk4Hr", "type": "arrow", "parentId": "page:page", "index": "aI", @@ -902,6 +899,7 @@ "labelPosition": 0.5, "font": "mono" }, + "id": "shape:cL1jO_MBp7Tmr40nQk4Hr", "typeName": "shape" }, { @@ -911,7 +909,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:IxGRqooDX_olYzoju4zOM", "type": "geo", "props": { "w": 23.07894955423899, @@ -931,6 +928,7 @@ }, "parentId": "page:page", "index": "aJ", + "id": "shape:IxGRqooDX_olYzoju4zOM", "typeName": "shape" }, { @@ -940,7 +938,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:97e2h5VaPJuWqu9uSKOVi", "type": "arrow", "parentId": "page:page", "index": "aK", @@ -967,6 +964,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:97e2h5VaPJuWqu9uSKOVi", "typeName": "shape" }, { @@ -976,7 +974,6 @@ "isLocked": false, "opacity": 0.1, "meta": {}, - "id": "shape:tIsh-eMsra6du2xmdCNFs", "type": "geo", "props": { "w": 24.18359330727776, @@ -996,6 +993,7 @@ }, "parentId": "page:page", "index": "aL", + "id": "shape:tIsh-eMsra6du2xmdCNFs", "typeName": "shape" }, { @@ -1005,7 +1003,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:vBJDE_yLHDKxey-IWXv6E", "type": "text", "props": { "color": "light-blue", @@ -1019,6 +1016,7 @@ }, "parentId": "page:page", "index": "aM", + "id": "shape:vBJDE_yLHDKxey-IWXv6E", "typeName": "shape" }, { @@ -1028,7 +1026,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:_t4LTwl4agabDm0Hz5HVL", "type": "text", "props": { "color": "red", @@ -1042,6 +1039,7 @@ }, "parentId": "page:page", "index": "aN", + "id": "shape:_t4LTwl4agabDm0Hz5HVL", "typeName": "shape" }, { @@ -1051,7 +1049,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:Yvq70_fNfx5nIp9GkQqQ9", "type": "text", "props": { "color": "red", @@ -1065,6 +1062,7 @@ }, "parentId": "page:page", "index": "aO", + "id": "shape:Yvq70_fNfx5nIp9GkQqQ9", "typeName": "shape" }, { @@ -1074,7 +1072,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:WdyQ2QhjjrCWI0tk6R-_-", "type": "text", "props": { "color": "light-blue", @@ -1088,6 +1085,7 @@ }, "parentId": "page:page", "index": "aP", + "id": "shape:WdyQ2QhjjrCWI0tk6R-_-", "typeName": "shape" }, { @@ -1097,7 +1095,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:sn-ONNReEZb8QvUYtnN3F", "type": "text", "props": { "color": "red", @@ -1111,6 +1108,7 @@ }, "parentId": "page:page", "index": "aQ", + "id": "shape:sn-ONNReEZb8QvUYtnN3F", "typeName": "shape" }, { @@ -1120,7 +1118,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:SWp66ET23rDWG4Z_5-6iV", "type": "text", "props": { "color": "red", @@ -1134,6 +1131,7 @@ }, "parentId": "page:page", "index": "aR", + "id": "shape:SWp66ET23rDWG4Z_5-6iV", "typeName": "shape" }, { @@ -1143,7 +1141,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:bum2G2h1zyxfH7rny2BOf", "type": "text", "props": { "color": "light-blue", @@ -1157,6 +1154,7 @@ }, "parentId": "page:page", "index": "aS", + "id": "shape:bum2G2h1zyxfH7rny2BOf", "typeName": "shape" }, { @@ -1166,7 +1164,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:_1Wtm701so2fbsHDXDJZQ", "type": "text", "props": { "color": "light-blue", @@ -1180,20 +1177,20 @@ }, "parentId": "page:page", "index": "aT", + "id": "shape:_1Wtm701so2fbsHDXDJZQ", "typeName": "shape" }, { - "x": 1737.22386272762, - "y": -184.00445632210918, + "x": 1676.4172055364486, + "y": -132.98161269987384, "rotation": 0.8726646259971647, "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:8uLjKjjHPwXQd57BWXo_z", "type": "geo", "props": { - "w": 278.7945451132749, - "h": 287.0290232860256, + "w": 201.14148025760124, + "h": 207.65156974874134, "geo": "pentagon", "color": "light-green", "labelColor": "black", @@ -1209,6 +1206,7 @@ }, "parentId": "page:page", "index": "aU", + "id": "shape:8uLjKjjHPwXQd57BWXo_z", "typeName": "shape" }, { @@ -1218,7 +1216,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:e5dMSo52J0HHlG9YESrCI", "type": "arrow", "parentId": "page:page", "index": "aV", @@ -1250,29 +1247,30 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:e5dMSo52J0HHlG9YESrCI", "typeName": "shape" }, { - "x": 1590.548536291834, - "y": -7.91318443753957, + "x": 1565.541702607665, + "y": -9.421019885090967, "rotation": 0.17453292519943275, "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:l39PY1imTRCPOVYNjxX5z", "type": "text", "props": { "color": "light-green", "size": "xl", - "w": 143.99921468414718, - "text": "datawherehouse", + "w": 193.5897275604708, + "text": "content-claims", "font": "draw", "align": "middle", "autoSize": true, - "scale": 0.5807624123188176 + "scale": 0.5327921428582484 }, "parentId": "page:page", "index": "aW", + "id": "shape:l39PY1imTRCPOVYNjxX5z", "typeName": "shape" }, { @@ -1282,7 +1280,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:5Sr_tC7ih4BMh3L2uwHtA", "type": "text", "props": { "color": "light-blue", @@ -1296,6 +1293,7 @@ }, "parentId": "page:page", "index": "ac", + "id": "shape:5Sr_tC7ih4BMh3L2uwHtA", "typeName": "shape" }, { diff --git a/rfc/datawherehouse/datawherehouse-2.svg b/rfc/datawherehouse/datawherehouse-2.svg index 351f02e..3cef1f9 100644 --- a/rfc/datawherehouse/datawherehouse-2.svg +++ b/rfc/datawherehouse/datawherehouse-2.svg @@ -1,4 +1,4 @@ -clientclientbafy...databafy...datacontent claimscontent claimsw3link/roundaboutw3link/roundaboutS3S3R2R2HTTP GETHTTP GET113322 \ No newline at end of file diff --git a/rfc/datawherehouse/datawherehouse-2.tldr b/rfc/datawherehouse/datawherehouse-2.tldr index 2b6d732..ff1d500 100644 --- a/rfc/datawherehouse/datawherehouse-2.tldr +++ b/rfc/datawherehouse/datawherehouse-2.tldr @@ -66,9 +66,9 @@ { "id": "pointer:pointer", "typeName": "pointer", - "x": 2135.4556816154072, - "y": 44.856787787542316, - "lastActivityTimestamp": 1709825856341, + "x": 1478.5387184841993, + "y": 80.13215461497452, + "lastActivityTimestamp": 1710170001656, "meta": {} }, { @@ -79,9 +79,9 @@ "typeName": "page" }, { - "x": -587.9166191154075, - "y": 902.9166497124577, - "z": 0.5, + "x": -545.8020637243478, + "y": 918.6365574334108, + "z": 0.6550643853852568, "meta": {}, "id": "camera:page:page", "typeName": "camera" @@ -118,8 +118,8 @@ "screenBounds": { "x": 0, "y": 0, - "w": 1217.5, - "h": 952.5 + "w": 972.5, + "h": 955 }, "insets": [ false, @@ -154,7 +154,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:lFxN7lrCdb0GAho4Hr9Bv", "type": "text", "props": { "color": "red", @@ -168,6 +167,7 @@ }, "parentId": "page:page", "index": "a5", + "id": "shape:lFxN7lrCdb0GAho4Hr9Bv", "typeName": "shape" }, { @@ -177,11 +177,10 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:ojiDwtJKXfVRpUIUOZY9i", "type": "geo", "props": { - "w": 278.7945451132749, - "h": 287.0290232860256, + "w": 203.01296219801353, + "h": 209.00915486141656, "geo": "pentagon", "color": "light-green", "labelColor": "black", @@ -197,29 +196,30 @@ }, "parentId": "page:page", "index": "aU", + "id": "shape:ojiDwtJKXfVRpUIUOZY9i", "typeName": "shape" }, { - "x": 1608.0615978152716, - "y": -27.795935902383324, + "x": 1627.0933371669414, + "y": -54.48277575980207, "rotation": 0.17453292519943275, "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:CGqTNffsP-X2c85jAh-ES", "type": "text", "props": { "color": "light-green", "size": "xl", - "w": 223.84534369496114, - "text": "content claims / \ndatawherehouse", + "w": 193.359092145691, + "text": "content claims", "font": "draw", "align": "middle", "autoSize": true, - "scale": 0.5807624123188176 + "scale": 0.5434112702565089 }, "parentId": "page:page", "index": "aW", + "id": "shape:CGqTNffsP-X2c85jAh-ES", "typeName": "shape" }, { @@ -229,7 +229,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:J64zU-v4IF_1FmE3dG-Fm", "type": "text", "props": { "color": "orange", @@ -243,6 +242,7 @@ }, "parentId": "page:page", "index": "aX", + "id": "shape:J64zU-v4IF_1FmE3dG-Fm", "typeName": "shape" }, { @@ -252,7 +252,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:YekHGfgTxybWfycr9nytd", "type": "geo", "props": { "w": 317.5064697265625, @@ -272,6 +271,7 @@ }, "parentId": "page:page", "index": "aY", + "id": "shape:YekHGfgTxybWfycr9nytd", "typeName": "shape" }, { @@ -281,7 +281,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:nDggrinBd0iW1XFfMl4KD", "type": "arrow", "parentId": "page:page", "index": "aZ", @@ -318,6 +317,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:nDggrinBd0iW1XFfMl4KD", "typeName": "shape" }, { @@ -327,7 +327,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:STGeiLFGUAspAS6P7fDpT", "type": "arrow", "parentId": "page:page", "index": "aa", @@ -364,6 +363,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:STGeiLFGUAspAS6P7fDpT", "typeName": "shape" }, { @@ -373,11 +373,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:Oyr0W_Z1zu4aYlhBLuRKy", "type": "group", "parentId": "page:page", "index": "ad", "props": {}, + "id": "shape:Oyr0W_Z1zu4aYlhBLuRKy", "typeName": "shape" }, { @@ -387,7 +387,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:7V9C86Q98094zAKQdp6kl", "type": "geo", "props": { "w": 110.08742199900355, @@ -407,6 +406,7 @@ }, "parentId": "shape:Oyr0W_Z1zu4aYlhBLuRKy", "index": "a1", + "id": "shape:7V9C86Q98094zAKQdp6kl", "typeName": "shape" }, { @@ -416,7 +416,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:4eQyuye6_sEZGl6d5kOW4", "type": "text", "props": { "color": "light-blue", @@ -430,6 +429,7 @@ }, "parentId": "shape:Oyr0W_Z1zu4aYlhBLuRKy", "index": "a2", + "id": "shape:4eQyuye6_sEZGl6d5kOW4", "typeName": "shape" }, { @@ -439,11 +439,11 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:GG_Jmz81mrWzP8jkrcEtk", "type": "group", "parentId": "shape:Oyr0W_Z1zu4aYlhBLuRKy", "index": "a3", "props": {}, + "id": "shape:GG_Jmz81mrWzP8jkrcEtk", "typeName": "shape" }, { @@ -453,7 +453,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:DJ2e9EBkrnlGZQXw_79_n", "type": "text", "props": { "color": "light-blue", @@ -467,6 +466,7 @@ }, "parentId": "shape:GG_Jmz81mrWzP8jkrcEtk", "index": "a1", + "id": "shape:DJ2e9EBkrnlGZQXw_79_n", "typeName": "shape" }, { @@ -476,7 +476,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:M8we5xr0Ino3yQ9tS4qhC", "type": "geo", "props": { "w": 109.43065763435156, @@ -496,6 +495,7 @@ }, "parentId": "shape:GG_Jmz81mrWzP8jkrcEtk", "index": "a2", + "id": "shape:M8we5xr0Ino3yQ9tS4qhC", "typeName": "shape" }, { @@ -505,7 +505,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:aK_JW-sQmHIkYPbCH4b3E", "type": "text", "props": { "color": "red", @@ -519,6 +518,7 @@ }, "parentId": "page:page", "index": "ae", + "id": "shape:aK_JW-sQmHIkYPbCH4b3E", "typeName": "shape" }, { @@ -528,7 +528,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:jvDnssNLVMSvCWeeE7jmN", "type": "text", "props": { "color": "red", @@ -542,6 +541,7 @@ }, "parentId": "page:page", "index": "af", + "id": "shape:jvDnssNLVMSvCWeeE7jmN", "typeName": "shape" }, { @@ -551,7 +551,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:IssOJARxWi65GL739ptJC", "type": "arrow", "parentId": "page:page", "index": "adV", @@ -578,6 +577,7 @@ "labelPosition": 0.5, "font": "draw" }, + "id": "shape:IssOJARxWi65GL739ptJC", "typeName": "shape" }, { @@ -587,7 +587,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:BwYOEtWytIQzKvuiXvLG_", "type": "text", "props": { "color": "orange", @@ -601,6 +600,7 @@ }, "parentId": "page:page", "index": "ag", + "id": "shape:BwYOEtWytIQzKvuiXvLG_", "typeName": "shape" }, { @@ -610,7 +610,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:ZGV5C5YXqWUnIfwcr1mEN", "type": "text", "props": { "color": "orange", @@ -624,6 +623,7 @@ }, "parentId": "page:page", "index": "ah", + "id": "shape:ZGV5C5YXqWUnIfwcr1mEN", "typeName": "shape" }, { @@ -633,7 +633,6 @@ "isLocked": false, "opacity": 1, "meta": {}, - "id": "shape:cde5dtDkskH15pMbQBNsB", "type": "geo", "props": { "w": 189.21682673746474, @@ -653,6 +652,7 @@ }, "parentId": "page:page", "index": "a6", + "id": "shape:cde5dtDkskH15pMbQBNsB", "typeName": "shape" } ]