Skip to content

DataFrame

Steve Cote edited this page Apr 23, 2017 · 1 revision

A Data Frame is a compact, efficient, hierarchical, self-describing and utilitarian data format with the ability to marshal other formats. It is an open source project release under the MIT license and can be downloaded from the Data Frame project site.

A DataFrame can be used as a Value Object design pattern implementation, providing access to data without carrying any business logic. Value Objects tend to make service interfaces simpler and can many times reduce the number of calls to remote services through the population of the entire data model thereby avoiding multiple calls to the service. Value Objects can also be used to reduce the number of parameters on service methods.

DataFrame was first developed in 2002 to implement the Data Transfer Object (DTO) design pattern in distributed applications; passing a DataFrame as both argument and return values in remote service calls. Using this implementation of a DTO allowed for more efficient transfer of data between distributed components, reducing latency, improving throughput and decoupling not only the components of the system, but moving business logic out of the data model. Its compact format and quick marshaling made it superior to text-based formats such as XML and JSON in all but human readability.

DataFrame uses a binary wire format which is more efficient to parse and transfer than XML and other text formats. Marshaling occurs only when the data is accessed so unnecessary conversions are avoided.

Home

  1. Concepts
  2. Features
  3. Transform Engine
  4. Quick Start
  5. Configuration
  6. Secrets Vault
  7. Readers
  8. Writers
    • List of Writers
    • Custom Writers
  9. Filters
    • Accept
    • Reject
    • Custom Filters
  10. Tasks
    • List of Tasks
    • Custom Tasks
  11. Validators
    • List of Validators
    • Custom Validators
  12. Listeners
    • List of Listeners
    • Custom Listeners
  13. Transforms
    • List of Transforms
    • Custom Transforms
  14. Mappers
  15. Context
  16. Databases
  17. Templates
  18. Logging
  19. Encryption
  20. Usage
  21. Expressions
  22. Examples
Clone this wiki locally