{"id":36749,"date":"2019-03-02T11:15:59","date_gmt":"2019-03-02T09:15:59","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=36749"},"modified":"2019-03-02T11:17:09","modified_gmt":"2019-03-02T09:17:09","slug":"dgraph-fast-transactional-distributed-graph-database","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2019\/03\/02\/dgraph-fast-transactional-distributed-graph-database\/","title":{"rendered":"Dgraph &#8211;  fast, transactional, distributed graph database"},"content":{"rendered":"<!-- google_ad_section_start -->\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"385\" height=\"155\" data-attachment-id=\"36750\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2019\/03\/02\/dgraph-fast-transactional-distributed-graph-database\/dgraph\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/03\/dgraph.png?fit=385%2C155&amp;ssl=1\" data-orig-size=\"385,155\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"dgraph\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/03\/dgraph.png?fit=385%2C155&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2019\/03\/dgraph.png?resize=385%2C155&#038;ssl=1\" alt=\"\" class=\"wp-image-36750\"\/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/dgraph.io\/\">Dgraph<\/a> is a fast, transactional distributed graph database, written in Go.  It&#8217;s <a href=\"https:\/\/github.com\/dgraph-io\/dgraph\">Open Source<\/a> too.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you need a quick introduction to graph databases or if you are wondering whether you need to use one, here&#8217;s a good video to get you started.<\/p>\n\n\n\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<span class=\"embed-youtube\" style=\"text-align:center; display: block;\"><iframe loading=\"lazy\" class=\"youtube-player\" width=\"660\" height=\"372\" src=\"https:\/\/www.youtube.com\/embed\/cHXbYLNa0qQ?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en-US&#038;autohide=2&#038;wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\"><\/iframe><\/span>\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">For even more insight, read &#8220;<a href=\"https:\/\/blog.dgraph.io\/post\/why-google-needed-graph-serving-system\/\">Why Google Needed a Graph Serving System<\/a>&#8220;.  There are some interesting examples of problems, solutions, and data discovery.  For example:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><strong>Cerebro would often reveal very interesting facts<\/strong>&nbsp;that one didn\u2019t originally search for. When you\u2019d run a query like&nbsp;<code>[us presidents]<\/code>, Cerebro would understand that presidents are humans, and humans have height. Therefore, it would allow you to sort presidents by height and show that&nbsp;<em>Abraham Lincoln<\/em>&nbsp;is the tallest US president. It would also let people be filtered by nationality. In this case, it showed America and Britain in the list, because US had one British president, namely&nbsp;<em>George Washington.<\/em>&nbsp;(<em>Disclaimer: Results based on the state of KG at the time; can\u2019t vouch for the correctness of these results.<\/em>)<br><br><\/p><\/blockquote>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>Dgraph is a fast, transactional distributed graph database, written in Go. It&#8217;s Open Source too. If you need a quick introduction to graph databases or if you are wondering whether you need to use one, here&#8217;s a good video to get you started. For even more insight, read &#8220;Why Google Needed a Graph Serving System&#8220;. &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2019\/03\/02\/dgraph-fast-transactional-distributed-graph-database\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Dgraph &#8211;  fast, transactional, distributed graph database<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Dgraph -  fast, transactional, distributed graph database #WebDev #databases #graphs #GraphQL","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_links_to":"","_links_to_target":""},"categories":[1,18,62,1334],"tags":[1559,3531,1312,1330],"keyring_services":[],"class_list":["post-36749","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-technology","category-web-work","tag-databases","tag-graphql","tag-graphs","tag-web-development"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":22104,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/07\/02\/cayley-an-open-source-graph\/","url_meta":{"origin":36749,"position":0},"title":"Cayley &#8211; an open-source graph","author":"Leonid Mamchenkov","date":"July 2, 2014","format":"link","excerpt":"Cayley - an open-source graph inspired by the graph database behind Freebase and Google's Knowledge Graph. Its goal is to be a part of the developer's toolbox where Linked Data and graph-shaped data (semantic webs, social networks, etc) in general are concerned.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"cayley","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/07\/cayley-500x135.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27949,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/09\/06\/grakn-and-graql-a-database-for-ai\/","url_meta":{"origin":36749,"position":1},"title":"Grakn and Graql &#8211; a database for AI","author":"Leonid Mamchenkov","date":"September 6, 2017","format":false,"excerpt":"From the grakn.ai website: Grakn\u00a0is a distributed\u00a0hyper-relational\u00a0database for knowledge-oriented systems. Grakn enables machines to manage complex data that serves as a knowledge base for cognitive\/AI systems. Graql\u00a0is Grakn's reasoning (through OLTP) and analytics (through OLAP) query language. Graql is a much higher level abstraction over traditional query language - SQL,\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":22436,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/08\/26\/stellar-fast-database-snapshot-and-restore-tool-for-development\/","url_meta":{"origin":36749,"position":2},"title":"Stellar &#8211; fast database snapshot and restore tool for development","author":"Leonid Mamchenkov","date":"August 26, 2014","format":"link","excerpt":"Stellar - Fast database snapshot and restore tool for development.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"stellar","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/08\/stellar-500x333.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":25946,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/03\/16\/aws-database-migration-service\/","url_meta":{"origin":36749,"position":3},"title":"AWS Database Migration Service","author":"Leonid Mamchenkov","date":"March 16, 2016","format":false,"excerpt":"AWS Database Migration Service is yet another one of those tools that you always wished that somebody created, but never actually got to checking if it exists. \u00a0Here is a recent blog post showcasing the functionality. Do you currently store relational data in an on-premises Oracle, SQL Server, MySQL, MariaDB,\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"AWS Database Migration Service","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/03\/dms_connect_endpoints_filled_3-500x409.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":28562,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/05\/08\/database-flow-modern-self-hosted-web-interface-for-sql-and-graphql\/","url_meta":{"origin":36749,"position":4},"title":"Database Flow &#8211; modern, self-hosted web interface for SQL and GraphQL","author":"Leonid Mamchenkov","date":"May 8, 2018","format":false,"excerpt":"Database Flow is a modern, Open Source, self-hosted, web-based tool for working with SQL databases and GraphQL APIs.\u00a0 It supports a variety of the database engines: IBM DB2, Oracle, H2, PostgreSQL, MySQL, SQLite, Informix, and Microsoft SQL Server.\u00a0 It features an advanced SQL editor, query plan analyzer, GraphQL client, schema\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/05\/database-flow-500x281.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27483,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/04\/04\/how-to-synchronize-wordpress-live-and-development-databases\/","url_meta":{"origin":36749,"position":5},"title":"How to Synchronize WordPress Live and Development Databases","author":"Leonid Mamchenkov","date":"April 4, 2017","format":false,"excerpt":"SitePoint runs through a few options that one can use to synchronize WordPress live and development databases. \u00a0I've linked to \u00a0some of these options before, but it's nice to have them all conveniently together. \u00a0The solutions discussed include WordPress-specific tools: WP Migrate DB Pro WP Sync DB WPSiteSync for Content\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/04\/databases-500x310.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/36749","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=36749"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/36749\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=36749"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=36749"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=36749"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=36749"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}