NoSQL in Liferay Portal

Products & Services
Location: E141

Over the last several months the hype around NoSQL DB design has reached fever pitch.

At the same time, the hype around dynamic data modeling, web based form design, dynamic schema design, meta-data attachment and such has been increasing as well (if not under those names, creating stuff online dynamically with little coding).

What is clear is that many of the characteristics of structured storage make it uniquely suited to serving the database needs of dynamic, online collaboration and social networking platforms such as Liferay Portal. Most of the interesting content on web portal platforms like Liferay are created by and for end users, and are often not tied to any one (or a handful of) data models.

This homomorphic data, such as Liferay’s “Expando” tables (and SharePoint Lists) start to degrade in performance because the number of tables is fixed. Whether you have 1 virtual table or 1000, all the data is still in the same real few tables. This means you start to form contention as more and more different apps try to use the read and write from those.

How can NoSQL help? NoSQL-based systems meet many of Liferay’s requirements:

  1. The data has to be reliable (clustering, replication, backup)
  2. It has to be dynamic (add custom fields to entities on the fly, create new Data Lists on the fly, etc.)
  3. It should offer aggregate operations for sorting and filtering (at least close to what you’d expect from a Document repo with indexing)
  4. It has to scale.
  5. It has to perform well (indexing, MapReduce, etc.)

In this session, you will learn how Liferay maps its features toNoSQL-based systems (such as MongoDB), when it makes sense for you to do so, look at some performance characteristics of various portal architectures, and examine whether it really is worth the effort.

This session is sponsored by Liferay

Photo of James Falkner

James Falkner

James Falkner oversees the 45,000-strong open source Liferay Community. In this role, James provides information, education, community tooling, and leadership development, while constantly encouraging participation and growth of the community. James has over 14 years of experience in technology, and blends his strong technical background with a passion for open source. James has been involved with enterprise web development and the Liferay Community since 2008.

Prior to joining Liferay, James led development of several key technologies in Oracle’s Web Center stack, including its collaboration and social networking services. James is also an alumnus of Sun Microsystems, where he was the principal architect for Sun’s portal technologies, and participated in several open source projects such as OpenSolaris, OpenPortal, GlassFish, and Community Equity. James holds a B.S. in Computer Engineering from the University of Florida.