Comments (4)
Ideas on how support for automatic partitioning could be implemented in an as flexible and unopinionated way as possible, please chime in.
from aspnetcore.identity.documentdb.
Hi, I'm not remotely thinking that I am a specialist in Identity, or CosmosDB, but I am certainly an interested party, but there could certainly be some big holes in my suggestion.
My understanding of partitions is that Cosmos automatically assigns the partitions in the background, keeping track of what partition keys are in what partition. Everything with the same partition key is guaranteed to be on the same partition.
I think the easiest way to do this is to have 3 documents. The main user document which will have the userId (or some guid/random string) as the partition key, and in general any other documents for that known user would have the same partition key, keeping all their documents on the same partition.
The other 2 documents are very small and are used to find the partition key for the main document. One would be for finding the user by the user name, and would have a partition key that is the user name. All this document really contains is the partition key for the main user document that work can then be performed from. The other one would basically be the same, but with the user id (or whatever other info is used to search for the user) instead of the user name.
Does that make sense? I appreciate that it will mean there are always 2 files to read when someone logs in, but don't think this would be too much overhead would it??
from aspnetcore.identity.documentdb.
Do you have any progress on this? We would like to use this repository in our project with partitioned Cosmos DB, but with the current implementation we can't.
@daveh101 I think your idea is good because by querying by partitionkey is almost free in cosmosdb so you can get the partitionkey for almost free and then query for the user also for free.
from aspnetcore.identity.documentdb.
Hi Folks,
Is there any update on this topic? I see the thread is quite long out there so just wanted to ping if there`s any update on it...
from aspnetcore.identity.documentdb.
Related Issues (20)
- Has anyone got this running in a web api project? HOT 1
- Not able to compile samples in Visual Studio for Mac HOT 1
- remove claim does not work HOT 3
- AspNetCore 2.0 HOT 8
- Error running application after upgrade to core 2.0 HOT 5
- deserializing claims
- Unable to log back in after creating a user, null as part of the Claims Process
- Take document db collection name as parameter HOT 1
- Claims cannot be deserialized HOT 3
- ObjectDisposedException HOT 1
- Missing method exception after upgrading to SDK 2.1.3
- Question - How are the document updated? HOT 1
- TypeLoadException: Method 'NormalizeName' in type 'LookupNormalizer' does not have an implementation HOT 5
- SSL should be enabled in the sample
- AddDefaultDocumentClientForIdentity is missing from NuGet package HOT 3
- Is it considered to change dependency to Microsoft.Azure.Cosmos?
- Use IDocumentClient instead of DocumentClient HOT 1
- Subclass Userstore to allow using it without any RoleStore
- Adding samples how to use and manage Roles HOT 1
- Getting exception BadRequestException: Cross partition query is required but disabled. Please set x-ms-documentdb-query-enablecrosspartition to true, specify x-ms-documentdb-partitionkey, or revise your query to avoid this exception. HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aspnetcore.identity.documentdb.