1 <!DOCTYPE html>2 <html lang="en">3 <head>4 <meta charset="UTF-8">5 <meta name="viewport" content="width=device-width, initial-scale=1">6 <title>InceptionDB - NoSQL Journal-based Database for JSON Documents</title>7 <!-- Se incluye Font Awesome para iconos (opcional) -->8 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">9 <style>10 /* Reset básico */11 * {12 margin: 0;13 padding: 0;14 box-sizing: border-box;15 }16 body {17 font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;18 line-height: 1.6;19 color: #333;20 }21 a {22 text-decoration: none;23 }24 /* Header */25 header {26 background-color: #232f3e;27 color: #fff;28 padding: 20px 0;29 }30 header .container {31 max-width: 1200px;32 margin: 0 auto;33 padding: 0 20px;34 display: flex;35 align-items: center;36 justify-content: space-between;37 }38 header h1 {39 font-size: 24px;40 }41 nav ul {42 list-style: none;43 display: flex;44 }45 nav ul li {46 margin-left: 20px;47 }48 nav ul li a {49 color: #fff;50 font-size: 16px;51 transition: color 0.3s;52 }53 nav ul li a:hover {54 color: #ff9900;55 }56 /* Hero Section */57 .hero {58 background: url('https://via.placeholder.com/1920x800') no-repeat center center/cover;59 color: #fff;60 padding: 100px 20px;61 text-align: center;62 }63 .hero h2 {64 font-size: 48px;65 margin-bottom: 20px;66 }67 .hero p {68 font-size: 20px;69 margin-bottom: 30px;70 }71 .cta {72 background-color: #ff9900;73 color: #fff;74 padding: 15px 30px;75 font-size: 18px;76 border: none;77 border-radius: 4px;78 cursor: pointer;79 text-decoration: none;80 transition: background 0.3s;81 }82 .cta:hover {83 background-color: #e88e00;84 }85 /* Secciones generales */86 section {87 padding: 60px 20px;88 }89 .container {90 max-width: 1200px;91 margin: 0 auto;92 }93 section h2 {94 font-size: 36px;95 margin-bottom: 20px;96 text-align: center;97 }98 section p {99 font-size: 18px;100 margin-bottom: 20px;101 text-align: justify;102 line-height: 1.5;103 }104 /* Estilos específicos para cada sección */105 .motivation {106 background-color: #f4f4f4;107 }108 .overview {109 background-color: #fff;110 }111 .performance {112 background-color: #f4f4f4;113 }114 /* Footer */115 footer {116 background-color: #232f3e;117 color: #fff;118 text-align: center;119 padding: 20px;120 }121 /* Responsive */122 @media (max-width: 768px) {123 header .container {124 flex-direction: column;125 }126 nav ul {127 flex-direction: column;128 align-items: center;129 }130 nav ul li {131 margin: 10px 0;132 }133 }134 </style>135 </head>136 <body>137 138 <!-- Header -->139 <header>140 <div class="container">141 <h1>InceptionDB</h1>142 <nav>143 <ul>144 <li><a href="#hero">Home</a></li>145 <li><a href="#motivation">Motivation</a></li>146 <li><a href="#overview">Technical Overview</a></li>147 <li><a href="#performance">Performance</a></li>148 <li><a href="#contact">Contact</a></li>149 </ul>150 </nav>151 </div>152 </header>153 154 <!-- Hero Section -->155 <section class="hero" id="hero">156 <div class="container">157 <h2>InceptionDB</h2>158 <p>A no-sql database based on journal to store JSON documents.</p>159 <a href="#motivation" class="cta">Learn More</a>160 </div>161 </section>162 163 <!-- Motivation Section -->164 <section class="motivation" id="motivation">165 <div class="container">166 <h2>Motivation</h2>167 <p>168 InceptionDB was born to be the persistence layer of another project called Bitumen.169 Bitumen is a distributed NAS that should store family memories, pictures and videos that should last for 50 or 100 years.170 One of the biggest motivations is that the code should be simple and easy to maintain (yes, even the database itself)171 and also 100% free of license restrictions. The second biggest motivation is to have fun and learn some things :D.172 </p>173 </div>174 </section>175 176 <!-- Technical Overview Section -->177 <section class="overview" id="overview">178 <div class="container">179 <h2>Technical Overview</h2>180 <p>181 InceptionDB stores all the data in memory and also a copy on disk in the form of a journal.182 When the service starts, the journal is read and applied to recreate the last valid state in memory.183 From that point on, it is ready to continue operation.184 One lateral effect is that you can recover the state of the whole database at any point in the past.185 </p>186 <p>187 It supports unique indexes that can be:188 </p>189 <ul style="margin-left: 20px; font-size: 18px; line-height: 1.6;">190 <li><strong>Sparse:</strong> The value can be undefined (so, the document is not indexed and unreachable by the index).</li>191 <li><strong>Multivaluated:</strong> Multiple values will point to the same record (if the value is an array of strings).192 A B+ index is a MUST before using it on a real application.193 </li>194 </ul>195 <p>196 It does not have a scheduler, so the user has the responsibility to choose the proper index (or do a full scan).197 The main drawback is that adding a new index will require modifying the application.198 </p>199 </div>200 </section>201 202 <!-- Performance Section -->203 <section class="performance" id="performance">204 <div class="container">205 <h2>Performance</h2>206 <p>207 InceptionDB has been designed to be small and easy to read, not to be blazing fast, but some performance tests reach208 more than 200K inserts per second with 2 indexes in one node.209 </p>210 </div>211 </section>212 213 <!-- Footer / Contact -->214 <footer id="contact">215 <div class="container">216 <p>© 2025 InceptionDB. All rights reserved.</p>217 </div>218 </footer>219 220 </body>221 </html>222
Enlace
El enlace para compartir es: