|title||SimpleGraph System API wrapper|
is an open source project that allows to wrap Systems APIs in a way that graph algorithms and storage can be applied. As an implementation Apache Tinkerpop/Gremlin is used.
SimpleGraph uses the Hub and Spoke and Adapter patterns heavily.
There are currently 21 Modules available for SimpleGraph. Each module wraps an "external" API to make the functions and data behind that API available for graph processing with Apache Tinkerpop / Gremlin.
Diagrams error: no response received from remote service.
|Module||System wrapped||API exposed||Description|
Solving IT Problems across System boundaries can get very difficult. There may be a wealth of APIs which first looks helpful but given the diversity of approaches it a daunting task will need to be tackled to get reasonable results. More often than not projects are not even started since the cost/benefit ratio is not good enough. SimpleGraph aims to supply a unified graph API access to Systems for which this makes sense. In fact for most systems it makes sense to have a graph API. Quite a few problems will get much easier to solve if the subdivision of the problem is done with the goal to apply graph algorithms. See What happens if you see the world as a graph?
Let's assume we have a business that works in the following manner:
The monthly reports should in the future be modified to give geographical information. Basically a revenue/region sales count per product/region information is wanted.
The 1000 dollar question - can this report be created efficiently semi-manually with reasonable software effort? Sadly it sounds more like 10.000 or 100.000 dollar question.
There are at least 6 different systems involved. SimpleGraph simplifies accessing all 6 systems.
The AirRoutes example is taken from Practical Gremlin: An Apache TinkerPop Tutorial by Kelvin Lawrence see also https://github.com/krlawrence/graph.
We'd like to read in the air-routes graph described above and create an Excel Work book from it. see TestExcelSystem.java
ExcelSystem es = new ExcelSystem(); Graph graph = TestTinkerPop3.getAirRoutes(); GraphTraversalSource g = graph.traversal(); Workbook wb = es.createWorkBook(g); assertEquals(6, wb.getNumberOfSheets()); es.save(wb, testAirRouteFileName);
View the resulting File:Air-routes.xlsx Excel file to see what the tabular version of the graph looks like.