TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

A database built like an operating system: the architecture of FaunaDB

143 pointsby evanweaverabout 8 years ago

15 comments

jandrewrogersabout 8 years ago
There is an old engineering aphorism that proper database engines are complete operating systems implemented in user-space. This is true both literally and figuratively; most sophisticated database kernels treat the underlying operating system as a glorified device driver.<p>It is why they are both so complex to implement and so much fun to build.
hullseanabout 8 years ago
When I was first introduced to Oracle years ago, I was surprised at how much it acted like an operating system inside. Once connected to the shell you could find processes running, examine memory through data dictionary queries and so forth. Tuning it involved looking at disk I&#x2F;O patterns, memory usage and making your loops tighter. In the SQL world that meant indexing &amp; reviewing plans for joins carefully.<p>MySQL &amp; Postgres carry some of those same attributes. Even though they are user processes and the OS controls the lower levels, you would typically deploy them on their own servers, and give them all the memory &amp; disk I&#x2F;O you could, because they were their own operating systems essentially.<p>It&#x27;s not clear to me how building a database &quot;like an operating system&quot; is something new. What I did see new in there was a consistency checking tool. That is super important. Because in a distributed environment you&#x27;re bound to have drift.<p>Also I&#x27;d like to see how they managed to get full ACID Compliance. Fast network interfaces are great but there is still some latency which means hiccups when multiple nodes try to update the same row.
评论 #14008863 未加载
评论 #14011350 未加载
评论 #14009457 未加载
评论 #14008672 未加载
cr0shabout 8 years ago
Hey, they re-invented PICK!<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Pick_operating_system" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Pick_operating_system</a><p>(actually, I don&#x27;t know much about this new system to be commenting on it - but whenever I see something with keywords like &quot;database operating system&quot; - my mind instantly drifts to PICK, because that was the first system I used when I started my software development career)
评论 #14008778 未加载
评论 #14009675 未加载
评论 #14012339 未加载
borplkabout 8 years ago
Similarly I&#x27;d love to see an operating system that operated like a database.<p>Hate the arbitrary ascii-file nonsense. If the state of the operating system is in a proper ACID database it would be so nice. Tooling could make it just as easy as ascii files but under the hood it would be better.
评论 #14011942 未加载
评论 #14010038 未加载
评论 #14010843 未加载
评论 #14010039 未加载
评论 #14010040 未加载
evanweaverabout 8 years ago
Hey everybody. Direct link to the PDF is: <a href="https:&#x2F;&#x2F;fauna.com&#x2F;pdf&#x2F;FaunaDB-Technical-Whitepaper.pdf" rel="nofollow">https:&#x2F;&#x2F;fauna.com&#x2F;pdf&#x2F;FaunaDB-Technical-Whitepaper.pdf</a>
ablockabout 8 years ago
Daytona from AT&amp;T Labs built the database into the OS...I don’t think it worked very well. The inverted model makes more sense. A process per query isn&#x27;t very scalable.
评论 #14008947 未加载
quantum_stateabout 8 years ago
Technical issues aside, as a db service platform provider, the statement in its Terms, &quot;FI adheres to policies and procedures to prevent data and information loss, including a daily back-up regime, but does not make any guarantees that there will be no loss of data or information, or that FI policies and procedures will conform to industry best practices. FI expressly excludes and disclaims any liability for any loss of Licensee&#x27;s data and information, no matter how such loss was caused.&quot; will make any serious user think twice or more times ... Would welcome further comments.
评论 #14010157 未加载
batoureabout 8 years ago
The &quot;starting from thinking about this like its linux instead of thinking of it like its oracle&quot; description is one I regularly use in Hadoop talks for less technical audiences.<p>The paper is interesting, it leaves me with more questions than answers.<p>The biggest question is: -is this a new beast from the ground up or more efficient packaging around existing distributed computing libraries?<p>--For example when I hear a company say something like:<p>&gt; based on log-structured merge trees (similar to Google Bigtable<p>I want to understand if they are just rebranding HBase for that part of the tool
评论 #14008763 未加载
whargarblabout 8 years ago
&quot;FaunaDB implements a process scheduler that dynamically allocates resources and enforces quality of service...Execution proceeds via cooperative multitasking.&quot;<p>Just like Windows 95! I don&#x27;t think I&#x27;ve ever seen a database do this. Apparently it operates per-query or at least per application. Operating system seems right; this is a long paper.
评论 #14009463 未加载
评论 #14011565 未加载
评论 #14007894 未加载
corysamaabout 8 years ago
So, can we get this running on a microkernel? Or, Fauna-on-Xen, anybody? :]
elvinyungabout 8 years ago
How does FaunaDB plan to support or enable many OLAP use cases? As far as I understand it, there are no interactive query sessions due to Calvin, but can I easily e.g. ETL things into a data warehouse?
评论 #14009364 未加载
pbnjayabout 8 years ago
Wasn&#x27;t the Informix Database effectively an operating system? I&#x27;m sure it wasn&#x27;t the only one. This paper makes it sound like they&#x27;re the only one.
zenithmabout 8 years ago
Detailed consistency model explanation starts on page 15.
socmagabout 8 years ago
Performance numbers anyone?
评论 #14008891 未加载
评论 #14008899 未加载
frikabout 8 years ago
Some older operating systems used a database-filesystem or database like filesystem as storage.<p>I heard older IBM systems had something like this. BeOS had BeFS with inbuilt metadata index. NTFS + WinFS in user land vision was a bit like this. Office server aka MS Sharepoint (which implemented WinFS vision for intranet) stores all files in the database.
评论 #14011477 未加载