SMA-X: versatile information sharing in and around telescopes and beyond
We developed the Submillimeter Array eXchange (SMA-X) as a real-time data sharing solution, built atop a central Redis database. SMA-X is a storage convention, facilitated by a set of server-side Lua scripts (or Redis functions) which enable efficient low-latency and high-throughput real-time sharing of hierarchically structured data among the various systems and subsystems of the telescope. It enables fast, atomic retrievals of specific leaf elements, branches, and sub-trees, including associated metadata (types, dimensions, timestamps, origins, and more). At the SMA, we have relied on since 2021 to share a diverse set of ∼10,000 real-time variables, including arrays, across more than 100 computers, with information being published every 10 ms in some cases. SMA-X is open-source and is freely available to everyone through a set of public GitHub repositories, including C/C++ and Python3 libraries to allow integration with observatory applications. A set of command-line tools provide access to the database from the POSIX shell and/or from any scripting language, and we also provide a configurable system daemon for archiving the observatory state at regular intervals into a time-series Structured Query Language (SQL) database to create a detailed historical record.
Authors
- Paul Grimes (ORCID: https://orcid.org/0000-0001-9292-6297)
- A. Kovács (ORCID: https://orcid.org/0000-0001-8991-9088)
- R. W. Wilson (ORCID: https://orcid.org/0000-0001-5694-6725)
- Christopher Moriarty
Institutions
- Center for Astrophysics Harvard & Smithsonian (US)
Publication Details
- Journal
- Journal of Astronomical Telescopes Instruments and Systems
- Published
- 2025-01-27
- DOI
- https://doi.org/10.1117/1.jatis.11.1.017001
- Primary Topic
- Spacecraft Design and Technology
- Type
- article
- Field-Weighted Citation Impact
- 0.00
Funders
- Smithsonian Institution
- Academia Sinica
- Smithsonian Astrophysical Observatory