Launch HN: Synnax (YC S24) – 통합 하드웨어 제어 및 센서 데이터 스트리밍
요약
Synnax는 센서 및 액추에이터 연결, 텔레메트리 스트리밍, 과거 데이터 쿼리를 통합하는 플랫폼입니다. 이 플랫폼은 하드웨어 개발자들이 여러 종류의 장치와 통신하고 데이터를 관리하기 위해 필요한 복잡한 인프라 구축 문제를 해결합니다. Synnax는 커스텀 시계열 데이터베이스를 기반으로 실시간 스트리밍과 영구 저장을 동시에 제공하며, React 컴포넌트 라이브러리와 사전 구축된 통합 기능을 통해 개발 과정을 단순화합니다.
핵심 포인트
- Synnax는 센서/액추에이터 연결부터 제어 및 후처리까지 전 과정을 아우르는 통합 하드웨어 플랫폼을 제공합니다.
- 기존의 LabVIEW, ROS, SCADA 등 파편화된 솔루션과 Kafka, InfluxDB 같은 범용 도구 사이의 '접착제(glue)' 역할을 수행합니다.
- 핵심은 수평적 확장성과 결함 허용성을 갖춘 커스텀 시계열 데이터베이스를 통해 실시간 스트리밍과 영구 저장을 동시에 처리하는 것입니다.
- 개발 편의성을 높이기 위해 React 컴포넌트 라이브러리와 National Instruments, OPC UA 기반의 사전 구축된 장치 통합 기능을 제공합니다.
안녕하세요 Hacker News 여러분! 저희는 Synnax(https://www.synnaxlabs.com)의 공동 창업자인 Emiliano, Elham, Patrick입니다. Synnax를 통해 엔지니어들은 센서 및 액추에이터(actuators)에 연결하고, 제어 및 후처리(post-processing)를 위한 텔레메트리(telemetry)를 스트리밍하며, 분석을 위해 과거 데이터를 쿼리(query)할 수 있습니다. 하드웨어 팀들은 로켓 엔진 점화부터 제조 라인 운영에 이르기까지 다양한 분야에서 저희 플랫폼을 사용합니다. 여기 영상이 있습니다:
하드웨어 팀의 소프트웨어 개발자들은 보통 자신들의 커스텀 소프트웨어를 구축할 인프라를 갖추고 있지 않습니다. 그들은 데이터를 단일 데이터베이스에 넣기 위해 수십 개의 데이터 획득(data acquisition) 장치와 작업해야 합니다. 종종 서로 다른 장치들과 통신하기 위해 여러 가지 다른 솔루션을 사용해야 합니다. National Instruments 하드웨어용 LabVIEW, 로보틱스용 ROS, 그리고 PLC를 위한 SCADA 소프트웨어가 그것입니다.
이 모든 장치들을 함께 조정할 수 있는 좋은 "접착제(glue)"가 없습니다. 개발자들은 스트리밍을 위해 Apache Kafka를, 저장(storage)을 위해 InfluxDB와 같은 도구들을 결국 사용하게 되지만, 이러한 도구들은 하드웨어와 연동하여 작동시키기가 어렵고, 또한 하드웨어 제어를 위해 명령이 전송될 때마다 데이터를 기록하고 스트리밍하도록 이 도구들을 설정하는 것도 매우 번거로운 일입니다.
이로 인해 개발자들은 하드웨어 장치로부터 데이터를 가져오기 위한 어댑터(adapters)를 반복적으로 구축해야 하며, 실시간 스트리밍, 데이터 저장, 하드웨어 제어를 위한 별도의 시스템들을 관리해야만 합니다.
저(Emiliano)는 항공우주 기업에서 테스트 엔지니어로 근무하며 이 문제를 발견했습니다. 저희는 데이터를 거대한 10GB 크기의 CSV 또는 TDMS 파일로 내뱉는 오래된 제어 소프트웨어를 사용했습니다. 밤낮으로 긴 테스트를 마친 후, 그 누구도 데이터를 검토하기 위해 그 모든 작업을 수행하고 싶어 하지 않았습니다.
어느 날, 제가 시스템을 작동시키고 있었는데 매우 값비싼 부품이 고장 났고, 이로 인해 수백만 달러 가치의 테스트 스탠드(test stand)가 폭발했습니다. 며칠간의 데이터 검토 끝에, 저희는 부품 결함을 나타내는 작은 이상 징후(anomaly)를 찾아낼 수 있었습니다.
그 후 저는 이 문제에 매료되었고, 그들의 데이터 파이프라인 (data pipeline)을 개선하기 위해 소프트웨어 엔지니어링 (software engineering) 역할로 옮겼습니다. 이 직장을 떠나 학교로 돌아간 후에는, 수업을 빠져가며 Synnax를 만드는 데 대부분의 시간을 보냈고, 결국 Patrick과 Elham을 만났습니다.
Synnax는 몇 가지 주요 부분으로 구성되어 있습니다. 저희는 수평적 확장성 (horizontally scalable)과 결함 허용 (fault-tolerant)을 고려하여 설계된 커스텀 시계열 데이터베이스 (time series-database)를 보유하고 있습니다. 이 데이터베이스는 OS 또는 컨테이너 (container)에 배포될 수 있습니다. 모든 센서 (sensor)와 액추에이터 (actuator)는 하나의 "채널 (channel)"에 포함될 수 있으며, C++, Python, TypeScript용 클라이언트 라이브러리 (client libraries)를 사용하여 데이터를 기록할 수 있습니다.
채널에 데이터를 기록할 때, 서버는 데이터를 데이터베이스에 영구 저장 (persist)하는 동시에 GUI, 자동화된 후처리 도구 (automated post-processing tools), 감독 제어 시퀀스 (supervisory control sequences)와 같은 모든 유형의 서비스에서 실시간으로 소비할 수 있도록 스트리밍 (stream)합니다.
마지막으로, 저희는 GUI 제작, 시각화 및 제어 데스크톱 애플리케이션 제작 과정을 단순화하는 React 컴포넌트 라이브러리 (React component library)를 구축했으며, National Instruments 하드웨어 및 OPC UA를 통한 PLC (Programmable Logic Controller)를 위한 사전 구축된 장치 통합 (pre-built device integrations) 기능도 제공합니다.
저희는 Synnax가 ROS, LabVIEW, SCADA 소프트웨어와 같은 기존 솔루션과 Apache Kafka 또는 InfluxDB와 같은 범용 도구 (general purpose tools) 사이의 가교 역할을 제공한다는 점에서 독보적이라고 생각합니다.
Synnax는 BSL 1.1 라이선스 하에 소스 공개 (source-available) 상태입니다 (GitHub: https://github.com/synnaxlabs/synnax, 문서: https://docs.synnaxlabs.com). 소프트웨어 사용은 최대 50개 채널까지 무료입니다. 저희는 아직 어떤 가격 정책을 확정할지 결정하지 못했습니다. 사용량 기반 (usage-based) 구현만 할지, 아니면 구현 비용을 추가할지에 대해 논의 중입니다.
이 내용이 흥미로우시다면, 저희를 확인해 주세요! 저희 문서 웹사이트(https://docs.synnaxlabs.com)를 통해 데이터베이스를 배포하고 데스크톱 시각화 대시보드 (desktop visualization dashboard)를 다운로드할 수 있습니다.
여러분의 피드백을 정말 듣고 싶으며, 모든 댓글을 기다리고 있겠습니다!
AI 자동 생성 콘텐츠
본 콘텐츠는 HN Show HN (AI)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기