Hybrid mumps Clarifications

15 views
Skip to first unread message

rafi farchi

unread,
2:18 PM (5 hours ago) 2:18 PM
to Hardhats
Hi Sam, Hi Chris,

Thanks for pointing out Octo and mgsql. Both are interesting projects, but I think there is a fundamental misunderstanding regarding what we are building here.

You are talking about creating or simulating a native SQL engine *on top* of M/YottaDB globals. **We are doing the exact opposite.**

We don't want to force M to become a relational database. Instead, we are keeping our business logic entirely in pure, ultra-fast M code, but we have built a high-performance, low-level hybrid gateway (using YottaDB's Simple API and C) that opens a direct pipe from M into a real, enterprise-grade relational database (**PostgreSQL**).

Here is why this architecture is a game-changer compared to solutions like Octo or IRIS's native SQL:

1. **True Best-of-Both-Worlds:** We execute advanced M logic where M shines (hierarchical data, speed, string manipulation), but whenever we need complex relational querying, reporting, or third-party integrations, we offload it natively to PostgreSQL.
2. **Zero Overhead Chunks Handling:** Our gateway bypasses heavy text wrapping. When M queries Postgres, the rows are packed directly into memory blocks (Chunks) of up to 32K and injected directly into the M Symbol Table via C. The M code iterates through these chunks with zero parsing overhead.
3. **No Compromises on SQL Power:** Engines built on top of M always suffer from limited SQL compliance or slow complex joins. By piping directly to PostgreSQL, we get full ACID compliance, advanced indexing, JSONB support, and mature optimization out of the box, controlled seamlessly from an M prompt.

We aren't trying to query M globals using SQL. We are empowering M routines to control and query full relational datasets dynamically as part of their native execution.
Reply all
Reply to author
Forward
0 new messages