SPEAR is the game-changing TeraHelix paradigm that accelerates the delivery of any data-driven initiative. This one-of-a-kind TeraHelix capability sits at the heart of the TeraHelix ecosystem and powers all our data platform accelerators. It is the technical realisation of our collective experience spanning decades in the forefront of financial services technology.
With Spear, your enterprise’s greatest asset - its data and the intellectual property tied up in its structure - is no longer bound to a particular technology implementation choice.
Flexible Data Representation
Spear represents the same data model in the structure appropriate for each application – allowing collaboration between different user groups. For example, nested objects are preferred by quantitative and software developers, whereas relational or tabular formats are favored for data science and reporting purposes. The data format can vary from high-level text-based formats (e.g., XML, JSON) to optimised low-level on-the-wire formats (e.g., Google ProtoBuf) or analytical formats (e.g., Parquet, ORC)
Flexible Data Representation
The rate at which new technologies are being developed is only increasing. It is more important than ever for enterprises to standardise their data model and future-proof it against an constantly evolving technology landscape. The standardisation of data enables efficient reporting, aggregation, and machine learning processes. These standards facilitate increased automation and innovation.
The crafting of multiple tactical conversions between different data models causes confusion between teams in the enterprise and holds back innovation.
In authored models, you can leverage features such as randomisation for generation of test data and annotations for built-in validations.
Utilise the ability to generate data reporting models from regulator defined specifications.
Spear is laser-focused on serving as a data structuring language, disregarding general programming language constructs that are unnecessary from a data perspective.
Spear includes standard data definition constructs. These standard constructs include primitives, user-defined enums, namespaces, interfaces, structures, inheritance, polymorphism, generic types, and keyed structures treated as first-class citizens.
Spear provides advanced data definition constructs like functors, functional interfaces, unions, UnionStructs, StructsDefs, PropStructs, PropInstances, and annotations for Aspect-Oriented Data Definitions. It also supports relational (rectangular) data definitions.
SPEAR Features - Runtime Stage
Spear embodies best practices as standard, encompassing equality, data differencing/comparisons, completeness, immutability, introspection, reflection, type registries, coercion, and dynamic features. It also offers runtime type generation and compilation, 'soft' structures and relations, type conversions, dynamic object-to-relation capabilities, supporting libraries, automatic user interface generation, and automatic structure inference (e.g., Spear from CSV).
Development Platforms include Java and JVM Languages (e.g., Scala, Clojure, and Kotlin), Python, TypeScript, and C# and .NET Languages.
Data Formats offer two-way interoperability, including textual formats like XML, JSON, YAML, and CSV, as well as binary formats like ProtoBuf and Linear Buffer.
Data and Storage Platform Support includes object stores like Apache HBase and MongoDB, relational stores with dynamic SQL from Spear (e.g., Apache Phoenix), and data processing engine support with Apache Spark.