Justin Kim의 개인 블로그. 뉴로-심볼릭 AI, 온톨로지, Datalog, RDF, GStreamer 등 연구 노트와 기술 에세이.

온톨로지란? 개념과 실습 글 모아보기

About the author and editorial principles
  • 시간이 흐르면 사실도 변한다: RDF Reification으로 맥락 기록하기

    RDF 트리플은 '누가 무엇이다'만 말할 수 있을 뿐, '언제부터 언제까지'라는 맥락을 담지 못합니다. Reification을 통해 트리플 자체를 자원으로 만들어 시간과 출처 같은 메타데이터를 부여하는 방법을 알아봅니다.


  • Apache Arrow를 Timely Dataflow에 적용하기 위한 계획

    이전 글에서 Timely Dataflow를 위한 전송 프로토콜을 왜 새로 설계해야 하는지, 그리고 5개 레이어 구조의 밑그림을 그렸습니다. 이번 글에서는 그 설계의 한 축이 될 수 있는 Apache Arrow를 살펴보고, 구체적으로 어디에 어떻게 적용할 수 있을지 계획을 세워봅니다. Apache Arrow란 무엇인가 Apache Arrow[1]는 언어 중립적인 컬럼 기반 인메모리 데이터 포맷입니다. 핵심...


  • Timely Dataflow를 위한 전송 프로토콜은 왜 새로 필요한가

    Differential Dataflow는 데이터의 변화를 차이(Difference)의 축적으로 표현하고, 변경분만 전파하여 증분 계산을 수행합니다. 이 증분 계산이 단일 머신에서 동작할 때는 공유 메모리를 통해 워커(Worker) 간 데이터를 교환하면 됩니다. 하지만 데이터가 수십억 건으로 늘어나고, 워커를 수십 대의 머신에 분산 배치해야 하는 시점이 오면, 네트워크가 개입합니다. 델타 (data, time, diff) 튜플이 머신 경계를...


  • Datalog의 증분 계산

    Datalog는 사실(Facts)과 규칙(Rules)으로부터 새로운 지식을 연역해내는 논리 프로그래밍 언어입니다. 간결한 재귀 규칙 몇 줄로 소셜 네트워크의 도달가능성을 분석하거나, 지식 그래프 위에서 복잡한 추론을 수행할 수 있습니다. 하지만 Datalog를 실제 시스템에 적용하려면, “데이터가 변하면 어떻게 하는가”라는 문제를 피할 수 없습니다. 쇼핑몰의 추천 시스템을 예로 들면, 고객이 새 상품을 하나 구매할 때마다...


  • Memory-safe in C: Claude Code와 함께라면

    이전 글에서 C 언어의 메모리 관리 문제와 GLib의 자동 정리 매크로를 통한 해법을 다루었습니다. 그때의 결론은 “우리는 답을 찾을 것이다. 늘 그랬듯이.”였죠. 그로부터 2년이 지난 지금, 코드를 작성하는 방식 자체가 달라지고 있습니다. AI 코딩 어시스턴트가 일상의 도구가 된 시대에, 한 가지 질문이 떠올랐습니다: C가 그렇게 위험할까? Claude Code와 함께 코딩한다면,...