)]}'
{"specs/kilo/distributed-database-backend.rst":[{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"change_message_id":"d72febbdfe0896f7a2c3267a8babdfb715cb0af3","unresolved":false,"context_lines":[{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Currently MySQL, the default backend for keystone, is a single point of failure"},{"line_number":20,"context_line":"in the system which impacts availability of the keystone service."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Proposed Change"},{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a930d6b_f31cbf79","line":20,"updated":"2015-01-23 10:13:05.000000000","message":"I would say we can elaborate more on the problem description. An example would be:\n\nRelational databases like MySQL, PostgreSQL were designed to be consistent relational datastores, with little attention to scalability and fault tolerance support built into them directly. Solutions like Gallera were built in order to allow scaling of such databases, but there is a limit to which they can scale. NoSQL databases are designed right from start with unlimited scalability in mind.\n\nRigid schema of relational databases also makes it slightly harder to perform database migrations, which are less of a pain in flexible schemas of NoSQL world.\n\nAlso, if an organization is already using a NoSQL database, e.g. Cassandra for some of it\u0027s architectural pieces (e.g. Juniper\u0027s OpenContrail SDN solution uses Cassandra), it is less than ideal to maintain and operate two datastores.","commit_id":"38f6caff3ee41b8177eb3d6542f71ffe7c835423"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"change_message_id":"d72febbdfe0896f7a2c3267a8babdfb715cb0af3","unresolved":false,"context_lines":[{"line_number":22,"context_line":"Proposed Change"},{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"The proposal is to add a new driver which uses a NoSQL backend. The backend is"},{"line_number":26,"context_line":"MagnetoDB, which provides a DynamoDB API, and is implemented on top of"},{"line_number":27,"context_line":"Cassandra."},{"line_number":28,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a930d6b_4614f343","line":25,"updated":"2015-01-23 10:13:05.000000000","message":"This might be a better sentence:\n\nThe \u0027backend interface\u0027 is MagnetoDB API \u003clink to magnetoDB GitHub page\u003e","commit_id":"38f6caff3ee41b8177eb3d6542f71ffe7c835423"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"change_message_id":"d72febbdfe0896f7a2c3267a8babdfb715cb0af3","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"The proposal is to add a new driver which uses a NoSQL backend. The backend is"},{"line_number":26,"context_line":"MagnetoDB, which provides a DynamoDB API, and is implemented on top of"},{"line_number":27,"context_line":"Cassandra."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Alternatives"},{"line_number":30,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a930d6b_2681a74a","line":27,"updated":"2015-01-23 10:13:05.000000000","message":"We can add more information here that the alternate NoSQL driver will be added one-by-one to each of keystone\u0027s backend.","commit_id":"38f6caff3ee41b8177eb3d6542f71ffe7c835423"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"change_message_id":"d72febbdfe0896f7a2c3267a8babdfb715cb0af3","unresolved":false,"context_lines":[{"line_number":48,"context_line":""},{"line_number":49,"context_line":"None."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"Performance Impact"},{"line_number":52,"context_line":"------------------"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"None."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a930d6b_a61677ef","line":51,"updated":"2015-01-23 10:13:05.000000000","message":"A NoSQL backend will cause performance to increase at very large scales. Potentially any amount of throughput can be handled by Cassandra without degrading reads and write operational latencies at all.","commit_id":"38f6caff3ee41b8177eb3d6542f71ffe7c835423"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"change_message_id":"d72febbdfe0896f7a2c3267a8babdfb715cb0af3","unresolved":false,"context_lines":[{"line_number":125,"context_line":"  \u003chttps://github.com/stackforge/magnetodb\u003e`_"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"* `MagnetoDB documentation"},{"line_number":128,"context_line":"  \u003chttp://magnetodb.readthedocs.org/en/latest/\u003e`_"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a930d6b_b3b5d732","line":128,"updated":"2015-01-23 10:13:05.000000000","message":"Might also make sense to add link to information related to DynamoDB","commit_id":"38f6caff3ee41b8177eb3d6542f71ffe7c835423"}]}
