PLM, RDBMS and Future Data Management Challenges

by Oleg on January 4, 2012 · 15 comments

It is not unusual to hear about problems with PLM systems. It is costly, complicated, hard to implement and non-intuitive. However, I want to raise a voice and speak about data management (yes, data management). Most of PDM/PLM software is running on top of data-management technologies developed and invented 30-40 years ago. The RDBM history is going back to the invention made by Edgar Codd at IBM back in 1970.

I was reading Design News article – Top automotive trends to watch in 2012. Have a read and make your opinion. One of trends was about growing complexity of electrical control units. Here is the quote:

As consumers demand more features and engineers comply, automakers face a dilemma: The number of electronic control units is reaching the point of unmanageability. Vehicles now employ 35 to 80 microcontrollers and 45 to 70 pounds of onboard wiring. And there’s more on the horizon as cameras, vision sensors, radar systems, lanekeeping, and collision avoidance systems creep into the vehicle.

It made me think about potential alternatives. Even if I cannot see any technology these days that can compete on the level of cost, maturity and availability with RDBMS, in my view, now it is a right time to think about future challenges and possible options.

Key-Value Store

These types of stores became popular over the past few years. Navigate to the following article by Read Write Enterprise – Is the Relational Database Doomed? Have a read. The article (even if it a bit dated) provides a good review of key-value stores as a technological alternative to RDBMS. It obviously includes pros and cons. One of the biggest “pro” to use key-value store is scalability. Obvious bad is an absence of a good integrity control.

NoSQL (Graph databases)

Another interesting example of RDBMS alternative is so-called noSQL databases. The definition and classification of noSQL databases is not stable. Before jumping into noSQL bandwagon, analyze the potential impact of immaturity, complexity and absence of standards. However, over the last 1-2 year, I can see a growing interest into this type of technology. Neo4j is a good example you can experiment with in case you are interested.

Semantic Web

Semantic web (or web of data) is not a database technology. Opposite to RDBMS, Key-value stores and graph databases, semantic web is more about how to provide a logical and scalable way to represent data (I wanted to say in “semantic way”, but understand the potential of tautology  :) ). Semantic web relies on a set of W3C standard and combines set of specification describing ways to represent and model data such as RDF and OWL. You can read more by navigating to the following link.

What is my conclusion? I think, the weak point of existing RDBMS technologies in the context of PLM is a growing complexity of data – both from structural and unstructured aspects. The amount of data will raise lots of questions in front of enterprise IT in manufacturing companies and PLM vendors. Just my thoughts…

Best, Oleg

