Oracle Endeca – Core Concepts and Terms.

In this post I will make an attempt to explain the most important concepts and common terms used in Oracle Endeca world.

What is Endeca?
  1. Endeca Technologies was founded in 1999 and privately held till last quarter of 2011.
  2. Oracle Corporation acquired Endeca Technologies on October, 2011 for a whopping $1.075 Billion.
  3. Endeca is a vertical/enterprise/e-commerce search solution.
  4. Endeca is widely used to e-commerce domain for guided navigation.
  5. Endeca is also used for data discovery in business intelligence and data warehouse segment.
  6. Endeca is a data management product which can index structured, semi-structured and unstructured data and make it available for mining, discovery and guided navigation.
  7. As of today Oracle sells two Endeca solutions. 1. Oracle Endeca Commerce 2. Oracle Endeca Information Discovery.
What are Oracle Endeca Records?

Records are roughly equivalent to a database row. If you are familiar with Lucene/Solr then you can relate it with a document. Normally data is de-normalized and stored in records. I will explain you this concept with simple example. Imagine that we are indexing trade entity into Endeca MDEX. Trade entity is already in a normalized state in database.

Trade Table.
trade_id exchange_id value currency_id
101 1 8231490 1
102 2 3343423 2
103 1 1343423 1
104 3 244434 3
Table Exchange.
exchange_id name region
1 London Stock Exchange EMEA
2 The New York Stock Exchange Americas
3 Bombay Stock Exchange Asia
Table Currency.
currency_id code symbol
1 GBP £
2 USD $

A normalized entity trade will be denormalized and stored in the MDEX. One records will looks like something similar to what is given below.

trade_id value exchange_id name region currency_id code symbol
101 8231490 1 London Stock Exchange EMEA 1 GBP £
What are Oracle Endeca Dimensions?

Dimensions are nothing but a logical structure to organize your data so that user can navigate the information space iteratively. This is roughly equivalent to group by clause in database and facet in any other search solution. Imagine that the exchange_id property is defined as a dimension in the above data structure then the data would be grouped using exchange id and stored in internal data structures and presented to user in such a way that he/she can easily navigate through it. It would conceptually looks like the diagram given below.
Oracle Endeca Navigation Query

In the above diagram “Stock Exchange Property” is a dimension and that dimension got three possible refinements. So if you make a navigation query using nid ’0′ then you will get all the records and navigation query with nid ’2344′ would return just the record R4.

What is Oracle Endeca Dimension Group?

Dimension Group (com.endeca.navigation.DimGroup) is an immutable object used to group a collection of related Dimensions. (com.endeca.navigation.Dimension) Dimension Group is used to present a set of dimensions under a logical entity.

What are Oracle Endeca Properties?

As you have understood already the Endeca Records are derived from the source records. Every record would be a collection of properties or key/value pairs. In the above given example record, trade_id is a key and ’101′ is the value. Key/Value pair is called as Endeca property.

What is nid in Oracle Endeca?

“NID”; Its another common term people uses in Oracle Endeca world. Its nothing but the id of a given dimension. When you make a navigation query you have supply the nid so that Endeca can limit your navigation to a sub-tree. “0″ is the nid of the root. If you wanted to do a navigation search against the whole record set then you must use “0″ as your nid.

Searchable vs Non-Searchable Properties.

If you are coming from Lucene/Solr world then its easy for you to understand this. Searchable are equal to indexed property and Non-Searchable are same as of the stored property. Only the indexed properties are available for search.

What does ENE stand for?

You would have seen multiple classes in the Oracle Endeca presentation API start with ENE. Few examples are..

  1. ENEConnection
  2. ENEException
  3. ENEQuery

ENE stands for Endeca Navigation Engine. ENE is an alias for DGraph and A-ENE is an alias for AGraph.

I will keep updating this post with more concepts and term. Stay tuned… change vpn to india.

10 thoughts on “Oracle Endeca – Core Concepts and Terms.

  1. balachandar said:

    hi Sanju ,

    Good today i understand the common terms used in Endeca thanks …

    i would like to know .. these three topics ..

    Developing Endeca Commerce Experience Manager Apps Rel 3.1 ?

    Implementing Endeca Commerce Core Technologies Rel 3.1 ?

    Using Endeca Commerce Experience Manager Apps Rel 3.1 ?

    can u please through some lights on the above topics like how its differ from other two…

    • Sanju Thomasourownjava said:

      Thanks Bala. Yes, you can expect more blogs on the Oracle Endeca Commerce.

  2. pracash said:

    hi you have gathered a valuable information on Oracle Endeca…., i am looking for content like this and i am much impressed with the information and nice course content, thanks a lot for the Information regarding Oracle Endeca Online Training

    • Sanju ThomasSanju Thomas said:


  3. esl said:

    hi, is there a way to use connection pooling using HTTPENEConnection?

    • Sanju ThomasSanju Thomas said:

      Connection pooling for http?

  4. Rimja said:


    This is very informative. Can you list down the key topics in OEID Training ?


  5. rahuljith said:


    I have loaded dimension in UI side.Now i need to load the url for each dimension in front end.

    can u help on this.