Xima – Case Study

pdfDownload PDF

Industry
Telecommunications

Challenge

Xima required a complex SQL-generating engine to query data from their relational database

Solution

OrientDB provided a solution to store Java objects (representing call detail data) loaded into Xima’s data grid

Result

With OrientDB in place, Xima is able to add new databases and classes (tables) more efficiently than with a traditional RDBMS

https://www.ximasoftware.com

Xima Software selects OrientDB to provide flexible
custom call detail reports

1. What is your organization and what does it do?

Xima was founded in 2007 and has become a leading telecommunications software company, providing simple and intuitive custom call reporting, call recording and call display solutions that make managing a team simple. Xima has grown to 48 employees, with 1,200+ resellers internationally, and since 2009 has averaged 102% annual growth. For the last three consecutive years, Xima has been a winner of the Best Place to Work award by Utah Business Magazine and listed as a Great Place to Work. In 2016 Xima was selected as a Top Workplace by the Salt Lake Tribune. Xima is a winner of the When Work Works award from the Society of Human Resource Management and Fortune Magazine named Xima the 22nd best place to work in America for Flexibility.

2. What are some of the key technical challenges that Xima faces?

Providing very flexible custom call detail reports required us to build a complex SQL-generating engine to query the data from our relational database. With larger data sets the complex queries began to become a significant performance problem for our larger customers. We could no longer rely on relational database performance tuning alone to satisfy these customer needs.

3. Tell us more about the application you developed and how graph DBs powered key parts of it. What was the goal of the application? What were important technical requirements?

We decided to build an in-memory reporting engine that would not be dependant on the actual database. We initialize the reporting engine by loading one hour sized blocks of call detail data spanning the timeframe required by the reports’ criteria into an in-memory data grid (Hazelcast). Report results are then calculated using a map-reduce algorithm distributing the computation throughout the data grid.

Without the database dependencies, we began to explore alternative data stores that would be quick to load into our call detail data blocks. OrientDB was chosen to store Java objects (which we ultimately load into our data grid) that represent the call detail data. We then maintain a graph index of those call detail data objects. We have a graph of Year → Month → Day → Hour → Calls. The “Calls” contain the call detail data we then load into our in-memory data grid.

4. Tell us how you found out about OrientDB?

OrientDB was discovered while looking online for Java-friendly document database storage options.

5. How did you ultimately settle on OrientDB as your vendor?

The ability to combine graphs with documents ultimately sold us on OrientDB..

6. How did you go about implementing OrientDB?

We obviously faced many challenges due to the inexperience of our developers with OrientDB. There were many challenges from the OrientDB implementation that we had to work around. For example, loading an object from the database in the Java API results in a proxy object. We heavily use Java serialization on our objects. Proxy objects don’t fill our need, so we began “detaching” everything we pulled out of the database. We then found limitations and performance issues with the built-in detaching, so we had to implement our own deserialization.

We have been using the community edition, since we required the ability to redistribute the database to thousands of our customers. Since we’re not paying for support, there were a few cases where we modified the OrientDB source code to fit our needs. For example, we run our other Windows Java services with Apache Procrun (this is the default service runner for Apache Tomcat). In order to enable OrientDB to run as a Windows service we made a couple of code changes to make it compatible with Procrun. We have also found a couple of bugs that we fixed along the way, submitting GitHub pull requests to benefit the entire OrientDB community

We had several challenges dealing with exporting and importing data into OrientDB installations and instead began relying on only full backups and restores.

7. What were the results once your project was completed? Was the end goal achieved and initial challenges resolved? Were you satisfied with the results?

Our end goal has been achieved. We can load data quickly by time block. We do not have any specific metrics on time savings, revenue gains, or sales growth. Moving forward we anticipate quicker development. Now that OrientDB is in place we are able to add new databases and classes (tables) more quickly than we could with a traditional RDBMS

About OrientDB

OrientDB is the world’s leading distributed graph database and the 2nd in the general graph category. By combining the power of graphs with document, key/value, object-oriented, geospatial and reactive models into one core native engine, OrientDB extended the basic graph database concept into a Multi-Model open source DBMS.

It allows schema-less, schema-full and schema-mixed modes, supports SQL and TinkerPop/Gremlin standards and its strong security has been developed together with global banks who use it to power thousands of transactions per second. Fortune 500 companies, government entities and startups all use OrientDB to build large-scale innovative applications including: Accenture, Barclays, Cisco, Comcast, Dell, United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

If you’d like to receive more information about OrientDB’s services and subscriptions, please contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

pdfDownload PDF

Industry
Law Enforcement / Government

About the MPA

The Ministerio Público de la Acusación (MPA) is the public prosecutors’ office of the province of Santa Fe, Argentina.

http://www.mpa.santafe.gov.ar

