In April 2019 our partner Schneider Electric launched EcoStruxure Workplace Advisor, a smart building application aiming to increase the efficiency of managed office facilities. In this posting I want to outline the general architecture of this application which is based on Trinity RDF: our enterprise .NET API which enables developers without RDF experience to build knowledge graph applications.
For anyone interested in increasing the productivity and flexibility of knowledge graph development teams I would like to advertise my talk on Tuesday where I will share more details about the case.
Smart offices with flexible digital services.
The industry use case I will be presenting is Schneider Electric’s EcoStruxure Workplace Advisor. Using this service one can derive actionable insights about a building through intuitive dashboards that analyse and integrate data from numerable IoT sensors and systems. Building managers benefit from:
To achieve these huge customer benefits, it is necessary to integrate data silos for various domains, such as building management, occupant comfort, power monitoring, and others. Schneider Electric chose to address this challenge with an RDF graph database for a reason: these databases are amazing for long-term sustainable data integration. This is exactly what you need when you want to manage and maintain buildings over decades.
The Problem: RDF Knowledge Graph Expertise
These databases come with a considerable downside: your application developers need to know RDF and SPARQL to manage them – and developers with these skills are hard to find on the job market. This is a barrier for the adoption of RDF technology because starting a knowledge graph project comes with a significant risk for anyone who does not have enough developers with the required technological expertise.
The problem persists when the technology is successfully implemented and the benefits become apparent. How do you scale? Global 500 companies such as Schneider Electric have thousands of experienced .NET developers. Hiring new or training existing personnel for graph technology is going to be time consuming and expensive.
Our Solution: ORM with Trinity RDF
This is where Trinity RDF comes into play: our platform enables software developers that have experience with traditional SQL databases to manage RDF graph databases the same way. This is achieved by providing application developers with a data layer that can manage a database using the well-known ORM (Object Relational Mapping) design pattern.
When using ORM, developers work with high-level programming language objects to query a data source. Under the hood, these queries are then translated into vendor specific database commands. While making it easier to write queries, this technology also improves greatly on vendor independence at the cost of some performance when running queries for the first time.
In our case, Trinity RDF does not translate the database commands into SQL for relational databases, but into SPARQL for graph databases. Because this translation is hidden from the developers, they are never directly confronted with the actual database technology and thus, are not required to have knowledge about it to build applications:
Our development team initially did not have any RDF or SPARQL experience at all. For our short-term requirements, being able to interact with a graph database the most expedient way was why we felt we needed an “Entity Framework”-like ORM for the RDF. It is precisely for this reason that we chose Trinity.
~Mark Stemmler, Software Manager - Buildings Graph Platform at Schneider Electric
This means that Trinity RDF is the key technology that enabled Schneider Electric to implement a real-time IoT knowledge graph platform with strong semantics - saving considerable amounts of time and money on training their .NET developers.
The following figure gives an overview of the IoT knowledge graph platform in use at Schneider Electric. It will be discussed in greater detail in my talk at SEMANTiCS on Tuesday.
Figure 1: The IoT knowledge graph platform implemented at Schneider Electric.
Trinity RDF with Stardog Transactions
As you can see from the above figure, Schneider Electric chose to use a Stardog graph database: a highly performant SPARQL database with support for clustering, logical inferencing and ACID transactions. Ideal for an enterprise use case like this, but with a catch: Trinity RDF had no Stardog connector.
Although we were able to provide basic functionality quite easily using the SPARQL protocol, it turned out that enabling ACID transactions proved to be challenging task. With our support, the Schneider Electric team were able to implement this feature in cooperation with the Stardog engineers – making the IoT knowledge graph platform ready for prime time.
Semiodesk’s support during the evaluation phase was most important. While early testing did occasionally uncover minor issues, Semiodesk’s response in addressing these issues was outstanding.
~Mark Stemmler, Software Manager - Buildings Graph Platform at Schneider Electric
On behalf of Semiodesk, I’d like to thank Schneider Electric for releasing the database connector code as Open Source so that we can ship it as part of Trinity RDF in future releases. The table below shows all triple stores that are currently supported:
Supported graph stores in Trinity RDF 1.0
We are seeking partnerships with database vendors to extend our portfolio in future and ensure that our database support is robust and performant.
Our Vision: Entity Framework for Graph Databases
Working on the digital transformation of facility management in Schneider Electric, we were excited to see that our solution impacts resourcefulness, efficiency and sustainability of buildings at an incredible scale.
The key to having a real-time, fully integrated data platform is to enable applications to directly access and contribute to your corporate knowledge graph. In companies like Schneider Electric, there is a huge community of .NET developers who are familiar with ORM and who will appreciate working with Trinity RDF. Therefore, it is our goal for future releases to provide the best possible compatibility to the Entity Framework ORM and add data lifecycle features which leverage RDF’s strong semantics.
I believe that there is great potential in data integration using RDF graph databases, making ETL a thing of the past and moving towards a greatly simplified IT stack that provides reasoning for our future AIs. With Trinity RDF we offer a solution that enables your organization to implement sustainable, real-time knowledge graphs that integrate into your existing eco-system – in any industry. Curious? Try Trinity Today!
See you at SEMANTiCS 2019!
Let’s get together and find out how we can improve your business capabilities with Linked Data and RDF knowledge graphs:
➢ Attend my talk on Tuesday, Sept. 09 in Hall 4 at SEMANTiCS. Session starts at 4pm.
➢ Find Semiodesk at booth 4 any time during the conference and let us show you Trinity RDF, our ontology-based data modelling platform modom.io and discuss our consultancy offerings.
➢ Visit our website: www.semiodesk.com
About Sebastian Faubel
Sebastian Faubel started his professional career as a freelance programmer and consultant in 1998. He has studied Computer Science at the Georg-Simon-Ohm University of Applied Sciences in Nuremberg, where he graduated in 2008 and received the ‘Best Student and Demonstration Award’ for his diploma thesis at the International Semantic Web Conference in the same year. After working for a renowned CAD manufacturer, he went on to become co-founder at Semiodesk GmbH in 2010. The company won the 'Best Innovation and Transfer Project' Award at the SEMANTiCS in Leipzig 2014.
About SEMANTiCS Conference
The annual SEMANTiCS conference is the meeting place for professionals who make semantic computing work, and understand its benefits and know its limitations. Every year, SEMANTiCS attracts information managers, IT-architects, software engineers, and researchers, from organisations ranging from NPOs, universities, public administrations to the largest companies in the world. http://www.semantics.cc