4 ms·
If you think about it, the Windows registry is the first and most deployed NoSQL database.
by pkrumins 4y ago
If you think about it, the Windows registry is the first and most deployed NoSQL database.
- meepmorp 4y agoMainframe databases from the 60s.
- loudgas 4y agoNot really. Databases predate SQL.
- throwawayboise 4y agoAnd they predate Windows.
- Const-me 4y agoEach Windows installation only has 1 registry, but it normally has multiple ESENT databases https://en.wikipedia.org/wiki/Extensible_Storage_Engine https://en.wikipedia.org/wiki/Extensible_Storage_Engine These databases are NoSQL as well. Albeit somewhat closer to traditional SQL than the registry: ESENT databases are made of B-trees, have column schema, primary/secondary indices, and support transactions. Unlike SQL servers, ESENT doesn’t have relations across tables, doesn’t have a query language (instead it has a low-level API to move cursors), and doesn’t support remote nor inter-process access, a DB is exclusive to a single process.
- zinekeller 4y ago> Each Windows installation only has 1 registry This is clearly false, how could you store user-specific data? (Hint: it's the NTUSER.DAT on each of the users' directory.) Additionally, you could create binary registry files and load them, funnily in much the same manner as how would mount drives on Unix and Unix-derived/inspired systems. Unless you consider that as a single root, the comparison that "Windows only has 1 registry" (which is wrong since that system-wide registry is backed up every boot and shutdown) is silly.
- Const-me 4y agoThe HKEY_CURRENT_USER key is just an alias within the same DB, it points to some key under HKEY_USERS. I don't think this counts as another instance of the DB, despite stored in separate files. ESENT databases are independent: a database used by Windows search doesn't share anything with the DB used by windows update or Zune music.
- zinekeller 4y agoAgain, do you consider a Unix root a single file system? Also, you've just ignored the whole line about loading custom registry files.
- Const-me 4y ago> do you consider a Unix root a single file system? No idea. On Windows, I consider volume a single file system. > you've just ignored the whole line about loading custom registry files I know about them. If you really want multiple instances of the registry, you can also use virtual machines with guest Windows OS. Still, 99% of Windows users don't do any of that. But their OS runs several programs like Windows search indexer which create and use ESENT databases. That's why I consider ESENT to be the most deployed NoSQL DB.
- tinus_hn 4y agoThe user registries are in those ntuser.dat files. The registry tree is like the Unix filesystem, the system mounts subtrees at specific locations. So the ntuser.dat files get mounted in HKEY_USERS. There are also magic aliases like HKEY_CURRENT_USER and (mostly system managed) links like CurrentControlSet.
- banana_giraffe 4y agoWouldn't something like Berkeley DB be closer to having that honor?