codernity avatar codernity committed 04a98d1

Documentation (faq, howto) updates.

Comments (0)

Files changed (2)

docs/demo_secure_storage.py

             self.__enc_key = value
         self.storage.enc_key = self.__enc_key
 
-    def _open_storage(self):
+    def _setup_storage(self):
         if not self.storage:
             self.storage = Salsa20Storage(
                 self.db_path, self.name, self.enc_key)
-            self.storage.open()
+
+    def _open_storage(self):
+        self._setup_storage()
+        self.storage.open()
 
     def _create_storage(self):
-        if not self.storage:
-            self.storage = Salsa20Storage(
-                self.db_path, self.name, self.enc_key)
-            self.storage.create()
+        self._setup_storage()
+        self.storage.create()
 
 
 def main():
     Everything can be done through our Index mechanism see :ref:`tables_colections_q`.
 
 How does it compare to MongoDB, CouchDB and other "big" NoSQL databases ?
-    Different purposes + different design. CodernityDB doesn't have yet any replication engine. However we are sure that there is a place for CodernityDB. Nothing is impossible in CodernityDB, because Index IS a Python class where you can do anything (if you're not a Python user we created :ref:`simple_index`).
+    Different purposes + different design. CodernityDB doesn't have yet any replication engine (yet?). However we are sure that there is a place for CodernityDB. Nothing is impossible in CodernityDB, because Index IS a Python class where you can do anything (if you're not a Python user we created :ref:`simple_index`). Don't try make CodernityDB relational database, it will work but its not *that*. It can act as a simple key-value database or as a database with secondary indexes (ordering / selecting etc). You can optimize IO performance by moving indexes data on different partitions. Generally the CodernityDB index mechanism is really powerful, its much more than in other databases (it's more similar to CouchDB views).
 
 Why Python 3 is not supported ?
     Python 3 introduced many incompatible changes. In case of CodernityDB having working version for 2.x and 3.x series in the same code base without ugly hacks (big monkey-patching etc.) is almost impossible. If you're interested Python 3 version of CodernityDB contact us. Porting CodernityDB to Python 3.x is not hard. Python 3.x support in fact was never needed. That's why there is no support for it (yet?).
 Can I do prefix/infix/suffix search in CodernityDB ?
     Sure! Please refer to :ref:`multiple_keys_index`. By using such method you will get very fast prefix/infix/suffix search mechanism.
 
+What If I want to implement my own Index ?
+    At first you have to remember that implementing custom index shouldn't require changes in Database itself. Because of CodernityDB design, database object tries to perform operations on particular index as fast as it's possible. Good example of such method is :ref:`multiple_keys_index`.
+
 I want to use CodernityDB in commercial project, do I have to pay for it?
     CodernityDB is released on `Apache 2.0 license`_, it allows you to freely use it even for commercial purposes without any need to pay for it. IT'S FREE FOR COMMERCIAL USE. 
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.