Address Book File Store and Data Files for Office Communications Server 2007 R2

The Office Communications Server Address Book Server performs the following tasks:

  • Generate a set of data files to be stored in a standard NTFS directory. This set of files contains:
    • A full file containing all contacts.
    • Delta files between the current full file and each previous full file.
  • Optionally, normalize all Active Directory phone numbers into a well-defined format.

Note

The Address Book logic described in the following sections apply to all Office Communications Server deployments except a few special environments with either a very large number of users or a relatively volatile Directory. For such environments, Office Communications Server Address Book logic behaves differently in a small number of aspects, resulting in slight improvements in CPU and/or network efficiency. Exceptions for special environments are called out separately in the sections below.

File Storage and Generation

By default, the SQL maintenance interval is set for 02:00 local time each day. If the Address Book Server runs during this time, its performance is likely to degrade. For this reason, the Address Book Server runs by default at 01:30 local time each day. The service can be configured to run and generate the files in the Address Book Server file store at another time by configuring the MSFT_SIPAddressBookSetting::RunTime WMI setting. You can also force the Address Book Server to do a synchronization pass immediately (updating the file store and RtcAb database as needed) by using the command-line shell: ABServer -syncNow.

In Standard Edition, the Address Book files are stored by default in %ProgramFiles%/Office Communications Server 2007 R2/Web Components/Address Book Files/Files. In Enterprise Edition, the Address Book file store is a shared NTFS folder that the administrator manually creates during setup. The data gathered by the Address Book Server is stored in a binary format in compressed files to minimize storage requirements. The number of days the delta files are kept is set at the static value of 30 days, and this number cannot be changed. After 30 days, the Address Book Server reaches a steady state, and a set of 465 files that include 30 full files and 435 delta files is stored in the Address Book file store and is accessible to clients through the Address Book URL. The Address Book file store also has a set of files (465 files that include 30 full files and 435 delta files) that is used by devices that cannot read Address Book files with the .lsabs file name extension. The files used by phone devices, such as Microsoft Communicator Phone Experience or Microsoft Office Communicator USB Handset, have a .dabs file extension instead of the .lsabs file extension, but they contain user and contact information that is similar to the contents of the .lsabs files.

Each time the Address Book Server starts, it determines whether there are data files in the output directory. If no data files are found, it will generate one full file. A delta file is not generated if there are no initial full files to compare against. The output files are written to the Address Book file store, a folder that can be assigned an access control list (ACL) by using the standard NTFS share permissions.

The following table shows how the full files and delta files are generated.

Day Files generated

Day 1

Full (F1)

Day 2

Full (F2), Delta of F2 - F1

Day 3

Full (F3)

Delta of F3 –F2

Delta of F3 –F1

Day 4

Full (F4)

Delta of F4 - F3

Delta of F4 - F2

Delta of F4 - F1

--------------------------------------

--------------------------------------

Day 30

Full (F30)

Delta of F30-F29

Delta of F30-F28

----

-----

Delta of F30-F1

All data files are stored in one directory. File names for full files are of the form F-xxxx, where xxxx is the file creation date expressed as the hexadecimal 0-based number of days since January 1, 2001. Delta file names are of the form D-xxxx-yyyy.lsabs, where xxxx is the full file creation date, and yyyy is the delta file creation date and .lsabs is a fixed extension. Files are created in memory and are written using a file handle that is created with no sharing allowed so that client applications cannot access a file before it has been completely written.

Exceptions: If a delta file size gets to beyond a certain percentage of the Full file size, a new Full file is generated instead of the incremental delta file. This percentage is specified by the server variable MaxDeltaFileSizePercentage. The default value for this is 1250, or 12.5%.

If this percentage is surpassed on the size of the server side delta file, the server will produce a full file instead of a delta file. In this case, the server will generate fewer than 30 days of delta file information—an exception to its normal logic.

See Also

Concepts

Address Book Server Drilldown