Interview with Marcelo Ré at the Ministerio Público de la Acusación

1. What is your organization and what does it do?

The Ministerio Público de la Acusación (MPA) (http://www.mpa.santafe.gov.ar) is the public prosecutors’ office of the province of Santa Fe, Argentina.

2. What are some of the key technical challenges that the MPA faces?

The amount of data the MPA collects when dealing with criminals is huge. If one wants to map the relationships between intra- and inter-case elements, the amount of data grows even larger. Traditional RDBMS fail to address this critical problem.

3. Tell us more about the application you developed and how graph DBs powered key parts of it. What was the goal of the application? What were important technical requirements?

The application is in the design and development process. We hope to release the first version in the second half of 2018. We need to store brief information within the cases that includes details such as the accused, victims, participants, prosecutors, defenders, elements, sites, times, etc. All relations between entities are mapped as vertexes and edges. In this way, we will be able to perform a search on the type of relations that exist between entities in a case and most importantly, if there is a relations with the entity and other cases. Ultimately, this will enable us to see the entire map of what is going on. Another important thing is that the prosecutor needs to know if there is any existing information about any item that registers in the system and be notified of any future appearances of that item in other cases. There is no clear way of determining how you relate the elements in a case and this implies that the traditional query languages are not sufficiently expressive. With regards to this, the Graph/TRAVERSE statement can be helpful.

4. Why was the application important? How did the application aid in fighting crime?

Currently, a prosecutor is in charge of more than 400 cases and there have been more than 600,000 cases in total over the last three years. This makes it impossible for one to remember without equivocation all relationships between all elements in a case and even less so to relate to elements of other active or closed cases. Here is where our apps can be helpful: they will be able to show all information that existed in the past and register any objects that belong to a case in the future.

5. How did you ultimately settle on OrientDB as your vendor?

We started creating a plan in 2014. At the beginning, we found Neo4J. Our conceptualization of the problem pointed to graph databases as an ideal solution. Following that, we began to research if there were other similar solutions to utilize. At this stage, we found OrientDB.

Our province has a law that states that free software must be used in any development and Neo4J did not have a license that worked for us. However, OrientDB did. So, after switching to OrientDB, we were eager to see if it could do the job. We tested an initial application, posted a few queries on Stack Overflow and everything worked well. From there, I hired my team and directed them to develop an application using OrientDB.

6. From a technical standpoint, why was OrientDB ultimately best suited to power this application?

OrientDB has a very simple way for people that come from SQL to do a switch. The way you write a query is very similar but the power lies in using a specific graph function to search the database. It is open source and written in Java so you can run it on any server. The availability of the out of the box cluster configuration, even in the community version, was the characteristic that ended up being the deciding factor to use OrientDB because it guaranteed that we could grow without problems if we needed to.

About OrientDB

OrientDB is the world’s leading distributed graph database and the 2nd in the general graph category. By combining the power of graphs with document, key/value, object-oriented, geospatial and reactive models into one core native engine, OrientDB extended the basic graph database concept into a Multi-Model open source DBMS.

It allows schema-less, schema-full and schema-mixed modes, supports SQL and TinkerPop/Gremlin standards and its strong security has been developed together with global banks who use it to power thousands of transactions per second. Fortune 500 companies, government entities and startups all use OrientDB to build large-scale innovative applications including: Accenture, Barclays, Cisco, Comcast, Dell, United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

If you’d like to receive more information about OrientDB’s services and subscriptions, please contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

pdf Download PDF

Industry
Social Network & Entertainment

About Popcorn

Popcorn Technologies is the company that created Popcorn, the place where people share, discover and talk about movies. Post movie questions, see what others are saying and share your thoughts. Go ahead, be a critic!

http://www.popcornmovieapp.com

Popcorn logo

Popcorn uses OrientDB to scale its Social Movie Network

Popcorn is a place where people share, discover and talk about movies. Larry Aasen and Eric Ying recognized that conversations about movies were quickly lost in Facebook and Twitter. That sparked an idea which became Popcorn: a new kind of social network based around movies, designed for short conversations that are different from what you may find elsewhere. Something more like Instagram for movies, and less like IMDB, that connects movie lovers and their conversations.“The past two years of using OrientDB in the Popcorn platform have been a success. We’ve experienced almost zero downtime in the past 18 months with OrientDB. We ran into one issue with a full disk that we were quickly able to resolve. The other downtime included upgrading the software and some Amazon EC2 outages.“

– Larry Aasen, CTO and Cofounder, Popcorn Technologies

Early on during the design of Popcorn, the development team was looking at MySQL, PostgreSQL*, Neo4j* and OrientDB. Relational databases have been around for some time, but they perform poorly locating relationships. You must put a lot of thought at the start in your design by joining tables through foreign keys. Joins are slow, so the more you have, the slower your performance.

Not only do graph databases link connections but they also allow organizations to analyze and understand vast graphs of connected data. Not only can they find connections between different points of data, but they also can rank the relevance or weight of those relationships. This makes them perfect for social networks and recommendation engines. Without joins, applications can benefit from the speed of graph databases.

After reading about the architecture of Facebook, Twitter, LinkedIn, and Instagram and understanding their data requirements, they understood the benefits and importance of using a graph database to represent the social data in a better way than provided by traditional relational databases. They needed to choose a database that avoided table joins, could scale and be partitioned and it also had to be dependable.

MySQL* and PostgreSQL* are well known and have a strong following, but they were ruled out pretty quickly. The team at Popcorn Technologies desired to use a modern graph database and this became more and more important. That left only two remaining choices: Neo4j* and OrientDB. Both vendors offered reasonable technology for a graph database and were well supported by the vendor and communities. Also, documentation was easy to understand.

Challenge

Use a graph database to show social relationships such as followers and likes, include saved and watched movies, timeline entries, and any other lists like a user’s device list, or list of comments on a post. The nodes (vertices/nouns) would be represented by users, posts, devices, sessions, and any other normal database object. The edges (verbs) would be represented by following, likes, posted, timeline, and others.

Fast and Easy to Get Started

“Getting started with OrientDB is fast and easy. Just download a ZIP file to your computer, unzip the file, and start the server. That’s it. I initially learned how to create vertices and edges using the supplied console app, which I found easy to use because of its SQL syntax,“ said Larry Aasen.

Support Standard SQL

Some graph database solutions require learning new query languages, such as Neo4j’s* own query language called Cypher*. Training is required to learn a new language. OrientDB’s query language is built on SQL and is augmented with a few extensions to manipulate trees and graphs. Considering most developers are familiar with SQL, working with OrientDB is just easier.

“The fact that standard SQL was supported in OrientDB was a big plus. I did not want to learn another query language and I did not want to push a new language on my team.“ – Larry Aasen, CTO and Cofounder, Popcorn Technologies

Feature Rich Community Edition

When it comes to databases, many solutions like Neo4j* offer limited features in their community versions, with tools necessary to run production environments only available in Enterprise editions. Instead, OrientDB Community edition includes scaling, replication and many security capabilities.

Low Total Cost of Ownership

There is absolutely no cost associated with using OrientDB Community Edition. Not only does it eliminate the need for multiple products and multiple licenses, with an Apache 2 license, there are no restrictions when using their open source community edition. Neo4j’s* licensing model GPL can be limiting as well as costly.

“If we could get by without paying licensing fees for the first million users, I would be happy. Incurring DB license costs later would be more reasonable.” – Larry Aasen, CTO and Cofounder, Popcorn Technologies

OrientDB’s Fantastic User Community and Team

Golang was the language of choice for Popcorn, so the team decided on OrientGo, a Go client for the OrientDB database. This Go client was a critical part of the infrastructure and was also important for the success of OrientDB in Popcorn. When issues with OrientGo arose and brought development to a halt, the Popcorn Technologies Team worked with the OrientGo community to solve issues and create integration tests that showed reliable performance from the database while thoroughly verifying all aspects of the servers.

On a few occasions, the development team was not able to resolve problems on their own, but found answers to questions and problems on the OrientDB GitHub account. One issue with a table was resolved using a server-side function suggested by a Github user. They also posted other questions that were answered quickly by the OrientDB team.

“The past two years of using OrientDB in the Popcorn platform have been a success. We’ve experienced almost zero downtime in the past 18 months with OrientDB. We ran into one issue with a full disk that we were quickly able to resolve. The other downtime included upgrading the software and some Amazon EC2 outages,“ said Larry Aasen, CTO and Cofounder of Popcorn Technologies.

 

*All trademarks are the property of their respective owners.

About OrientDB

OrientDB is the world’s leading distributed graph database and the 2nd in the general graph category. By combining the power of graphs with document, key/value, object-oriented, geospatial and reactive models into one core native engine, OrientDB extended the basic graph database concept into a Multi-Model open source DBMS.

It allows schema-less, schema-full and schema-mixed modes, supports SQL and TinkerPop/Gremlin standards and its strong security has been developed together with global banks who use it to power thousands of transactions per second. Fortune 500 companies, government entities and startups all use OrientDB to build large-scale innovative applications including: Accenture, Barclays, Cisco, Comcast, Dell, United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

If you’d like to receive more information about OrientDB’s services and subscriptions, please contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

pdfDownload PDF

Industry
News / Media

About New.sc

New.sc is a startup providing highly tailored news content to users based on intuitive algorithms. With Natural language processing, news topic detection system and object-subject relationship discovery, New.sc finds recent, relevant and interesting news from around the globe.

https://new.sc

newsc_logo_bl@4x

Providing Relevant News to Readers Using Graph Technology

In a world where content is key, one of the main goals for startup company New.sc, was a simple concept with a complex execution. Their objective: to provide highly tailored, yet fully customisable news results to its users with as little input as possible. What’s more, these results should not simply match topics, but provide relevant results, more likely to be of interest and importance to its readers. In order to achieve this, although having previously stored data in Redis*, the most suitable data structure was a graph.

Forming relevant links with graphs

When initially developing New.sc, all data was stored in Redis*. However, their developers quickly realised that in order to determine content relevance with as little user input as possible, a Key-Value Store was not the most suitable technology. Their algorithms needed a quick and convenient method to search for links between elements, detecting topics and determining dependencies between objects and subjects as well as process natural language.

The complexity of such algorithms were highly taxing on their current database and so the decision to use a graph database was made. Following their initial research of multiple vendors, having been widely utilised and discussed online, their choices were narrowed down to two: OrientDB or Neo4j*.

Among the many considerations taken into account when making their final decision, first and foremost was speed. They knew that large amounts of data had to be processed quickly, and based on their research, the winner seemed to be OrientDB. Of course, other criteria had to be met. “The main selection criteria were: language on which DBMS was developed, License, Graph model, API, query languages, Consistency, scalability.” explained Vadim Savchuk, CTO at New.sc. “OrientDB met all our criteria.”

Developing startups with cutting edge technology

For startup companies not seeking outside investment, finding the most efficient yet cost effective technology is not always easy. Licensing models, such as GPL can be limiting as well as costly. When it comes to graph databases, several open source solutions available offer limited features, with tools necessary to run production environments only available in enterprise editions. Furthermore, utilising NoSQL Graph solutions usually require learning new query languages, such as Neo4j’s Cypher, or delaying projects while finding those already well versed in these.

“Once we began using OrientDB and working with graphs, our algorithms were 2.5 times faster!”
– Andrey Kozak, CEO, New.sc

Multi-model NoSQL solutions such as OrientDB address these challenges. With an Apache 2 license, there are no restrictions when using their open source community edition. Being widely used by startups and deployed in production environments around the world, OrientDB Community edition Does not only have a commercial friendly license but includes sharding, scaling, replication and security capabilities which most competitors only offer in their Enterprise editions. Their Multi-model engine also enables graph, document, object-oriented capabilities and OrientDB’s schema flexibility to be harnessed in order to reduce the need for multiple systems and to optimise performance. This was of particular interest to New.sc. With a graph database comprised of Vertex classes and inherited Edge connections, News.sc was also able to store keys within vertices and utilise transactions when creating vertex-edge links. Being familiar with OrientDB’s extended SQL and using the built-in Shortest Path function, the most efficient path between two requested vertices was optimised.

Optimising user experience

By harnessing the power of graphs to quickly form relevant links between rapidly increasing data, New.sc was able to optimise their user experience. The result was a highly personalised and customisable news feed that allows readers to seamlessly pass from one relevant news article to the next with virtually no manual input. As News.sc CEO Andrey Kozak Explained, “Once we began using OrientDB and working with graphs, our algorithms were 2.5 times faster! Thanks to OrientDB, we were able to proceed to the next step in the development of our service.”

*All trademarks are the property of their respective owners.

 

About OrientDB

OrientDB is the world’s leading distributed graph database and the 2nd in the general graph category. By combining the power of graphs with document, key/value, object-oriented, geospatial and reactive models into one core native engine, OrientDB extended the basic graph database concept into a Multi-Model open source DBMS.

It allows schema-less, schema-full and schema-mixed modes, supports SQL and TinkerPop/Gremlin standards and its strong security has been developed together with global banks who use it to power thousands of transactions per second. Fortune 500 companies, government entities and startups all use OrientDB to build large-scale innovative applications including: Accenture, Barclays, Cisco, Comcast, Dell, United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

If you’d like to receive more information about OrientDB’s services and subscriptions, please contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

pdfDownload PDF

Industry
Media / Journalism

Challenge
Analyze and link both structured and unstructured data to uncover links between declared and undeclared assets by politicians.

Approach
Connect documents using an OrientDB graph to then be traversed. Exploit edges to emphasize links between datasets. Use OrientDB Studio for exploratory analysis on the graphs.

Solution
Utilize OrientDB’s driver-rich catalogue and SQL support. Leverage multi-model capabilities by converting data matches to edges in order to further explore possible relationships between data.

Result
Clear visible links between seemingly disconnected data, uncovering widespread undisclosed assets by politicians and exposing elected representatives apparently seeking personal benefits for public work.

About RTÉ Investigations Unit

Since its establishment in late 2012, the RTÉ Investigations Unit has produced a number of ground-breaking, award-winning documentaries including “The Torture Files” and “Breach of Trust”.

www.rte.ie/news/investigations-unit/

Case Study - RTÉ Investigations Unit

Investigating Corruption with Graph Relationships

RTÉ, one of Ireland’s most prominent broadcasting companies, has been at the forefront of Irish media for the better part of a century. Providing content through different mediums, they are no stranger, nor do they shy away from controversy. The RTÉ Investigations Unit is a branch established to provide journalistic investigative output on a multi-media basis for television, radio and online platforms for the Irish national broadcaster. When tasked to investigate public representatives and their purported assets, it needed to form links between seemingly unstructured and disconnected data to uncover undisclosed assets and expose their respective representatives. The result of this work culminated in an award-winning documentary, shedding light on the widespread under-declaration of assets by politicians.

Structuring Data

Upon performing extensive research into potential undisclosed assets of elected public officials, RTÉ Investigations Unit had to accurately and extensively test and query matches from the public property and corporate ownership registries against the interests declared by elected public representatives. This meant linking public records data with incomplete yet structured data gathered on the elected officials.

This process began with the creation of an ETL (Extract-Transform-Load) module, enabling semi-structured data from different sources to be cleaned up and ingested before being stored in a database. Once this heavy lifting process was completed, a database was needed to identify, visualize and uncover relationships between datasets.

Leveraging Multi-Model Capabilities to Exploit Graph Relationships

Upon having researched different vendors on the market, developers for the Investigations Unit found that most of these were equipped with decent document features, though OrientDB excelled at handling relationships between entities.

“The fact you can easily extend the database functionality was crucial to achieve the result on time.”
– Fabrizio Fortino, Consultant Software Engineer @ RTÉ Investigations Unit.

One of the team’s consultant software engineers, suggested working with a database he had previously used on other projects that might be up to the task. He suggested using the multi-model capabilities of OrientDB, which provided the possibility to connect documents using a graph and to later traverse the documents. “Another important feature of OrientDB is the ease of use and the extensive support of different drivers.” said Fabrizio Fortino, Consultant Software Engineer for RTÉ Investigations Unit. “We chose to implement the solution in Groovy with the native Java driver. For some complex operations, we implemented server side functions using the OrientDB Server-Side Functions1 in both Javascript and Groovy languages. The fact you can easily extend the database functionality was crucial to achieve the result on time.”

When dealing with real-life scenarios, no task comes without challenges. Some of the data sources that needed to be matched lacked common identifiers to link them. In order to resolve this, RTÉ Investigations Unit built a rule-based fuzzy inference engine using the open source project Duke2.

image00

Once the engine was completed, each potential match was then translated into an edge between the detected entities. “Having the possibility to enrich every edge with the match confidence weight was extremely important in order to easily filter links with a high level of confidence during the data exploration phase.” said Fabrizio Fortino.

“OrientDB had all the features that we needed to tackle the challenge in the agreed time limit. There was no need to learn a new query language since it supports SQL and the Studio Graph View is great for exploratory analysis.”
– Fabrizio Fortino, Consultant Software Engineer @ RTÉ Investigations Unit.

Leveraging on OrientDB’s document and graph capabilities enabled RTÉ Investigations Unit to easily and efficiently persist entities as vertices and connect them with edges. To explore the data, they built a series of multiple-step traversal queries, using both SQL and custom functions, with the goal of identifying entities connected by suspect paths not clearly visible in a traditional relational representation. “OrientDB had all the features that we needed to tackle the challenge in the agreed time limit.” said Fortino. “There was no need to learn a new query language since it supports SQL and the Studio Graph View is great for exploratory analysis.” Whenever a question arose, they were not only able to rely on the OrientDB team to provide answers, but also found resources and support from the extensive community of developers using OrientDB’s open source Community Edition.

Investigating Corruption with Award-Winning Results

The results allowed the Investigations Unit to identify a manageable list of probable undisclosed assets which were used as part of the public interest criteria to set up covert filming. This later exposed an apparent willingness to solicit personal benefits by three elected public representatives.

“Using OrientDB as a heuristic tool, we were able to filter through every elected representative in the country and match them to possible undisclosed assets.” said Conor Ryan, Investigative Journalist for RTÉ Investigations Unit. “The resulting reports identified very clear potential areas of investigation from an otherwise unmanageable and dirty dataset.” Follow up investigations on these assets and the individuals concerned resulted in an award-winning broadcast documentary3 that revealed three elected representatives apparently seeking personal benefits for public work. It also exposed widespread under-declaration of assets by politicians.

Sources:

  1. https://orientdb.com/docs/last/Functions.html
  2. https://github.com/larsga/Duke
  3. http://www.rte.ie/news/investigations-unit/2015/1207/751833-rte-investigates

 

If would like to receive more information about OrientDB’s services & subscriptions, please Contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

About OrientDB

OrientDB is the world’s leading distributed graph database and the 2nd in the general graph category. By combining the power of graphs with document, key/value, object-oriented, geospatial and reactive models into one core native engine, OrientDB extended the basic graph database concept into a Multi-Model open source DBMS.

It allows schema-less, schema-full and schema-mixed modes, supports SQL and TinkerPop/Gremlin standards and its strong security has been developed together with global banks who use it to power thousands of transactions per second. Fortune 500 companies, government entities and startups all use OrientDB to build large-scale innovative applications including Accenture, Barclays, Cisco, Comcast, Dell, United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

OrientDB won the prestigious 2015 Infoworld Bossie award and has been covered by multiple media outlets.

If you’d like to receive more information about OrientDB’s services and subscriptions, please contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

pdfDownload PDF

Industry
Software

Challenge
Build a secure Authorization Service for an online Learning Institution.

Approach
Integrate OrientDB’s Graph database with a permissive licensing model to develop the application.

Solution
Use OrientDB’s graph database, distributed capabilities and OSS support. Face the challenges of constantly evolving software through dedicated support channels.

Result
Successful launch of Authorization Services with ever-growing volumes and constantly evolving software.

About ThoughtWorks

ThoughtWorks is software company and a community of passionate, purpose-led individuals. They think disruptively to deliver technology to address clients’ toughest challenges, all while seeking to revolutionize the IT industry and create positive social change.

www.thoughtworks.com/

Building Home Grown Solutions From the Ground Up

 

ThoughtWorks, the world-wide software design and pioneering consulting provider, has decades of experience in the software industry and is a vocal advocate of Agile software development. Through their collaborative attitude, evolutionary development style, deep desire for continuous learning and ethical corporate philosophy1, they have successfully delivered projects to companies ranging from BBC to Samsung, all the while being at the forefront of responsible social change.

This is the reason why one of the largest networking companies in the world chose ThoughtWorks to help develop their Learning Institution. By providing everything from training videos, study groups, self learning tools and certifications, this online Learning Center enables their community to engage in active discussions while equipping them with all the tools needed to enrich their learning experience.

When faced with the task of building an Authorization Service, they initially attempted to use a few off-the-shelf solutions. Not content with any instantly available solutions, and being no stranger to building applications from the ground up, they quickly embraced the notion of developing a home-grown Authorization Solution.

The Popular Choice is Not Always the Best Fit

In order to develop an authorization sub system, ThoughtWorks recognized the need for a graph data model in order to accomplish their business goals. “We did look at [other] graph database solutions like Neo4J. We had challenges on the Pricing and the Licensing Model” said Karthik Krishnan, Developer at ThoughtWorks. “We wanted to support OSS and wanted to have an option to use the Community editions if the situation demanded.”

“We did look at other graph database solutions like Neo4J. We had challenges on the pricing and the licensing model.”

– Karthik Krishnan, ThoughtWorks Developer.

Distributed Graph Database for Impressive Outcomes

Upon reviewing their options, other divisions within their client’s company recommended OrientDB. Parallelly, ThoughtWorks had researched OrientDB online and decided it was worth trying. With affordable pricing, distributed capabilities, a straight-forward and liberal licensing model, free community edition as well as OSS support, OrientDB ticked all the boxes and was the graph database of choice for ThoughtWorks.

“We had initially performed certain spikes to test the functionality and features promised. We were quite impressed with the spike outcome.”

– Karthik Krishnan, ThoughtWorks Developer.

In order to solidify their decision, tests were in order. “We had initially performed certain spikes to test the functionality and features promised. We were quite impressed with the spike outcome.” mentioned Karthik Krishnan. Of course, no major implementation comes without challenges. In some cases, performance on volumes was impacted in certain scenarios. With OrientDB providing a dedicated Support IRC Chat Channel, ThoughtWorks was able to instantly reach out to the OrientDB Technical support and core developers to resolve the issues. When dealing with constantly evolving software already in production, software upgrades can present challenges that need to be overcome. At times, a quick conference call was needed in order to discuss and sort out new roadblocks.

Increasing Volumes for Evolving Software

ThoughtWorks successfully launched their Authorization Service for their customer’s Learning Institution in mid 2015. Their product continues to evolve and volumes continue to increase. Challenges are met head-on, knowing that dedicated support is quickly provided when infrastructural components are affected by software upgrades or further issues presented by constantly evolving software.

References:

  1. http://articles.economictimes.indiatimes.com/2010-03-27/news/27622243_1_software-pillar-thoughtworks

If would like to receive more information about OrientDB’s services & subscriptions, please Contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

About OrientDB

The native multi-model database combines the connectedness of graphs, the agility of documents and a familiar SQL dialect. Fortune 500 companies, government entities and startups all use the technology to build large-scale innovative applications. Some of their clients include Comcast, Ericsson, the United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

OrientDB won the prestigious 2015 Infoworld Bossie award and has been covered by multiple media outlets.

pdfDownload PDF

Industry
Data Governance

Challenge
Build a data governance platform that brings context to business data.

Approach
Build the platform using a graph database to exploit relationships.

Solution
Use OrientDB’s graph and document capabilities to bring context aware properties to graph relationships.

Result
Clarity for complex business landscapes and rich speedy business context to data allowing enterprises to understand workflows, projects, dependencies with ease.

About Diaku

A Data Governance innovator leading the charge in a new wave of data governance software, is the company behind Axon, a compelling data governance software platform which facilitates how businesses engage in an accessible, relevant and personal manner. In today’s world of big data and dynamic, ever changing enterprises, Axon breaks away from the traditional data governance approach of prescribing compliant behavior through policies, standards, roles & responsibilities.

http://diaku.com/

Diaku Axon - Data Governance powered by OrientDB

 

Harnessing Graphs and Documents for Context Aware Data Governance

 

Diaku, a Data Governance innovator leading the charge in a new wave of data governance software, is the company behind Axon, a compelling data governance software platform which facilitates how businesses engage in an accessible, relevant and personal manner. In today’s world of big data and dynamic, ever changing enterprises, Axon breaks away from the traditional data governance approach of prescribing compliant behavior through policies, standards, roles & responsibilities.

What Axon achieved is delivering a tool for Collaborative Enterprise Understanding, meaning that by sharing and bringing context to data, organizations are able to better understand workflows, projects, dependencies and processes through visual representations which highlight business relevance in an efficient knowledge and information Platform.

Bringing Context to Data

Enterprise relationships are not linear. Instead, they’re a series of interconnected data points with several relationships. Consequently, data in Axon needed to be viewed as a graph, so naturally Diaku needed a graph database on which to build Axon. Without this, environments would be too difficult and slow to explore.

One of the main challenges Data Governance software faces is bringing rich business context to data. The goal for Axon was to progressively create an integrated view of an enterprise in order to effectively and collectively control and align resources. Correctly tracking data is crucial, though simply tracking data is not what brings value to businesses. It is the context in which this data resides that allows enterprises to gain measurable insights and understanding on which to act upon.

Not Simply a Graph Solution

“We looked at different vendors and found that OrientDB Enterprise was a competitive graph database which had everything that we were looking for”, Said Patrick Dewald, Director at Diaku. “It had other features which initially we simply looked at as an added bonus, but proved to be helpful in forming quick meaningful relationships. Its document capabilities, for example, meant that we could connect associated sources and traverse relationships quickly, without time-consuming JOINs.”

“We were looking for a robust open source graph based solution such as OrientDB for our project.”
– Patrick Dewald, Director, Diaku.

Axon allows you to decompose and inventorize items. Leveraging OrientDB’s graph document capabilities, for example, allowed data sets to have attributes which are connected to glossaries to provide unified meanings. This makes it easier to then search and select items in any inventory and subsequently filter for those.

Measurable Insights

Diaku Axon makes it easy to trace the lifecycle of information and connect with a broad community of stakeholders. OrientDB’s flexibility and multi-model approach enabled Axon to develop complex data relationships without sacrificing performance or data quality. This enables companies to view how and where people depend on each other to deliver, where changes are planned, and how projects will impacted. In a nutshell, Axon brings clarity to complex business landscapes while protecting data quality over time.

If would like to receive more information about OrientDB’s services & subscriptions, please Contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

About OrientDB

OrientDB is the world’s leading distributed graph database and the 2nd in the general graph category. By combining the power of graphs with document, key/value, object-oriented, geospatial and reactive models into one core native engine, OrientDB extended the basic graph database concept into a Multi-Model open source DBMS.

It allows schema-less, schema-full and schema-mixed modes, supports SQL and TinkerPop/Gremlin standards and its strong security has been developed together with global banks who use it to power thousands of transactions per second. Fortune 500 companies, government entities and startups all use OrientDB to build large-scale innovative applications including: Accenture, Barclays, Cisco, Comcast, Dell, United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

OrientDB won the prestigious 2015 Infoworld Bossie award and has been covered by multiple media outlets.

If you’d like to receive more information about OrientDB’s services and subscriptions, please contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

pdfDownload PDF

Industry
Software

Challenge
Quickly and efficiently process & query complex, interrelated source code while clustering data in a cloud environment.

Approach
Investigate every available Graph database vendor to find the right solution to incrementally traverse data with a clustering solution that can hold up in demanding production environments.

Solution
Use OrientDB’s graph database, a straightforward setup with clustering and embedding capabilities to complement Integral.

Result
Fast setup resulting in maximum performance with successful clustering and queries with times in the range of sub-milliseconds.

About Massiv.io

Massiv.io delivers real-time architecture and visualization of enterprise applications to architects, developers and operations professionals through Integral with no run-time agents and no code changes.

http://www.massiv.io/

cropped-Massiv-io-01

Multiple Graph Database Challenges, One Solution

 

Massiv.io, is the company behind Integral, a platform delivering real-time architecture and visualization of enterprise applications to architects, developers and operations professionals. Integral is built on the idea that “Code is the Source of Truth” and aims to put an end to architecture problems from the day it’s implemented.

When initially developing Integral, Massiv.io knew the platform needed to store and process information, or source code, that is not only complex and interrelated but must also be queried extremely quickly, typically less than 100 milliseconds. Furthermore, it needed to be capable of clustering data in a containerized cloud environment, where instances are regulated according to varying loads.

Addressing Key Issues in a Graph Database Market

After an extensive investigation, Massiv.io came to the conclusion that a graph database was the best fit for their requirements and began researching nearly every graph database on the market. One of the key issues faced was that Integral required highly interconnected data to be traversed incrementally (e.g. return edges and vertices based on computed values, traversal depth may vary according to these computations). While easier to do directly in Java, this proved difficult to do with a query language. Throughout their investigative journey, they concluded that most graph databases appeared to be architecturally divided into two camps which presented issues:

A programmatic API that is executed remotely over a clustered data store. In these cases, the clustering technology was solid, but Massiv.io quickly ran into performance problems, having to issue many API calls which were remotely executed. Query time was tracked in seconds, which was too slow for their needs.

The ability to run the database In-memory. This eliminated performance issues. However, by testing a graph database that implemented this architecture, they concluded it had limited support for clustering which would not meet Massiv.io’s requirements. This wasn’t a complaint that the clustering features are not open source (they would have happily paid for those), but that upon investigation they believed this specific vendor had not delivered a clustering solution which was equipped for the demands of Integral’s deployment environment.

Multiple Challenges, One Solution

“OrientDB’s design proved to be the perfect compliment to our platform. OrientDB saved us countless time in providing critical features for our platform that more traditional database technologies do not deliver. it did so in a well-designed, easy-to-integrate approach.”
 – Jim Marino, Architect & Technology Strategist, Massiv.io

Amongst the several graph databases researched and tested by Massiv.io was OrientDB. Their list of technical features as well as their approach seemed to match all of Integral’s requirements. “OrientDB’s design proved to be the perfect compliment to our platform.” said Jim Marino, Architect & Technology Strategist for Massiv.io. “OrientDB saved us countless time in providing critical features for our platform that more traditional database technologies do not deliver. It did so in a well-designed, easy-to-integrate approach.”

Furthermore, OrientDB addressed the architectural issues presented by other vendors and proved easy to install. Embedding OrientDB for maximum performance presented no challenges and its clustering approach was reliable and straightforward to set up. As a result, Integral’s queries are as low as sub-milliseconds! “It took us a couple of days to remove the previous graph database and replace it with OrientDB. The process was straightforward.”

Surpassing Set Goals

“Integral also wound up with a much simpler deployment topology. OrientDB saved us countless development time and effort by delivering a critical piece of our infrastructure.”
 – Jim Marino, Architect & Technology Strategist, Massiv.io

Through this collaboration, Massiv.io’s end goals were not only achieved but surpassed with performance going from seconds (sometimes up to 30) down to milliseconds. “Integral also wound up with a much simpler deployment topology. OrientDB saved us countless development time and effort by delivering a critical piece of our infrastructure.” mentioned Mr. Marino. Integral now successfully analyzes source code, configuration and deployment artifacts to produce an always accurate, continuously updated view of your enterprise architecture.

If would like to receive more information about OrientDB’s services & subscriptions, please Contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

About OrientDB

OrientDB is the world’s leading distributed graph database and the 2nd in the general graph category. By combining the power of graphs with document, key/value, object-oriented, geospatial and reactive models into one core native engine, OrientDB extended the basic graph database concept into a Multi-Model open source DBMS.

It allows schema-less, schema-full and schema-mixed modes, supports SQL and TinkerPop/Gremlin standards and its strong security has been developed together with global banks who use it to power thousands of transactions per second. Fortune 500 companies, government entities and startups all use OrientDB to build large-scale innovative applications including: Accenture, Barclays, Cisco, Comcast, Dell, United Nations, Verisign, Pitney Bowes, Sky, Diaku, CenturyLink and Sonatype.

OrientDB won the prestigious 2015 Infoworld Bossie award and has been covered by multiple media outlets.

If you’d like to receive more information about OrientDB’s services and subscriptions, please contact us.  If you’re a startup company or are currently unsatisfied with your current graph database, request a custom quote!

Unlock the full potential of your enterprise’s data