Reader small image

You're reading from  Alfresco for Administrators

Product typeBook
Published inApr 2016
PublisherPackt
ISBN-139781782175032
Edition1st Edition
Right arrow
Author (1)
Vandana Pal
Vandana Pal
author image
Vandana Pal

Vandana Pal is a software engineer and author. She currently works as senior consultant at CIGNEX Datamatics. She has extensive experience working with Enterprise Digital Asset Management and Content Management Systems. She has worked with various deployments of Alfresco in various domains, such as media, finance, and healthcare, for different organizations across the world. She has hands-on experience working with architecture design, performance tuning, security implementation, integration, and the orchestration of complex workflows in Alfresco. She has more than 7 years of experience in software engineering. Her journey in this field began when she started working with different open source technologies and found them interesting. She holds a bachelors of engineering degree in information technology from Gujarat University, India. Vandana has also coauthored Alfresco 4 Enterprise Content Management Implementation.
Read more about Vandana Pal

Right arrow

Chapter 8. The Basics of the Alfresco Content Store

Content is the heart of the ECM system. All functionalities and features of the ECM system are surrounded by content. For the architecture and maintenance of the ECM system, the understanding of the lifecycle of content in an ECM application is very important. Once content gets inside the CMS application, it passes through different phases, which is common in most standard ECM applications.

However, the storage mechanism of the content varies in different ECM applications.

In this chapter, we will understand, in detail, the lifecycle of content in Alfresco and how these different phases impact different components of Alfresco. We will also try to understand the Alfresco database schema.

By the end of this chapter, you will have learned about:

  • The content lifecycle

  • Content store types

  • Alfresco database schema

Before going into detail about lifecycles, let's understand the content store and database schema. We already covered indexes in Chapter...

Understanding the content store architecture


The content store controls the creation and deletion of binary content in the filesystem. We have already covered a few details on this in earlier chapters. The dir.root property in the alfresco-global.properties (<Tomcat_Home>/shared/classes) file defines the root binary file storage location.

Let's, for example, examine the path specified in dir.root which is /mnt/alf_data. Beneath this directory, there are two folders: contentstore and contentstore.deleted, which will be created the first time Alfresco is started. Let's have a look at the details of the folder:

  • contentstore: All active and archive content is being stored here. Based on content creation time, a directory hierarchy is created. All the files will have a unique name and the .bin extension. Let's say there is a file named Employee Handbook.doc being uploaded in Alfresco on January 20, 2015 at 10:50 A.M., then the file will be stored in /mnt/alf_data/contentstore/2015/1/20...

Understanding the database schema


Alfresco has its own standard database schema to store all its information. The database is the heart of the whole CMS system.

External applications, apart from Alfresco, should not perform any write operations in the Alfresco database directly. Always make sure you use the database for reading only. This is a standard practice. Don't make any changes to any values in the database. This schema is only required to understand Alfresco and troubleshoot.

As you know, everything in Alfresco is based around nodes, so the tables are also named in the same pattern. The database schema of Alfresco is very easy to understand. So, here we will not dive into all the tables, only a few important ones will be covered.

Schema of the alf_node table

This table is the main primary reference of the node. This is the first table you will always look for. All the node entries are present in this table. It captures primary node information like UUID, created date, modified date,...

Understanding the content lifecycle in Alfresco


All content in Alfresco has a lifecycle in its system. There are mainly two stages in which content could be in any ECM system. Here are the following stages:

  • Live state : It is referred to as workSpacesStore in Alfresco

  • Archive state: It is referred to as archiveSpacesStore in Alfresco

When a user uploads content, it is in a live state. Users can do all sorts of operations like edit, update, and change permissions while content is in an active state. On deletion of content, users have the option to send the content to an archive state, and keep it there for a specific duration and then have it removed completely from the system or permanently deleted from Alfresco.

As we discussed in earlier chapters, Alfresco has three components: Database, ContentStore, and Solr Indexes, which keep reference to all of the content within the system. So, the content lifecycle mainly impacts these three components.

Let's go through, in detail, the content lifecycle...

Summary


In this chapter, we covered details about the core components of Alfresco. ContentStore and the database are the building blocks of Alfresco. These two components form your full repository.

Alfresco provides you with various different types of ContentStore, like file storage, an encrypted store, and a caching store. Based on the system design, we can use any of them. Alfresco also provides you with the flexibility to define multiple stores and content can be bound to their own specific stores.

We also discussed the database schemas of Alfresco and a few of the important tables and their associations. Content in any ECM system has a lifecycle. Content moves from live to archive and is then removed from the system. While going through this phase, it impacts all core components.

In the next chapter, we will discuss the important tools and procedures required for the maintenance and troubleshooting of Alfresco.

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Alfresco for Administrators
Published in: Apr 2016Publisher: PacktISBN-13: 9781782175032
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime

Author (1)

author image
Vandana Pal

Vandana Pal is a software engineer and author. She currently works as senior consultant at CIGNEX Datamatics. She has extensive experience working with Enterprise Digital Asset Management and Content Management Systems. She has worked with various deployments of Alfresco in various domains, such as media, finance, and healthcare, for different organizations across the world. She has hands-on experience working with architecture design, performance tuning, security implementation, integration, and the orchestration of complex workflows in Alfresco. She has more than 7 years of experience in software engineering. Her journey in this field began when she started working with different open source technologies and found them interesting. She holds a bachelors of engineering degree in information technology from Gujarat University, India. Vandana has also coauthored Alfresco 4 Enterprise Content Management Implementation.
Read more about Vandana Pal