A reproducible database performance engineering laboratory with a bilingual React portfolio.
Published public source edition: Oracle-Performance-Analyzer is an independent, sanitized codebase licensed under MIT. It includes reviewed historical evidence and explicitly labeled public derivatives with verifiable SHA-256 provenance. Private development history, personal context, credentials and host diagnostics are excluded. Public portfolio: oracle-performance-analyzer.pages.dev, reported published by the owner. Automated hosted verification currently receives HTTP 403; this branch has not been verified as the deployed revision. Local reproduction remains available. See provenance, MIT license and third-party notices.
OSPA is an independent educational and engineering project. It is not an official Oracle product and is not affiliated with or certified by Oracle Corporation. It does not replace Oracle Real Application Testing, SQL Performance Analyzer or SQL Tuning Advisor.
The bilingual public portfolio now opens with a three-case technical readout using the recorded Phase 4 measurements: E01 email lookup (observed median 53.17% lower with an index), E03 date-range query (observed median 25.24% higher despite a chosen index), and E04 status histogram (captured estimated rows 2,500 → 2,500, without runtime cursor verification). These are descriptive, small-dataset observations, not general tuning guarantees. Each card links to the underlying inspected result and original public evidence. See methodology and the recruiter summary.
Deployment boundary: the owner has reported the Cloudflare Pages site as published. Automated retrieval still returned HTTP 403, so its deployed revision, current headers and hosted execution are not independently verified. The latest GitHub CI results validate the source branch, not the public hostname. Updating GitHub files in this PR does not itself authorize or confirm a Cloudflare deployment.
OSPA investigates SQL plans, selectivity, B-tree indexes, optimizer statistics and descriptive benchmarking. The Python CLI uses python-oracledb Thin mode with an approved query catalog and explicit safety guards. Offline reports and the website need no Oracle connection.
The reproducible small dataset uses seed 20261016: 2,000 customers, 500 products, 10,000 orders and 30,000 order items — 42,500 business rows. OSPA_DATASET holds one additional metadata row. Eight catalog queries have ten variants. Five experimental indexes were evaluated in isolated historical blocks.
Implemented phases cover connectivity/diagnostics; deterministic datasets/schema validation; query correctness/estimated plans; benchmark/index/histogram experiments with exact statistics recovery; offline reports/tests/CI. Privileged runtime cursor metrics (Group C), bind peeking inspection, advanced diagnostics, multi-scale experiments and Engineering Challenges remain Not Implemented / Future Work.
Use Python 3.14 for the validated pinned dependency environment; the package metadata requires Python >=3.12. Oracle installation is unnecessary for this flow.
python -m venv .venv
.venv/bin/python -m pip install -r requirements.lock
.venv/bin/python -m pip install --no-build-isolation --no-deps -e .
.venv/bin/python -m pip check
.venv/bin/python -m oracle_spa.cli --help
.venv/bin/python -m oracle_spa.cli list-queries
env -u ORACLE_DSN -u ORACLE_USER -u ORACLE_PASSWORD .venv/bin/python -m pytest -q tests/unit
env -u ORACLE_DSN -u ORACLE_USER -u ORACLE_PASSWORD .venv/bin/python -m oracle_spa.cli report-all --output results/phase5Generated artifacts are ignored local output, not committed source files. Follow the offline reproducibility instructions to create results/phase5/report.md, measurements.csv, comparisons.csv, manifest.json and charts/. These artifacts are unavailable immediately after a clean clone. The portfolio builds from committed public inputs without requiring this output directory.
npm --prefix portfolio ci
npm --prefix portfolio run data:check
npm --prefix portfolio run typecheck
npm --prefix portfolio run lint
npm --prefix portfolio test
npm --prefix portfolio run build
npm --prefix portfolio run devOpen the loopback URL printed by Vite. English is the default; EN/ES switches the same document. Vite base is / for future root-hosted Cloudflare Pages. The site serves reviewed local evidence/documentation/source references; it does not link to the private repository. The public repository is available; the owner has supplied the Cloudflare Pages URL above. GitHub Pages is not used. Frontend guide.
All reported timings are end-to-end client execute + complete-fetch latency, including driver/Python materialization, in milliseconds. Measurements are descriptive sequential blocks on a small synthetic dataset: cache, order and host load are confounders, so they do not establish causal or universal speedups.
| Index experiment | Median before -> after (ms, rounded) | Change |
|---|---|---|
| E01 email | 0.931 -> 0.436 | -53.17% |
| E02 simple customer | 1.699 -> 0.954 | -43.85% |
| E02 composite customer/date | 1.593 -> 1.156 | -27.43% |
| E03 TRUNC | 2.983 -> 3.091 | +3.63% |
| E03 range | 1.433 -> 1.794 | +25.24% |
| E05 Top-N | 1.884 -> 2.087 | +10.77% |
Percentages are computed from unrounded medians. Favorable and unfavorable observations are retained. E03 range selected an index and was slower; E05 kept the optimizer's full-scan choice. E04 compares PAID before/after and CANCELLED before/after separately; those cohorts are different workloads. EXPLAIN PLAN estimates, including E04 E-Rows = 2,500 with bind placeholders, are not actual cursor metrics. Optimizer cost is not milliseconds. See methodology, findings, results and public evidence inventory.
- Architecture
- Technical specification
- SQL catalog
- Experiment catalog
- Offline and Oracle demonstrations
- Development and CI
- Public evidence summary / resumen técnico
- Phase 4 closure summary
- Phase 5 closure summary
- Acceptance and limitations
- Public engineering log
- Security principles
- Contributor safety rules
Historical Phase 5 evidence records 180 offline unit tests and 55 subtests; four live integration tests belong to an earlier, separately authorized lab audit. Those are historical counts, not proof of a fresh live execution. The initial public GitHub Actions run passed. Pre-publication outcomes remain in the historical release checklist; immutable export manifests and validation records are explained in provenance. CI executes offline only; it downloads no Oracle database and holds no database credential.
Keep real credentials local in an owner-owned regular .env file with mode 0600, or supply environment variables. Only .env.example is public. Never run provisioning, reset, DDL, DML, index or DBMS_STATS operations without new, narrowly scoped authorization. Historical receipts cannot authorize repetition. Oracle integration tests are separately marked/gated.
Owner-confirmed original code and documentation are MIT licensed, Copyright (c) 2026 Alexis Abraham Perez Olvera. Third-party code, icons, Oracle software/materials and trademarks retain their own terms; the MIT grant does not relicense them. Oracle binaries, container layers, wallets and data files are not included. The factual synthetic observations are labeled original/derivative in evidence provenance.