That’s a heck of a title for a post. The title describes three different ways to interface with a storage device.
The “27” can be used to interface with a block device. In other words, “read or write a data block at offset 27”.
The “/home/a.out” can be used to interface with a file device. In other words, “read or write the file ‘a.out’ into the /home directory”.
What is 78FDEJ98F9DK0x87HGRKS98FS98?
That depends on who you are.
I cut-and-pasted this 27-character string from a presentation I have about Centera. It’s called a content address, and the value is used as a “claim check” to retrieve data from a Centera. With the new XAM specification it’s now also called a XUID. A XUID is an industry standard identifier used to store, retrieve, and manage fixed content.
When comparing a XUID to a block address (27), it becomes clear that the XUID is location-independent. The location where the content is physically or logically stored is unknown. I also don’t know how much data the XUID represents. For a block device there are likely 512 bytes at that location. One thing that the block address and XUID have in common is that the nature of the content that is represented by these addresses cannot be determined by inspecting the address on its own.
Compare a XUID to a file address (/home/a.out). The XUID is still location-independent; the absolute pathname of the file specifies a logical location. The file identifier doesn’t indicate how big the file is. But in this case a guess can be made about the content inside the file. It likely contains an executable image.
A XUID doesn’t give hints about the content that it represents. In general, though, a XUID can simultaneously represent two types of content: (1) application data, and (2) meta-data. Note that one XUID can represent multiple pieces of data and meta-data. Also note that traditionally the application data is fixed or unchanging (XAM does allow for changeable content). Applications that manage XUIDs have the ability to be quite creative in their usage of XAM.
For example…..
Let’s Say You’re A Lawyer
In this case then 78FDEJ98F9DK0x87HGRKS98FS98 may represent the sum total of the litigation that you’re bringing to trial. The XUID could represent a top-level meta-data node which points to other XUIDs. These XUIDs could in turn contain electronic content such as surveillance videos, scanned check images, signed documents, and any other forms of evidence that are pertinent to trial. The XUIDs can also be used to prove that the evidence is authentic and immutable. The XUID string can contain a hash value which is timestamped proof that the evidence has not been tampered with. And just as importantly to a lawyer, XAM can support the concept of “litigation hold” to ensure that none of these items are accidentally (or intentionally) deleted from the XAM device.
Let’s Say You’re A Scientist
In this case the XUID represents the sum set of experimental data that is used as input into some sort of algorithm. For example, it may list the full set of weather inputs for a certain region of the world during a certain time period. Or it may show seismographic activity from a certain region of the world that is prone to earthquakes. An application can use a XUID as input into a transformational algorithm that churns through that data. The application can then produce an output XUID (the result). If the output is not satisfactory, guess what? Change the transformational algorithm and re-run the analysis by using the original input XUID.
Let’s Say You’re A Financial Analyst
A financial XUID could actually be quite similar to a scientific XUID. At the end of a given financial quarter, a financial application could “freeze” the financial spreadsheets and/or data and capture them as “fixed content” in XUID form. Financial analysis software can then be run to calculate end-of-quarter results, using a top-level XUID (or a set of XUIDs) to input the financials into the algorithm. Once the algorithm is run, XUID content could be tweaked (edited or updated), new XUIDs created, and “what-if” scenarios can be modeled to predict future results. And of course, financial analysis algorithms can be modified to re-process the original input and generate different results.
Let’s Say You Work for the Government
Governmental decisions are often made by relying on information contained in other documents. Representing these documents with XUIDs, and creating a top-level XUID that tracks the sources that were used to create a given document, allows for “decision audit” of foreign, national, or local decisions. The XUIDs can create a “navigable tree” of document ancestry.
Let’s Say You Should Find Out More About XAM
I’ve just scratched the surface. Name a market and there probably exists a cool new way to use XAM. The paradigm is powerful. XAM has a rich set of features that will only grow over time. In addition to the location-independence, the tamper-proof data, and the retention and litigation hold that I’ve already mentioned, XAM will provide other features and function that only broaden the appeal for application usage. Rich query, for example, is another example of a way that XAM can be used.
It would be excellent to hear from application developers on this topic, especially those that are considering developing applications via the XAM API.
Steve