Share
  • Alex

    The data storage thing is definitely something to keep track on. I partly agree with the immaturity of the noSQL track: big companies like Google, Amazon … showed us already that concepts like BigTable, Map Reduce as well as SimpleDB … also work in real work scenarios. I agree that having no real standards in this area can be problem for spreading these things. However, not only relying on RDBMS in the future will be a challenge for the vendors.

  • beyondplm

    Alex, thanks for commenting! I agree with you observations. Btw, what other challenges do you see? Best, Oleg

  • Pingback: Design & Engineering Tech Insights Weekly Blog Round-Up | CAD/CAM Performance Blog

  • http://www.prodeos.fr Yoann Maingon

    Hi Oleg,

    What would be your thought about the Aras database schema which is flat with One ItemType = One Table. From a admin point of view I like it better than other experiences i've add with other systems. It makes things clear and easy to reach. At the same time I guess it the indexation should be better, am i wrong?

    What is your take also on xml file based database like BaseX? I'm getting more and more feedbacks about the power of it. In a PLM context i've used it for migrations. I've also used it for other more simple purpose but do you think it would have a great potential for large PLM implementation or does it look more like a storage database which could not handle too many request?

    Best, 
    Yoann

  • Eric

    The NoSQL term covers many database/storage technologies that have the common denominator of not being an RDBMS (insinuating that SQL is just used for these systems.) There are some that don't really like the moniker because it doesn't itself communicate the inherent differences in what is available. But it is a catchy term and does get people's attentions that there are alternatives to the RDBMS model. I found this link not too long ago, and it lists quite a few of the most popular NoSQL options out there; it is worth a read. The main point really as that each have their place and areas of strength:

    http://kkovacs.eu/cassandra-vs

    As far as what might be best for a PLM type application (RDBMS or something else?), that is hard to say. I personally have been finding interest in the idea of PLM like systems used in smaller to medium sized businesses. In the cases I am thinking of, I cannot see needed to scale beyond a single database server, so there would not be sharding issues related to linear scaling. As far as modeling goes, if you wanted flexibility for things like attributes on a per item basis, you could always store these in a single text field (say a columns named extra_attributes for example) as an array/hash of key/value pairs in a format like JSON, and then programmatically parse these values. One of the benefits of many of these NoSQL options is the “non-schema” nature of the objects (in addition to the horizontal scalability.) But this can also be problematic in that you don't have the constraint benefits that an RDBMS provides; that would need to be handled inside the program logic itself.Basically, there are lots of tools out there today, and as the saying goes, use the best tool for the job. There is no single right answer that fits across usage domains. Although I have read up on this stuff, and know enough to be dangerous, I am not a database expert. But it is an area of interest and am starting to dig in as much as a can. Lots of good stuff happening.Eric

  • Matt

    Oleg – I think there is a distinction between data management and how the data is managed. To me the actual physical layer should not prevent the set of end user functionality that can be presented around data management (it may certainly have impacts on the efficiency: speed / storage etc.) and I agree that RDBMS may have helped shape the way that PLMs have approached data management.

    However I still feel that from an end user perspective PLM is very rigid in how is approaches data management and the set of data it chooses to manage. Some of this is historical in their ancestry, and some is rigidity in which data relationships are managed. But from an overall enterprise perspective I am eager to see how the management of unstructured data is integrated into existing managed data. I think managing this unstructured data, especially with its explosive nature in a social environment, will be a big win for who gets it right.

  • beyondplm

    Yoann, I believe, Aras should have a very intensive caching mechanism in case of working with a hierarchy of Item Types or just multiple Item Types. The biggest problem is how to optimize the access to multiple tables. Aras has some MatrixOne DNA in the development and architecture. So, most probably they have learned something since the beginning (~2000-01). 

    I have mixed feeling about XML Databases. To me XMLDb is kind of mix of key-value store and object database. Never tried BaseX by myself, but played with Marklogic a bit. What do you think about XMLDb? Did you try to compare queries and efficiency? 

    Thanks, for commenting! 
    Oleg

  • Eric

    Upon reading further comments here, and thinking a little about what I posted, I realized that some of the “NoSQL” offerings like the XML and graph databases might be so different then the document and key => value offerings, that their usage cases might be completely different. Basically, there is a lot going on in the database space. Within the last year or two I have heard someone say where are in a golden age of databases. Again, lots of good stuff happening. Though for certain, the RDBMS model is going away no time soon.

  • http://www.prodeos.fr Yoann Maingon

    I haven't done efficiency comparison between XMLdb and others. I'm using it in another project I hope i can show you soon through a small webmeeting. But from the discussions I've had with XMLdb users and others the technology and the db servers seems to be more and more efficient. I can see more and more activity logged on baseX with more and more discussions. But I just have the impression that it is a good thing for stable structured information. It fits perfectly with my project need on a development level as it helped me to develop a lot faster but maybe for performance reason I may have to get back to another technology. Not an expert on DB! 
    Yoann

  • Pingback: PLM and Data Model Pyramid

  • Pingback: PLM and Data Model Pyramid « Daily PLM Think Tank Blog

  • beyondplm

    Yoann, thanks for sharing the experience. Frankly, saying, from the technological perspective, I'm more excited with the opportunity of key-value-stores or triple-stores. I would be interested to discuss with you in some time. Best, Oleg

  • beyondplm

    Eric, I agree – lots of movements in DB field now with the maturity of web technologies. However, I don't see it as a replacement to RDBMS. I would expect lots of bridging or bundled solutions where RDBMS is combined with no-SQL (or something else) to accomplish some business and/or functional goals. Just my thoughts… Oleg

  • beyondplm

    Matt, thanks for the comment. Agree – lots of focus today on structured / unstructured worlds. Talking about 'data management' and how data is managed, I want to point it you on my blog today – PLM and Data Model Pyramid (http://beyondplm.com/2012/01/1…. I hope, you'll find it useful and clarifying the topic. Best, Oleg

  • beyondplm

    Eric, thanks for your deep insight. In my view, PLM specific is mostly in the high level of structured information and dependencies. So, speaking from that standpoint, I see a bigger value in noSQL (or any other data-management solutions) that can be more efficient in capturing of data models, relationships and flexibility. Best, Oleg

Previous post:

Next post: