AOCE: PowerShare Catalog Structure (10/93)

Article Created: 4 October 1993


This article describes the PowerShare Catalog Structure in Apple Open
Collaborative Environment (AOCE).

A PowerShare Catalog is a hierarchical, distributed repository of
information served by one or more PowerShare Catalog Servers. This catalog
also provides authentication services on the network.

The relationship between a PowerShare Catalog and a PowerShare Catalog
Server is not necessarily one to one. In fact, in all but the smallest
installations, there will be several PowerShare Catalog servers for each
PowerShare Catalog.

It is possible for a PowerTalk user to access information from more than
one PowerShare Catalog.

* Hierarchical Structure
An PowerShare Catalog is organized in a hierarchical manner. For
example, a PowerShare Catalog could be created for Apple Computer.
? ---------------
| Apple Catalog |
---------------
| |
------------ --------------------------
| |
-- --
------| |- ------| |-
| USA | | Pacific |
| | | |
| | | |
---------- ----------
| | | | | |
------ | ------------ ------- | -----------
| | | | | |
---- ---- -- -- ---- --
| | | | ------| |- ------| |- | | ------| |-
| | | | | | | Tonga | | | | Japan |
| | | | | | | | | | | |
| | | | | | | | | | | |
---- ---- ---------- ---------- ---- ----------
<-------- Records -----------> | | |
------------ | |
| ------- |
| | |
---- ---- ----
| | | | | |
| | | | | |
| | | | | |
| | | | | |
---- ---- ----
Catalog Structure

Records are stored in catalog folders. It is possible to have a catalog
folder that contains both records and other catalog folders.

* Where are the Servers?
Notice in the above diagram that there are no servers represented. This
diagram is a picture of the logical structure of the information in the
catalog. The catalog structure does not necessarily indicate which
PowerShare Catalog Servers contain which information.

In this example, it is highly unlikely that the entire Catalog could be
maintained on one PowerShare Catalog Server. Instead, the load would be
distributed among several PowerShare Catalog Servers. No one server
would contain all of the data.
? ---------------
| Apple Catalog |
---------------
| |
--------------- ---------------
| |
---------------|----------------- -----------------|---------------
| | | | | |
| -------- | | --------- |
| | USA | | | | Pacific | |
| -------- | | --------- |
| | | | | | | | |
| ----- | ----- | | ------ ----- |
| | | | | | | | |
| ---- ---- ---- | | ------- ------- |
| | | | | | | | | | Tonga | | Japan | |
| | | | | | | | | ------- ------- |
| | | | | | | | | | | | |
| | | | | | | | | ---------------------- |
| ---- ---- ---- | | | | | |
| <------- Records ------> | | ---- ---- ---- |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | ---- ---- ---- |
--------------------------------- ---------------------------------
USA Server Pacific Server

Distributed PowerShare servers

From the AOCE client's perspective, there is no concept of PowerShare
Catalog Servers, only PowerShare Catalogs. AOCE clients never select a
particular server. In fact, an end user never knows which specific
PowerShare Catalog Server is responding to an information request.

In this example, all data for Apple USA resides on the Apple USA server
and all data for Apple Pacific resides on the Apple Pacific server.
There is no one server that contains all of the records for the entire
database. The data is distributed across two servers. However, all the
data is in one PowerShare Catalog.

If a user in Apple USA needs information from the Apple Pacific catalog
folder, the user need only open the Apple Pacific catalog folder from the
Catalogs icon on the desktop. PowerTalk takes care of finding out which
PowerShare Catalog Server serves the Apple Pacific catalog folder and
directs the information request accordingly. The end user never has to
select a PowerShare Server.

* Folders Directory
PowerTalk keeps a list of which PowerShare servers serve the Folders
Directory. The Folders Directory is a copy of the structure of the
PowerShare Catalog. The Folders Directory is a type of PowerShare
Catalog which is used by PowerTalk and PowerShare to keep track of which
servers serve which catalog folders. While the entire Folders Directory
might be replicated in several places in a PowerShare system, the Folders
Directory does not contain any user data. It contains only path
information to direct PowerTalk and PowerShare users to the appropriate
PowerShare Servers.

PowerTalk asks one of the servers serving the Folders Directory which
PowerShare servers serve the catalog folder containing the requested
data. PowerTalk receives a list of servers serving the appropriate
catalog folder. Finally, PowerTalk picks a server from the list and
sends the information request.

This process is transparent to the end user. An AOCE client never sees
the different servers. The client only sees different catalog folders.
In the Catalogs icon, the end user never knows nor cares which PowerShare
Catalog Servers serve which catalog folders.

Replication
-----------
If the server containing data for a particular catalog folder goes down,
the information in that catalog folder is no longer available. To guard
against this situation, two PowerShare Catalog Servers can serve the same
catalog folder, replicating the information among themselves.

A replicated server system can also balance the load between several
servers, providing quicker responses to client systems. This means more
clients can simultaneously access the same catalog folders with no loss of
performance.
?For example, if Pacific Server #1 would go down for some reason, users
would still have access to data in a Apple Pacific catalog folder because
Pacific Server #2 also contains a copy of that information.

The end user still sees only the catalog and not the servers. The
replication is transparent from the point of view of the AOCE client
system.

Replication happens automatically with no intervention required by the
catalog administrator. To add a record to a catalog folder, the catalog
administrator would run PowerShare Admin to add the new record. As with
PowerTalk, the catalog administrator cannot specify which PowerShare
Catalog Server will be updated. Instead, the PowerShare System Manager's
Utility will add the record to the catalog folder. The PowerShare System
Manager's Utility picks one of the PowerShare Catalog Servers that serve
that particular catalog folder. That PowerShare Catalog Server takes care
of communicating the changes to other PowerShare Catalog Servers that serve
the same catalog folder. The catalog administrator only has to update the
catalog folder once, instead of updating each and every PowerShare Catalog
Server that serves that particular catalog folder.
?The PowerShare Catalog Servers keep each other up to date by exchanging
updates to information on the catalog folders they serve. The replication
mechanism is peer to peer based, not master-slave based. Any server can
accept and distribute updates to other servers serving the same directory
folders. If one PowerShare Catalog Server receives an update, that server
propagates the new information to other PowerShare Catalog Servers that
serve the same catalog folder.

While it is true that the servers communicate with each other to check for
new information, this exchange does not cause an excessive increase in
network traffic. There are two reasons for this. The first is that the
servers only exchange information on updates. They do not automatically
exchange the entire contents of a catalog folder. The second reason is
that the frequency with which the servers check with each other for new
information is proportional to the rate of new information. If a large
number of updates have been made recently, the servers will communicate
frequently. As the amount of new information drops off, the servers drop
the frequency with which they communicate with each other. The amount of
network traffic generated by PowerShare Catalog Servers is directly
proportional to the amount of information changing in the PowerShare
Catalog structure.



Published Date: Feb 19, 2012