{"id":594,"date":"2020-04-18T18:13:44","date_gmt":"2020-04-19T02:13:44","guid":{"rendered":"http:\/\/www.nathanbak.com\/?p=594"},"modified":"2026-01-02T20:05:19","modified_gmt":"2026-01-03T04:05:19","slug":"a-database-i-want-to-use","status":"publish","type":"post","link":"https:\/\/nathanbak.com\/?p=594","title":{"rendered":"A Database I Want to Use"},"content":{"rendered":"\n<p><em>If you&#8217;re only interested in connecting your ESP8266 to a database, skip to the bottom  paragraph.  If you&#8217;re not interested in databases, read the whole thing.<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"594\" src=\"http:\/\/www.nathanbak.com\/wp-content\/uploads\/2020\/04\/2020-04-18-18.33.55-scaled-e1587262027390-1024x594.jpg\" alt=\"\" class=\"wp-image-597\" srcset=\"https:\/\/nathanbak.com\/wp-content\/uploads\/2020\/04\/2020-04-18-18.33.55-scaled-e1587262027390-1024x594.jpg 1024w, https:\/\/nathanbak.com\/wp-content\/uploads\/2020\/04\/2020-04-18-18.33.55-scaled-e1587262027390-300x174.jpg 300w, https:\/\/nathanbak.com\/wp-content\/uploads\/2020\/04\/2020-04-18-18.33.55-scaled-e1587262027390-768x445.jpg 768w, https:\/\/nathanbak.com\/wp-content\/uploads\/2020\/04\/2020-04-18-18.33.55-scaled-e1587262027390-1536x891.jpg 1536w, https:\/\/nathanbak.com\/wp-content\/uploads\/2020\/04\/2020-04-18-18.33.55-scaled-e1587262027390-2048x1188.jpg 2048w, https:\/\/nathanbak.com\/wp-content\/uploads\/2020\/04\/2020-04-18-18.33.55-scaled-e1587262027390-1200x696.jpg 1200w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n\n\n\n<p>I am not interested in databases.  As a software developer, I understand the value of a good database and I like using databases to store\/retrieve\/search\/etc. data.  The part I don&#8217;t like is the setting up, configuring, optimizing, scaling, maintaining, and other tasks required to keep a database up-and-running.  I want to spend my time writing code rather than babysitting a database.  I want to use a database, not run a database.<\/p>\n\n\n\n<p>Nearly four years ago when playing with my then new ESP8266 I needed a database and <a href=\"http:\/\/www.nathanbak.com\/?p=259\">I ended up going with REDIS and WEBDIS<\/a> because it was the lowest bar to entry that I could find for my requirements.  It has worked well-enough for my needs, but nothing to rave about.  I&#8217;ve spent the past two years making something exponentially better.<\/p>\n\n\n\n<p>In 2018 I joined <a href=\"https:\/\/www.datastax.com\/\">Datastax<\/a> which is the most important company behind the NoSQL database <a href=\"http:\/\/cassandra.apache.org\/\">Apache Cassandra<\/a>.  Cassandra was not a database that I wanted to use.  While the performance, scalability and reliability of Cassandra are unsurpassed, the complexity to get Cassandra ready to go and keep it running was a deal breaker for someone like me that isn&#8217;t interested in being a DB admin.<\/p>\n\n\n\n<p>As a Senior Software Engineer on the Datastax Cloud Team I had various responsibilities, but my personal goal was to create a database I wanted to use.  The team succeeded with <a href=\"https:\/\/www.datastax.com\/cloud\/datastax-astra\">Datastax Astra<\/a> which is a &#8220;Cloud-native Database-as-a-Service built on Apache Cassandra&#8221;.  That means I can just go to a website, fill in a few details, click a button, and seconds later I have a database I can use.  It&#8217;s awesome.<\/p>\n\n\n\n<p>My day job was working to make Datastax Astra a database I wanted to use and finally I am able to spend my weekends using it.  I created an Arduino library called <a href=\"https:\/\/github.com\/NathanBak\/astra_esp8266\">astra_esp8266<\/a> which makes it easy for an ESP8266 to communicate with a database.  The source code is available on <a href=\"https:\/\/github.com\/NathanBak\/astra_esp8266\">github<\/a> but most users will probably just want to <a href=\"https:\/\/www.ardu-badge.com\/astra_esp8266\">install the library into an Arduino IDE<\/a>.  After four years, with two of those years taking thousands of hours of my time, there is now a database that I want to use.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you&#8217;re only interested in connecting your ESP8266 to a database, skip to the bottom paragraph. If you&#8217;re not interested in databases, read the whole thing. I am not interested in databases. As a software developer, I understand the value of a good database and I like using databases to store\/retrieve\/search\/etc. data. The part I &hellip; <a href=\"https:\/\/nathanbak.com\/?p=594\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;A Database I Want to Use&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[13,10],"class_list":["post-594","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-esp8266","tag-making"],"_links":{"self":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts\/594","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=594"}],"version-history":[{"count":4,"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts\/594\/revisions"}],"predecessor-version":[{"id":599,"href":"https:\/\/nathanbak.com\/index.php?rest_route=\/wp\/v2\/posts\/594\/revisions\/599"}],"wp:attachment":[{"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=594"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=594"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nathanbak.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=594"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}