# Datapace > Datapace gives database teams one tool to understand, run, and govern their databases across engines, and AI agents that improve their database workflows. It builds a single graph documenting entities, relationships, and their semantics, plus the infrastructure around each database (instance class, storage, cost, performance, usage, freshness). Its agents use that graph to propose cost optimization, performance, migration, and documentation work that the team reviews and approves. Engine-agnostic: Postgres, SQL Server, Oracle, DB2, MySQL, MongoDB and more. Datapace is built for database teams (DBAs, platform engineers, data engineers) at mid-size and large companies that run several engines, often with legacy or acquired estates, and for the managed-service providers that run databases for many such clients. A database is connected with scoped, read-only access agreed with the team. Datapace reads schema metadata, workload signals, and sample structures, infers entities, measures, relationships, and lineage with a confidence score on each, and the team's experts confirm the model in a few working sessions. The result is living documentation that people and AI systems can trust: BI, agents, and MCP clients reach production data through governed context rather than raw access. Catalogs describe; Datapace governs. The blog covers database context for AI agents, schema semantics, guardrails and audit, migration evidence, cost and usage, and Postgres internals. ## Product - [Datapace](https://datapace.ai): Product overview: one tool for database teams to understand, run, and govern databases across engines, with AI agents that propose cost, performance, migration, and documentation work. - [Book a call](https://datapace.ai/book-a-call): Talk to the founders and see what Datapace reads on your own schema. - [Blog](https://datapace.ai/blog): Articles on database context for AI agents, schema semantics, guardrails and audit, cost and usage, and Postgres internals. - [Docs](https://datapace.ai/docs): How Datapace works: the graph, infer and confirm, the agents, policy, approval and audit, governed context. Each page is also served as Markdown with a .md suffix. ## Docs - [Getting started: Introduction](https://datapace.ai/docs/getting-started/introduction.md): What Datapace is, who it is for, and what these docs cover: one graph of what your databases mean and what runs them, agents that propose, your team approving. - [Getting started: How it works](https://datapace.ai/docs/getting-started/how-it-works.md): The Datapace loop in five steps: connect within an agreed scope, infer, confirm with your experts, agents propose, your team approves and records. - [Getting started: Docs for LLMs](https://datapace.ai/docs/getting-started/docs-for-llms.md): Machine-readable exports of these docs: a Markdown twin of every page, the site index at llms.txt, and the Copy page button, for agents and retrieval. - [Concepts: The graph](https://datapace.ai/docs/concepts/the-graph.md): One graph per estate: what each database means (entities, measures, relationships, lineage) and what runs it (instance class, storage, cost, usage, freshness). - [Concepts: Infer and confirm](https://datapace.ai/docs/concepts/infer-and-confirm.md): What Datapace reads, what it infers with a confidence score, inferred versus validated, and how a few working sessions turn proposals into a confirmed model. - [Concepts: Agents](https://datapace.ai/docs/concepts/agents.md): The five Datapace agents (FinOps, Performance, Quality, Migration, Documentation), what each proposes on the graph, what a proposal contains, who approves. - [Concepts: Policy, approval, and audit](https://datapace.ai/docs/concepts/policy-approval-audit.md): Every action goes through policy, the risky ones wait for a person, and all of it lands in one audit ledger: who, what, where, evidence, approver, outcome. - [Concepts: Governed context](https://datapace.ai/docs/concepts/governed-context.md): How copilots, BI, and MCP clients reach production data through the confirmed graph and its gate instead of raw access, and what travels with each column. - [Concepts: Across engines](https://datapace.ai/docs/concepts/across-engines.md): Datapace is engine-agnostic by design. The signals it reads differ per engine; the graph, the agents, the policy, and the ledger are the same for all. - [Guides: Documenting an estate](https://datapace.ai/docs/guides/documenting-an-estate.md): How a team takes an inherited estate to a confirmed graph: agree the scope, run the first inference, hold the confirmation sessions, keep the model current. - [Guides: Reviewing a proposal](https://datapace.ai/docs/guides/reviewing-a-proposal.md): How to read a proposal from a Datapace agent: the change, the evidence, the affected objects, the risk, and what approving or rejecting records. - [Guides: Migration mapping](https://datapace.ai/docs/guides/migration-mapping.md): From legacy discovery to a validated mapping: map the source, let the Migration agent propose candidates, have experts validate, find problems before load. - [Reference: Glossary](https://datapace.ai/docs/reference/glossary.md): The vocabulary these docs use, one definition each: graph, entity, measure, lineage, confidence score, proposal, evidence, approval, ledger, governed context. - [Reference: Frequently asked questions](https://datapace.ai/docs/reference/faq.md): The questions teams ask first: does anything run on its own, does Datapace move data, who validates, does it replace a catalog, what about compliance. ## Use cases - [Estate documentation](https://datapace.ai/use-cases/estate-documentation): One validated map of an undocumented database estate: meaning, relationships, lineage, plus usage, quality, and cost signals, for your teams and your AI. - [ERP data migration](https://datapace.ai/use-cases/erp-data-migration): Map legacy data into a new ERP, engine, or cloud faster: Datapace resolves what the source means, proposes mappings, and your domain experts validate. - [Migration to Odoo](https://datapace.ai/use-cases/erp-migration-odoo): Migrate legacy data into Odoo with validated mappings: one res.partner for customers and vendors, product templates and variants, sale orders, account moves. - [Migration to Dynamics 365](https://datapace.ai/use-cases/erp-migration-dynamics-365): Migrate legacy data into Dynamics 365 Business Central with validated mappings: customers, vendors, items, sales documents, G/L accounts, dimensions. - [PeopleSoft to Workday Financials](https://datapace.ai/use-cases/peoplesoft-to-workday-migration): Move PeopleSoft Financials to Workday with a validated crosswalk: ChartFields to worktags, vendors to suppliers, vouchers to invoices, ledger history. - [Database cost management and FinOps](https://datapace.ai/use-cases/cost-optimization): Database cost with evidence: instance class, storage, usage, and freshness on one graph, FinOps proposals for right-sizing and cleanup, approved by your team. - [Database performance](https://datapace.ai/use-cases/database-performance): Database performance with evidence: slow queries with their workload signals, index and rewrite proposals, regressions tied to their cause, team approved. - [Databricks Genie and data pipelines](https://datapace.ai/use-cases/databricks-genie-data-pipelines): Feed Databricks from governed operational data: the confirmed graph is the semantic layer your lakehouse pipeline and Genie spaces use, drafted and reviewed. - [PII data management](https://datapace.ai/use-cases/pii-data-management): PII across your databases: personal data inferred per column with a confidence score, confirmed by experts, carried through lineage, enforced on what AI sees. - [Audit trail](https://datapace.ai/use-cases/audit-trail): An audit trail for databases and the AI agents that touch them: every proposal, approval, execution, and verification recorded, to show what touched production. - [Security](https://datapace.ai/use-cases/security): Secure how people and AI agents work on production databases: policy on every action, approval on risky ones, governed context over MCP instead of raw access. ## Comparisons - [pganalyze alternative: guardrails for AI agents](https://datapace.ai/compare/pganalyze-alternative): pganalyze tells you what is slow. Datapace controls what AI agents may do to production, with policy, approval, and a complete audit log. - [Xata Agent alternative: governed database changes](https://datapace.ai/compare/xata-agent): Xata Agent is an open-source Postgres monitoring assistant that suggests fixes. Datapace gates, audits, and reviews agent actions on live databases. - [Datadog Bits AI alternative: no APM required](https://datapace.ai/compare/datadog-bits-ai): Bits AI runs on exported Datadog telemetry. Datapace adds policy, approval, and audit to AI agents on the database itself. How the two compare. ## Blog - [AIUC-1 certification vs runtime enforcement for AI agents](https://datapace.ai/blog/aiuc-1-certification-vs-runtime-enforcement): AIUC-1 tests an agent against up to 5,000 scenarios and issues a one-year certificate. Runtime enforcement decides each tool call. The standard asks for both. - [What is Agents Schema? The spec behind Fivetran Context Layer](https://datapace.ai/blog/what-is-agents-schema): Agents Schema is the open warehouse schema for agent context behind Fivetran Context Layer, launched at dbt Summit 2026. We read the spec: one registry table, and agent instructions delivered as rows. - [Cockroach Continuum bets agents multiply databases, not load](https://datapace.ai/blog/cockroach-continuum-agents-multiply-databases): Cockroach Labs launched Continuum, pooling thousands of virtual clusters on shared hosts. The bet: agents multiply databases faster than load. - [Mem0 Gateway separates connecting a tool from granting it](https://datapace.ai/blog/mem0-gateway-connect-vs-grant): Mem0 Gateway puts per-agent tool grants behind one key and splits connecting a tool from granting it. Why that matters to everyone building on agents. - [Data valorization: a working definition for data teams](https://datapace.ai/blog/data-valorization-working-definition): Data valorization defined as work, not outcomes: an operational definition for data teams, plus a Postgres audit of how much of your estate produces no value. - [LLMjacking: the cloud intrusion that wanted GPU quota](https://datapace.ai/blog/llmjacking-gpu-quota): Google documented an intrusion whose objective was AI capacity. It entered on a leaked token and left with a GPU quota increase, never meeting a model control. - [DUSTMAKER: valid SLSA attestations on malicious packages](https://datapace.ai/blog/dustmaker-slsa-attestations): Google documented malware that steals OIDC tokens from CI runners and publishes backdoored packages under a real publisher identity. The signature verifies. - [Odoo data migration: the target model is the hard part](https://datapace.ai/blog/odoo-data-migration-target-model): Odoo's upgrade service does not cover moving another ERP into Odoo. That job is a semantic transformation into a model that enforces its own opinions. - [AI schema migration: the rewrite hidden in a DEFAULT](https://datapace.ai/blog/ai-schema-migration-hidden-rewrite): Two ALTER TABLE statements one word apart took 16 ms and 14.3 seconds on the same table. Measured on Postgres 16, and why an agent cannot tell them apart. - [LLM schema matching: why constraints beat a bigger model](https://datapace.ai/blog/llm-schema-matching-constraints): LLM-only schema matching produces fluent but invalid mappings. New research shows schema constraints, not bigger models, deliver the accuracy lift. - [Claude Code token usage: what Spotify's 90% cut proves](https://datapace.ai/blog/claude-code-token-usage-context-routing): Spotify cut Claude Code token usage 90 percent with two hooks and a cheap worker model. The pattern, routing tool output out of context, goes well beyond files. - [CVE-2026-85664: Chroma's unbounded HNSW index parameters](https://datapace.ai/blog/chroma-cve-2026-85664-unbounded-hnsw): A collection-create request could size Chroma's HNSW index without limits and exhaust server memory. Postgres closed this failure class decades ago. - [dbt Core 2.0 changes the artifacts every catalog ingests](https://datapace.ai/blog/dbt-core-2-artifacts-metadata-contract): dbt Core 2.0 ships Parquet artifacts, a strict spec, and render-time lineage. Every catalog and lineage tool that parses manifest.json is affected. - [llms.txt security risks: what 6,214 scanned domains showed](https://datapace.ai/blog/llms-txt-security-risks): A researcher registered package names that Fortune 500 llms.txt files referenced but nobody owned. The first callback came in under four minutes. - [Postgres autoscaling: what it can and can't optimize](https://datapace.ai/blog/postgres-autoscaling-what-it-cant-optimize): The average Postgres database on Neon now resizes compute every 81 seconds. Autoscaling ends provisioning waste; query-level waste scales up and gets billed. - [OpenAI's Hugging Face incident was a covert storage channel](https://datapace.ai/blog/openai-hugging-face-incident-covert-channel): METR's investigation shows 1,200 isolated OpenAI agents coordinating a real intrusion through a shared package cache. The boundary that failed was storage. - [Chroma Fission: agent transactions that never roll back](https://datapace.ai/blog/chroma-fission-protocol-agent-transactions): Chroma's Foundation memory ships with Fission, a transaction protocol for agent swarms that treats every abort as an early commit. Who inherits the conflict? - [MCP servers write into your system prompt. Nobody logs it.](https://datapace.ai/blog/mcp-instructions-field-context-audit): MCP's instructions field lets any server add text to your agent's system prompt. A registry-scale probe finds it in routine use, and most clients hide it. - [AWS is buying DuckLabs. What happens to DuckDB?](https://datapace.ai/blog/aws-ducklabs-duckdb-acquisition): AWS is acquiring DuckLabs, the company behind DuckDB. Code and trademarks stay with an independent foundation under MIT. The maintainers' payroll moves. - [Supabase query performance: find, read, and fix slow queries](https://datapace.ai/blog/supabase-query-performance): Find slow queries in Supabase with pg_stat_statements, read EXPLAIN ANALYZE BUFFERS output, and fix the sequential scans that inflate your bill. - [AI agent security consolidation: five exits, one holdout](https://datapace.ai/blog/alice-activefence-agent-security-consolidation): Alice, formerly ActiveFence, raised $140M as the last scaled independent in AI agent security. Invariant, Protect AI, Lakera, and Portkey sold first. - [OpenMetadata 2.0 changed three defaults. None of them error.](https://datapace.ai/blog/openmetadata-2-0-upgrade-breaking-changes): OpenMetadata 2.0 went GA on August 24. The upgrade's real risk is the three changed defaults that never error: sampled profiling, dropped cardinality, MCP on. - [OpenAI hired the InstantDB team. Instant Cloud shuts down.](https://datapace.ai/blog/openai-instantdb-agent-state): OpenAI acqui-hired the team behind InstantDB, the open source real-time sync backend. Instant Cloud shuts down within a year, and agent state loses a vendor. - [ERP data migration: 55% deployed, 34% done, 16 months left](https://datapace.ai/blog/erp-data-migration-s4hana-2027): SAPinsider's 2026 benchmark puts 55% of SAP customers live on S/4HANA and only 34% finished. The gap is the data: the target model deleted the legacy tables. - [A quote in a table name minted bucket-wide cloud credentials](https://datapace.ai/blog/iceberg-rest-catalog-credential-vending-security): Three critical CVEs hit Apache Polaris credential vending in four months. When the catalog mints cloud credentials, table names become security policy. - [Google Governance Agent: warehouse-native active metadata](https://datapace.ai/blog/google-governance-agent-active-metadata): Google's Governance Agent propagates descriptions, policy tags, and trust scores through column-level lineage, free. What that leaves for catalogs. - [CLAUDE.md never shrinks. A 1,867-repo study shows why.](https://datapace.ai/blog/claude-md-catastrophic-remembering): Agentic memory files grow 226 percent and almost never shrink. A study of 247,694 instruction lifetimes explains why safe deletion costs O(2^n). - [pg_stat_statements eviction: why agent SQL disappears](https://datapace.ai/blog/ai-agents-pg-stat-statements-cardinality): AI agents mint more unique query shapes than pg_stat_statements can hold. Eviction is silent, and the tuning evidence disappears where agent traffic grows. - [Apache Ossie: standardize joins, or just measures?](https://datapace.ai/blog/apache-ossie-foundational-semantics-fight): Ossie's definitions were easy for 50 vendors to sign. A foundational semantics spec pins down joins and fan-out. A counter-proposal wants SQL with measures. - [Postgres 19: REPACK and plan advice, built for automation](https://datapace.ai/blog/postgres-19-repack-pg-plan-advice): PostgreSQL 19 Beta 3 is out and GA is close. REPACK brings online table rebuilds into core, and pg_plan_advice turns planner choices into reviewable text. - [OpenMetadata 2.0 rebrands the catalog as a context layer](https://datapace.ai/blog/openmetadata-context-layer-data-catalog): OpenMetadata's 2.0 line ships memories, MCP, and a knowledge graph, and now calls itself the open context layer. What the rebrand says about the category. - [Databricks Lakebase: the governance layer came bundled](https://datapace.ai/blog/databricks-lakebase-agent-database-governance): Databricks raised $5B at $190B and Lakebase, its Postgres for AI agents, crossed a $100M run-rate. The governance layer came bundled with the database. - [Your agent's approval was valid. By commit time, it wasn't.](https://datapace.ai/blog/stale-authorization-ai-agents-database): Agent guardrails check permissions at request time. Two 2026 papers show the check can be false by commit time. Databases have owned this race for decades. - [Can multiple AI agents safely share one memory store?](https://datapace.ai/blog/shared-agent-memory-access-control): Multiple AI agents sharing one memory store is becoming the default. A retrieval-time filter cannot secure it: derived and revoked memories leak around it. - [Datapace and Soft Industry Alliance go to market together](https://datapace.ai/blog/datapace-soft-industry-alliance-partnership): Datapace signs its first partner in Eastern Europe: Soft Industry Alliance, technology partner to manufacturing, supply chain, and retail companies. - [Can an LLM replace a DBA? What two new benchmarks found](https://datapace.ai/blog/autonomous-dba-curse-of-specialization): Two new studies score LLM agents on the full DBA job. Agents managed a 12.4 percent safe pass rate on production-fidelity scenarios; a human hit 93.4. - [MCP added a cache. Now one server can poison every user.](https://datapace.ai/blog/mcp-cache-poisoning-prompt-injection): Two unpatched MCP flaws chain into one attack: poisoned instructions marked public-cacheable, cached once, then re-served to every user behind a shared gateway. - [pgrust passed every Postgres test. Tests are not the spec.](https://datapace.ai/blog/pgrust-tests-are-not-the-spec): An AI-coded Postgres rewrite passed all 46,066 regression tests. A fuzzer broke it within days. What each layer of Postgres-compatible actually proves. - [Neon backend GA: what a branch forks, and what it can't copy](https://datapace.ai/blog/neon-object-storage-branch-fork): Neon's backend is GA: Postgres, Object Storage, Functions, Managed Better Auth and AI Gateway fork together under one branch_id. What no fork can carry. - [Supabase agent write access after Perplexity Computer](https://datapace.ai/blog/supabase-perplexity-computer-agent-write-access): Supabase is now a Perplexity Computer connector: hosted agents read and write production Postgres across runs. A year ago the advice was read-only. - [Google's approval-gated database agent: gated on what?](https://datapace.ai/blog/google-database-observability-agent-approval-gate): Google's database agent finds root cause in minutes and executes fixes with your approval. That approval is now the trust boundary. Is the screen a real gate? - [Ephemeral credentials for AI agents in Postgres](https://datapace.ai/blog/ephemeral-credentials-ai-agents-postgres): How to give each AI agent its own Postgres identity: ephemeral credentials via a template role, session lifetime traps, audit attribution, and pooler pitfalls. - [EU AI Act logging requirements for AI agents: Article 12](https://datapace.ai/blog/eu-ai-act-ai-agent-logging-requirements): Article 12 requires high-risk AI systems to log events automatically. What the text demands, what it leaves open, and how a database audit trail answers it. - [What is Apache Ossie? What it standardizes and what it leaves out](https://datapace.ai/blog/what-is-apache-ossie): What is Apache Ossie? Open Semantic Interchange, renamed on entering the Apache Incubator in July 2026. What the spec carries, what it leaves out, and why. - [Memory Layer vs Context Layer: Perfect Recall, Wrong Answer](https://datapace.ai/blog/memory-layer-vs-context-layer-ai-agents): Mem0, Zep and Letta store what your agent experienced. None of them knows which revenue column is canonical. Where memory ends and a context layer begins. - [Mem0 vs Zep vs Letta vs LangMem vs Cognee, benchmarked](https://datapace.ai/blog/ai-agent-memory-tools-2026): We ran Mem0, Zep, Letta, LangMem and Cognee through four measurable gates and our own benchmark. The pick follows from the memory type your agent needs. - [Living documentation: why resilient teams keep docs current](https://datapace.ai/blog/up-to-date-documentation-organizational-resilience): Why outdated documentation slows incident recovery, what living documentation means, and how to keep documentation up to date without discipline. - [How to give an AI agent safe access to a production database](https://datapace.ai/blog/safe-ai-agent-access-production-database): The two-layer setup for safe AI agent access to production databases, with measured blast-radius numbers and a gated path for schema migrations. - [What Is a Context Layer for AI Agents? The 2026 Guide](https://datapace.ai/blog/what-is-agent-context-layer): A context layer gives AI agents what's there, what it means, and how it connects. The definition, components, and differences from memory and semantic layers. - [AI agent database access policy: template and six clauses](https://datapace.ai/blog/production-database-access-policy-ai-agents): The six clauses a database access policy needs once AI agents hold credentials, with a copy-paste template and the Postgres commands that enforce it. - [OLTP vs OLAP vs HTAP: the difference, measured](https://datapace.ai/blog/oltp-vs-olap-vs-htap-measured): OLTP, OLAP and HTAP measured on the same 50 million rows: a 46x columnar aggregation win, and co-location pushing the worst write from 38 ms to 332 ms. - [LTAP vs HTAP: what Databricks actually changed](https://datapace.ai/blog/ltap-vs-htap): Databricks coined LTAP in June 2026 and declared HTAP a failure. What actually changed: the row-to-column copy moved from the engine into the storage layer. - [How to give an AI agent context on your Postgres schema](https://datapace.ai/blog/build-context-layer-postgres-runbook): A runbook for giving AI agents schema context: introspect the Postgres catalogs, harvest COMMENT metadata, map foreign keys, and assemble one context document. - [Source-to-target mapping: what the document must include](https://datapace.ai/blog/source-to-target-mapping-document-data-migration): The field pairs are the smallest part of a source-to-target mapping. What the document must also carry to survive an ERP migration through to go-live. - [How to reverse engineer an undocumented database schema](https://datapace.ai/blog/reverse-engineer-undocumented-database-schema): A working method to reverse engineer an undocumented database schema: inventory tables, recover missing relationships, decode columns, validate the map. - [Which column is the source of truth for a metric?](https://datapace.ai/blog/multiple-columns-same-metric-source-of-truth): How to find the source of truth when a database has duplicate columns like amount, total_amount, and revenue_net: trace writes, trace reads, reconcile. - [ERP Data Migration: Mapping Legacy Databases Faster](https://datapace.ai/blog/erp-data-migration-data-reprise): Legacy data mapping is where ERP projects slip after go-live. Why semantic discovery plus expert-validated mappings is a faster loop than mapping from scratch. - [AWS Performance Insights deprecated: the CloudWatch move](https://datapace.ai/blog/aws-performance-insights-deprecated-migration-guide): AWS Performance Insights is deprecated: the console is gone, the API survives, and AWS defaulted your fleet to Database Insights Standard. What to check now. - [Agentjacking: why agent security gateways matter](https://datapace.ai/blog/agentjacking-mcp-agent-security-gateway): Agentjacking proves coding agents can be hijacked via MCP in 85% of attempts. Here is what it means for agent security gateway design in 2026. - [What is an AI agent security gateway, and what must it do?](https://datapace.ai/blog/ai-agent-security-gateway-table-stakes-2026): What an AI agent security gateway is, the threat model behind it, the controls it must enforce at the MCP and execution layer, and how to evaluate one. - [AI agent memory layer: architectures and what breaks](https://datapace.ai/blog/ai-agent-memory-layer-architecture-guide-2026): AI agent memory layer guide: the four memory types, three production architectures, and the retrieval and governance problems that surface at fleet scale. - [Replit's AI deleted a production database. What stops that?](https://datapace.ai/blog/replit-database-deletion-control-plane): A factual breakdown of the July 2025 Replit AI database deletion, and the control-plane checks that would have stopped each link in the failure chain. - [Read-only access will not make your AI agent safe](https://datapace.ai/blog/read-only-isnt-enough-guardrails-ai-agents-database): Read-only blocks the fixes agents exist to make, and prompt guardrails leak. Classify every statement in the data path, gate risky writes, and log it all. - [Human-in-the-loop database migrations for agents](https://datapace.ai/blog/human-in-the-loop-database-migrations): Most human-in-the-loop advice stops at approve database changes. How to render, gate, route, and record a pending migration before an agent runs it. - [AI governance audit trail: an immutable ledger architecture for agents](https://datapace.ai/blog/audit-trails-ai-coding-agents-immutable-ledger): How an AI governance audit trail works as an immutable ledger: why tool-call logs cannot reconstruct what an agent changed, and what the ledger records. - [Railway's two migration outages, one CI check](https://datapace.ai/blog/railway-two-migration-outages): Railway had two Postgres migration outages in six weeks. Same cascade, different trigger. A close reading of both post-mortems and the one pre- merge check. - [Time-series anomaly detection fails on Postgres](https://datapace.ai/blog/tsad-on-postgres-metrics): Yahoo S5, NAB, and UCR shaped the TSAD literature. Postgres metrics do not look like those benchmarks, and methods that score well on them alert poorly. - [Self-driving databases in 2026: progress vs hype](https://datapace.ai/blog/self-driving-db-2026): The 2017 self-driving DBMS vision promised autonomous tuning, indexing, and healing. What actually shipped by 2026, and where a human still signs off. - [lock_timeout best practices: what it catches and misses](https://datapace.ai/blog/pr-time-vs-lock-timeout): lock_timeout is necessary for safe Postgres migrations and not sufficient. What a pre-merge migration check adds, and what only the timeout catches. - [Why staging did not catch your slow migration](https://datapace.ai/blog/postgres-staging-gap): A migration tested on 10,000 staging rows locked 84 million production rows for four hours. Staging is a biased sample, and the bias grows with scale. - [Why does ALTER TABLE block SELECT in Postgres?](https://datapace.ai/blog/postgres-lock-queue-fairness): A SELECT issued during an ALTER TABLE waits even when locks are compatible. Why Postgres queues reads behind DDL, with pg_locks proof and the fixes. - [auto_explain vs pg_stat_statements in production](https://datapace.ai/blog/pgstat-vs-autoexplain): The two Postgres diagnostic extensions are complementary, not competitors. When each lies, how to join them via queryid, and the minimum production setup. - [Online DDL: pgroll vs pg-osc vs pg_karnak vs gh-ost](https://datapace.ai/blog/online-ddl-face-off): Four online DDL tools, four architectures: versioned views, shadow tables, 2PC, and binlog streaming. A neutral comparison with failure modes named. - [Who reviews your schema changes now that the DBA is gone](https://datapace.ai/blog/dba-extinction): Between 2015 and 2025 the DBA role dissolved at mid-size SaaS. Capacity, backups, and tuning found new owners. The judgment about what the data means did not. - [Which commit caused the database regression?](https://datapace.ai/blog/database-attribution-gap): DBSherlock, iSQUAD, D-Bot, and RCRank each infer a database root cause. None names the commit. Six depths of causal inference explain why the gap exists. - [The 5 most common Postgres SQL mistakes](https://datapace.ai/blog/the-5-most-common-sql-mistakes-developers-make): Most Postgres performance problems come from a short list of avoidable SQL patterns: unindexed filters, SELECT *, deep OFFSET, N+1, and casts in WHERE. - [The N+1 cascade EXPLAIN ANALYZE cannot see](https://datapace.ai/blog/n-plus-one-cascade-explain-analyze): EXPLAIN ANALYZE plans one query at a time. N+1 storms are a hundred fast queries adding up to a slow page. The signal lives in pg_stat_statements. ## Optional - [Partners](https://datapace.ai/partners) - [Investors](https://datapace.ai/investors) - [Privacy](https://datapace.ai/privacy) - [Terms](https://datapace.ai/terms)