May 12, 2020
Estimated Post Reading Time ~

AEM Repository + Interview Questions

AEM is built on top of Adobe's CRX platform. CRX is a data storage system specifically designed for content-centric applications. AEM uses this content repository to store all its web content, digital assets, scripts, Java libraries, configuration information, and other data. CRX implements the Content Repository API for Java Technology (JCR). This standard defines a data model and application programming interface (that is, a set of commands) for content repositories.

For more information click here

Interview Questions
Note: For more on Apache Jackrabbits watch this video

1. What is JCR?
A content repository, as defined by JCR, combines features of the traditional relational database with those of a conventional file system.
File system-like features supported by JCR include:
  • Hierarchy: Content in a JCR repository can be addressed by path. This is useful when delivering content to the web since most websites are also organized hierarchically.
  • Semi-structured content: JCR can store structured documents, like XML, either as opaque files (as a file system would) or as structures ingested directly into the JCR hierarchy.
  • Access Control and Locking: JCR can restrict access to different parts of the content hierarchy based on policies or ACLs. It also supports locking of content to prevent conflicts.
2. Why to use oak indexing?
Unlike Jackrabbit 2, Oak does not index content by default. Custom indexes need to be created when necessary, much like with traditional relational databases. If there is no index for a specific query then the whole repository will be traversed For more information https://docs.adobe.com/docs/en/aem/6-0/deploy/upgrade/queries-and-indexing.html

3. Explain David's content model.
David Model:
  • Data First, Structure Later. Maybe.
  • Drive the content hierarchy, don't let it happen.
  • Workspaces are for clone(), merge() and update().
  • Beware of Same Name Siblings.
  • References considered harmful.
  • Files are Files.
IDs are evil. For more information https://docs.adobe.com/docs/en/cq/5-6/howto/model_data.html

4. Difference between CRX 2 and CRX 3.


5. Why we need TAR Compaction?
If we are using Tar files as the storage, it tends to grow in size and starts claiming disk space every time when data is created or updated as data in tar files are never overwritten rather it keeps adding new versions. To mitigate the same, AEM has garbage collection mechanism which is known as ‘Tar Compaction’ to remove the unused data and reclaim the disk space. To perform TAR Compaction, please follow this blog http://www.aemcq5tutorials.com/tutorials/online-offline-tar-compaction-in-aem/

6. You have created a bundle with CRXDE. What does the .bnd file contain?
The .bnd file contains extra metadata about the bundle used by the CRXDE build process.

7. You want to install bundles through CRX only in the author instance. Which folder name can you use for that purpose?
All folders named install.author.

8. You want to request a JSON representation of the content. What do you have to do with the request?
Change the extension to .json.

9. Which access control policies does the JCR Session define to manage nodes?
Privileges to access the JCR workspace define to manage nodes


By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.