DataNexus · Data × AI

Building the DataNexus.

An ontology-native data agent.
Connecting semantic layers, graph inference, and agent systems to build a trustworthy analytics platform.

With ontology, building trustworthy analytics.

Building an LLM-based BI Agent exposed the real limits of NL2SQL — that process led to the conviction that ontology is the answer, and the start of DataNexus.

AI coding usage — cumulative tokens and cost across Claude Code, Codex, Gemini

The journey of building DataNexus, an ontology-based data agent platform

DataNexus Architecture: Four Layers and Two Flows

This post maps the path from a natural-language query to the final response, showing which components run and in what order. It is the starting point of the series; the rationale behind each component choice and the experiments along the way are covered in the posts that follow. Why routing architecture instead of a single NL2SQL pipeline When NL2SQL is first applied to a real enterprise environment, the same problem usually appears. DDL alone does not let the LLM infer what a table named T_CUST_MST actually means, or what calculation logic “net revenue” refers to in this organization. Benchmark scores keep climbing, yet reports from real enterprise deployments still show accuracy falling below 50%. The same category of errors does not disappear just by swapping datasets. ...

April 25, 2026 · 5 min · Junho Lee

12. Racing Three Coding Agents in Isolated Git Worktrees

I build DataNexus with several coding agents running at once. Claude Code fixes router logic while Codex fills in test coverage. The workspace was the problem. With one checkout and multiple terminals, agents step on each other’s files. One reinstalls dependencies while another’s build breaks mid-run. I juggled stashes for a while, then gave up and ran them one at a time. Agents I added for parallelism were running serially. ...

July 11, 2026 · 4 min · Junho Lee

11. Designing Chat UIs for Uncertain AI Answers

In the previous ten posts, I analyzed the most common SQL generation errors. I used BIRD and Spider benchmarks, tested several models, and grouped wrong answers into types such as COLUMN_BINDING, VALUE_BINDING, and DERIVED_METRIC. As I kept looking at those SQL errors, I realized I wanted to check something different. “So how should generated SQL and supporting context appear in the UI?” I had been focused on accuracy and had missed what users actually need from the interface. In a workplace data analysis tool, the UI has to make it clear where numbers come from. Without traceable context, users end up re-running the SQL even when the result looks correct. ...

May 23, 2026 · 21 min · Junho Lee

10. Spider 72%: The Dataset, Not the Model, Shapes the Error Profile

Three multi-candidate experiments from post 9 produced no meaningful improvement. Before moving on to the Schema Binding Plan, I wanted to test one more hypothesis: model tier as the bottleneck. I expected Gemini Pro to improve the current 56% accuracy baseline over flash-lite. I also ran the error-type classification and Spider experiment as part of that test. Switching to Pro Made Things Worse Prompts, context, and pipeline stayed the same. Only the model changed, and the same 50 BIRD questions ran against it. The metric is EX (Execution Accuracy): whether the generated SQL produces the correct result when executed against the database. ...

April 24, 2026 · 7 min · Junho Lee

9. BIRD 56%: Nine Experiments and What Got Ruled Out

I hit 80% on my own 30-question benchmark, but only 56% on BIRD Mini-Dev’s 50 public questions. Nine experiments later, I had ruled out the multi-candidate hypothesis from three different angles. What’s left is schema understanding and methodology.

April 19, 2026 · 6 min · Junho Lee

Design guides for data warehouse modeling

4. Super-Sub Types — Can a Customer Be Both Individual and Corporate?

Super-sub types clarify business classifications at the logical model level. When converting to a physical model, three options emerge — and in a DW, that choice reshapes the entire dimension design.

February 22, 2026 · 4 min · Junho Lee

3. ERD Notation — Same Diagram, Different Interpretation

Same Crow’s Foot, different meaning. A single dashed line means different things in different tools. If you want models to serve as a shared language on your project, start by aligning on notation.

February 21, 2026 · 4 min · Junho Lee

2. OLTP vs DW Models — Different Purpose, Different Design

Even when the ERDs look similar, the design philosophies are completely different. OLTP is about transactional integrity; DW is about analytical access paths. That difference creates unfamiliar things like Unknown records and point-in-time data.

February 20, 2026 · 6 min · Junho Lee

1. Is Kimball Still Relevant in the Cloud DW Era?

How DW modeling considerations have shifted with Synapse, BigQuery, and Redshift. Kimball, Data Vault, One Big Table — practical criteria for choosing the right approach.

February 19, 2026 · 6 min · Junho Lee

Design guides for ETL/ELT pipeline architecture

4. SCD - When a Customer Moves, Where Were Past Orders Shipped?

When dimension data changes, do you overwrite history or preserve it? We implement SCD Type 1, 2, and 3 differences in SQL, then build a production pattern with dbt snapshot.

February 22, 2026 · 10 min · Junho Lee

3. Silver Layer - Promoting Bronze to an Analysis-Ready State

Cleanse and standardize the raw data stacked in Bronze. Fix types, unify column names, remove duplicates. We define this process as SQL models in dbt.

February 22, 2026 · 6 min · Junho Lee

2. Bronze Layer - Load the Source Data Exactly As-Is

There are two ways to load data into Bronze. Overwrite everything, or bring only what changed. Which one you choose completely changes the complexity of your pipeline.

February 22, 2026 · 6 min · Junho Lee

1. Medallion Architecture - Why We Stack Data in Three Layers

Bronze, Silver, Gold. What changes when you load data into separate layers. We build it hands-on with DuckDB and dbt.

February 22, 2026 · 5 min · Junho Lee

Generative Engine Optimization — technical strategies for creating content that AI engines cite

5. AEO - Why Coding Agents Read Documentation Differently

If GEO optimizes for consumer AI, AEO optimizes for coding agents. This article covers document length constraints, llms.txt, skill.md, and AGENTS.md — the files that matter.

April 17, 2026 · 6 min · Junho Lee

4. Off-Site GEO - How to Win Over AI That Ignores Your Official Site

Even with perfect On-Site GEO, half of AI citations come from external channels. We cover platform-specific Off-Site strategies and how to diagnose your robots.txt setup.

April 4, 2026 · 7 min · Junho Lee

3. On-Site GEO Technical Architecture - From Product DB to JSON-LD

How product master DB data flows through a 3-stage pipeline to become JSON-LD in your HTML . Covers the pipeline architecture and SSR-based automated deployment.

April 1, 2026 · 8 min · Junho Lee

2. Each AI Cites Different Sources

ChatGPT favors Wikipedia, Perplexity leans on Reddit, and Gemini prefers official websites. Covering all AI platforms with a single strategy is impossible.

March 29, 2026 · 7 min · Junho Lee

1. What Is GEO - AI Citation Strategy Beyond SEO

Only 9% of Google’s top 10 pages are cited by AI. In an era where SEO rankings no longer guarantee AI citations, we break down the three core principles of GEO and their academic foundations.

March 26, 2026 · 6 min · Junho Lee