Fluree, the graph on the blockchain
Published:
Content Copyright © 2023 Bloor. All Rights Reserved.
Also posted on: Bloor blogs
Fluree is a recent addition to the graph space, with its first product, FlureeCore, released for general availability in 2020. It acquired the second, what is now called FlureeSense, alongside Zetta Labs in 2022. These will soon be complemented by FlureeNexus, a database-as-a-service currently in private preview.
Let’s tackle FlureeSense first, since I have less to say about it than FlureeCore. In short, it is a data pipelining and cleansing tool for ingesting raw, often legacy, data, then cleaning and transforming it into something appropriate for a modern data environment, such as a cloud data warehouse or indeed FlureeCore, before exporting it into one. It uses AI and machine learning to automate data classification, generates basic ETL logic by itself, and offers data quality capabilities, deduplication, data mastering, and various other features that you would expect from this sort of offering.
FlureeCore, on the other hand, is a semantic (RDF) knowledge graph that stores data in the JSON-LD format. It supports mixed transactional/analytic workloads, and it features a custom query language, FlureeQL, though it has some compatibility with SQL and SPARQL as well. It is also the product I want to talk about the most, and there are two major reasons for this.
The first is that FlureeCore is able to place data intelligence and logic directly into the data layer rather than the application layer, tightly coupling it with your data and enabling the creation of “programmable” data. You could, for instance, use this to attach policy enforcement mechanisms (role-based access management, say) to your data, meaning that it could only be accessed by appropriately privileged users no matter where it is moved to. For another example, you could attach semantic context directly to your data, essentially making it self-describing, again no matter where it is. And so on – the possibility space for this capability is large, and it promises to be quite powerful as a result. There are various other notable features on offer, including the ability to “time travel” between different historical system states and the product’s free-form data structure (referred to as “schema at query time”) but programmable data is to my mind the most significant.
The second reason is that FlureeCore is decentralised. More specifically, it is deployed using blockchain technology. Various storage and consensus mechanisms are available, and deployments purportedly end up somewhere on a spectrum between fully decentralised and centrally managed. According to Fluree, there are several reasons the company has chosen to utilise the blockchain, including its emphasis on data sharing and collaboration (thence decentralisation), the prevention of data silos (and conversely, the creation of a data fabric) via the ability to chain blockchains together, data portability, and – most importantly – enabling the programmable data described above.
That said, blockchain is a somewhat controversial technology, if for nothing else than for its ties (and Fluree’s by extension) to Web3, cryptocurrency, and related technologies. Personally, I do not put much stock in the concept of Web3 (although some of my colleagues at Bloor will no doubt disagree with me there) and even less in cryptocurrency, but it seems to me that in this case the company’s use of the blockchain is at least fairly well justified. In short, even if you’re not interested in blockchain, Fluree may still be worth a look. And if you are, it certainly is.