Hacker News new | past | comments | ask | show | jobs | submit login
AriaSQL – A new open-source relational database system written in GO (github.com/ariasql)
6 points by alexpadula 27 days ago | hide | past | favorite | 5 comments



Hello, I hope all are well. The past year I've been studying and implementing a variety of different databases ( see here https://github.com/guycipher ) and most recently I've gotten obsessed with building a relational database from the ground up, and sticking to it. I started writing AriaSQL about 7 months ago privately, studying the different concepts required to build such a system.

I'd like to share my current progress. Mind you Aria is still in the beta stages and early stages of building a full fledged relational database system. Having a project like this, never stops. SQL is an old language, and being added to often enough where majority of systems don't implement the entire language nor all the features.

Current implementation: ~ SQL1+ handwritten parser, lexer implementation

~ BTrees for indexes

~ Optimized execution engine / compiler

~ SQL Server (TCP Server on port 3695)

~ User authentication and privileges

~ Atomic transactions with rollback support on error

~ WAL (Write Ahead Logging)

~ Recovery-Replay from WAL

~ Subqueries

~ Aggregates

~ Implicit joins

~ Row level locking

~ Users and privileges

I hope you take the time to check it out! There is much more to come, I work on the database religiously, it's a passion project of mine.

Thank you for your time. Any questions I'll be sure to answer!


What are the (future) use cases for Aria ?


Hey @kermatt, the future use cases will be that of a regular relational database. My goal is to make AriaSQL strict on the SQL standard, simple to use, and great for concurrent environments.


Great project! Do you plan on implementing distributed features into Aria?


Hey! Thank you for your kind comment. I haven't decided on that just yet.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: