61 lines
No EOL
4.4 KiB
HTML
61 lines
No EOL
4.4 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<title>CLiki: cl-naive-store</title>
|
|
<link rel="alternate" type="application/atom+xml" title="ATOM feed of edits to current article"
|
|
href="https://www.cliki.net/site/feed/article.atom?title=cl-naive-store">
|
|
<link rel="stylesheet" href="static/css/style.css">
|
|
<link rel="stylesheet" href="static/css/colorize.css">
|
|
</head>
|
|
|
|
<body>
|
|
<span class="hidden">CLiki - cl-naive-store</span>
|
|
<div id="content"><div id="content-area"><div id="article-title">cl-naive-store</div><div id="article">cl-naive-store is a <a href="database.html" class="category">database</a> (document store to be more precise) which is persisted, in memory (lazy loading), indexed and written completely in Common Lisp.<p>The naive bit comes from the fact that data is persisted as plists in files to make them human and machine readable, also there is no rocket science code.<p>The store was designed to be customisable, just about anything can be customised, have a look at the implementation api to get an idea of what is possible.<p>
|
|
Licence: MIT<p>Homepage: <a href="https://gitlab.com/Harag/cl-naive-store"> https://gitlab.com/Harag/cl-naive-store </a> <p><h3>Features</h3><p><h4>Persisted</h4><p> Data can be written to file per document update or as a batch update. <p><h4>In memory</h4><p> Data is loaded into memory for querying and lookups, that makes them fast. <p><h4>Lazy Loading</h4><p> Data is only loaded when needed and not before. If you use the store
|
|
correctly it means that you will only have the data that users
|
|
requested up to that point in memory. <p><h4>Indexed</h4><p> Documents and key values can be indexed, and a user can specify their
|
|
own additional indexes as well. Queries and lookups can both be done using
|
|
indexes which speeds up the retrieval of data considerably. <p><h4>Sharding</h4><p> Sharding is the breaking down of files into smaller files, in the case
|
|
of naive-store that means that instead of one file per collection there
|
|
could be many. <p> Sharding is done based on the actual data in collections. The user
|
|
specifies which elements of a document it wants to use for sharding on
|
|
a collection. If none is specified no sharding is done. <p>
|
|
<hr><p><a href="StructuredStorage.html" class="category">StructuredStorage</a></div></div>
|
|
<div id="footer" class="buttonbar"><ul><li><a href="cl-naive-store.html">Current version</a></li>
|
|
<li><a href="https://www.cliki.net/site/history?article=cl-naive-store">History</a></li>
|
|
<li><a href="https://www.cliki.net/site/backlinks?article=cl-naive-store">Backlinks</a></li><li><a href="https://www.cliki.net/site/edit-article?title=cl-naive-store&from-revision=3833923379">Edit</a></li><li><a href="https://www.cliki.net/site/edit-article?create=t">Create</a></li></ul></div>
|
|
</div>
|
|
<div id="header-buttons" class="buttonbar">
|
|
<ul>
|
|
<li><a href="https://www.cliki.net/">Home</a></li>
|
|
<li><a href="https://www.cliki.net/site/recent-changes">Recent Changes</a></li>
|
|
<li><a href="CLiki.html">About</a></li>
|
|
<li><a href="Text Formatting.html">Text Formatting</a></li>
|
|
<li><a href="https://www.cliki.net/site/tools">Tools</a></li>
|
|
</ul>
|
|
<div id="search">
|
|
<form action="https://www.cliki.net/site/search">
|
|
<label for="search_query" class="hidden">Search CLiki</label>
|
|
<input type="text" name="query" id="search_query" value="" />
|
|
<input type="submit" value="search" />
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<div id="pageheader">
|
|
<div id="header">
|
|
<span id="logo">CLiki</span>
|
|
<span id="slogan">the common lisp wiki</span>
|
|
<div id="login"><form method="post" action="https://www.cliki.net/site/login">
|
|
<label for="login_name" class="hidden">Account name</label>
|
|
<input type="text" name="name" id="login_name" class="login_input" />
|
|
<label for= "login_password" class="hidden">Password</label>
|
|
<input type="password" name="password" id="login_password" class="login_input" />
|
|
<input type="submit" name="login" value="login" id="login_submit" /><br />
|
|
<div id="register"><a href="https://www.cliki.net/site/register">register</a></div>
|
|
<input type="submit" name="reset-pw" value="reset password" id="reset_pw" />
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body></html> |