By Julien Mazerolle & Julien Durand, VP of Engineering & Product Manager, Transparency-One | March 1, 2017
Editor’s Note: This presentation was given by Julien Mazerolle and Julien Durand at GraphConnect Europe in April 2016. Here’s a quick review of what they covered:
Julien Mazerolle: What we’re going to be talking about today is transparency in food industry supply chains:
Julien Durand will discuss the importance of tracking the food supply chain, and I will talk about the technology we use to track it.
Consumer Trust and Food Consumption
Julien Durand: Trace One was founded 15 years ago. We’ve been working on software for the food and retail industries, and what really struck us was the average cost of a food recall: $10 million. But the recent Mars candy recall probably cost the company 10 or 20 times more than that.
Another consequence of a recall is the cost to the company’s image. Chipotle, a fast food chain in the US, served meat that contained the bacteria E. coli. in October 2015, resulting in a number of illnesses. This had not only a direct cost, but an image cost among consumers.
So we at Trace One began to wonder how much consumers trust the food they eat. We surveyed consumers around the world and found that only 12% of consumers really trust the safety of the food they buy, which is really a shocking number. And only 10% believe that they can fully trust the quality of the food they eat.
We also asked consumers whether or not they thought it was important to know what’s in their food, and more than 90% answered yes. The issue is that people — 62% — say they don’t get the information they need, and 27% said they don’t trust the information that they do receive.
This means that even if you are a manufacturer who does a good job communicating what’s in your food and where it came from, only 62% of consumers will believe you. Finally, more than 40% of the consumers we surveyed said they are willing to pay more for more information.
Trace One: Mapping the Supply Chain from Farm to Fork
This led Trace One to build Transparency-One, a social network for the food supply chain that allows brands to map the supply chain from farm to fork. If you’re a pizza manufacturer, and you use a traditional Product Lifecycle Management (PLM) software, you’ll know your direct suppliers — which are these two green nodes:
This is what Trace One has been providing for the last 15 years. But if you wanted to ask: who are all the suppliers in my network? What are the exact ingredients? What are the country of origins for the ingredients? Are all the suppliers certified? You wouldn’t be able to answer these questions. You would know they’re in the grey zone, but you wouldn’t know who exactly was providing the ingredients for your products.
With our social network Transparency-One, we allow brands to connect with their suppliers and their suppliers’ suppliers all the way up to primary production so they can see everything that’s involved in their products. This allows companies to easily identify their suppliers, the exact list of ingredients in their product, and their product’s country of origin. This is also really valuable for consumers.
But what about certifications? We’re not only mapping the supply chain; we also provide a large amount of information for each supplier — for example, compliance — which is available on each of the nodes in the graph. As you can see below, almost everybody in the graph is green, indicating that they are in compliance with company policy:
However, the node in red indicates that this supplier is not in compliance with company policies. It could be missing a certification, for example.
But now that you have this information, what should you do with it? The graph also shows how the company in red impacts other products the company sells:
Here we discover that the pizza manufacturer has a second product impacted by this supplier.
Mapping the Supply Chain: The Necessity of Multiple Tiers
Julien M.: So how do we do this from a technical standpoint? We started a couple of years ago by exploring a variety of technologies we could use, and we had a lot of experience managing two-level relationships between retailers and their suppliers. And we realized it becomes very complex it you want to search multi-level relationships, especially if this information needs to be searched quickly by multiple people.
When you have a food crisis, everyone is going to query the database at the same time with the same questions, which necessitates a high-performing system. But our past experience was based on a two-level system.
Take our pizza example: the dough, tomato sauce and mozzarella are all at the second level:
While this is easy to navigate, there are a large number of limitations to this type of system. For example, if someone is allergic to genetically modified tomatoes, with this type of representation you can’t determine what type of tomato you have. To do that, you’d have to go one level deeper. But with traditional SQL databases, we are only able to map down to two levels.
From a technical standpoint, a real food supply chain has many levels. If you explore the levels under pizza — dough, for example — you will find different suppliers, different types of ingredients, and so on. With tomato sauce, you can have different recipes and different suppliers, and with mozzarella you can have buffalo or non-buffalo, etc. Now when you look at the supply chain you can see all of the variables, which we call the V Three Challenge:
First, when you go from one food to another, you have a variable number of ingredients per level. You have very simple finished products with only one or two ingredients, or more complex food products with one to ten ingredients. The main difference between pizza margherita and pizza quattro stagioni is the number of ingredients.
Secondly, you will have a different number of levels per ingredient. Some ingredients will be essentially raw materials while some will be a combination of several ingredients. When you talk about tomato sauce, to determine whether or not the tomato is modified, you’ll have to descend the graph three or four levels to arrive at the tomato origin. And finally, for each ingredient there is a lot of competition within the industry, resulting in a variable number of suppliers.
SQL vs. GraphLet’s explore an example in an SQL database, where we want to find all products that contain tomatoes because we just received an alert about tomatoes from Chile. We have to find all of the finished products that contain this ingredient.
Performing this query in an SQL databases would require a number of JOINs to determine the different levels at which a tomato is in the finished product. We would also have to find all of the intermediate products — such as tomato sauce — that contain the tomatoes. This results in a very complex query, and we would have to simulate a graph-type search within an SQL database, which is more and more difficult when a recipe has to be updated. And when we do end up with a crisis relating to a specific ingredient, we will have thousands of users asking the same question at the same time, which would crash the entire system.
If you wanted to do the same thing in Neo4j, you would just write a simple three-line Cypher query for all finished products containing tomatoes:
You’re searching for tomato, any recipe, anywhere in the supply chain and leading to a catalog item which is a finished product. The query is extremely simple and the burden falls on the database, not on you. This contrasts with the SQL query, where the burden is first on you and then on the technology.
Cypher really suits this type of questions from users. And instead of trying to optimize the query yourself, it’s done by the technology. This allows you to focus on your business question, which is finding the finished products that contain tomato and the technology handles all the difficult aspects of the query.
And Neo4j seems to be able to handle more and more nodes, and being able to handle one billion nodes, for example, would allow us to handle all of the supply chains of all of the major food companies in the world.
Julien D: Let’s go through a demo and switch back to tomatoes again. So we’re talking about an SaaS product, and I’m going to log in as that pizza manufacturer we talked about earlier:
We’re not building siloed software; it’s truly a social network, which means that each company has its own private workspace where they can manage their products and ingredients, and determine how much information they want to share with their customers.
Consumer Trust: Achieved
At the beginning of this presentation we talked about consumer trust. By mapping the entire supply chain and collecting information at each node, we are getting information about the quality of our products.
We are tracking the information and can easily track changes in the supply chain, determine the country of origin and the primary collection of each ingredient. With this detailed information you can provide more accurate labels to consumers and collect all required certifications.
By building and ensuring compliance, transparency and sustainability throughout your supply chain, a brand can build strong consumer trust.
Register for GraphConnect
About the Author
Julien Mazerolle & Julien Durand, VP of Engineering & Product Manager, Transparency-One
Julien Durand is a Product Manager at Transparency-One, a cloud-based B2B software vendor that connects the network of companies supporting the world’s consumer product supply chain to create a healthier, safer, more sustainable world for consumers.
From the CEO
Have a Graph Question?
Reach out and connect with the Neo4j staff.Stackoverflow
Share your Graph Story?
Email us: firstname.lastname@example.org