Skip to content

HeliosDB WASM Procedures: User Guide Index

HeliosDB WASM Procedures: User Guide Index

Documentation Home > User Guides > Features > WASM Procedures


Overview

HeliosDB WASM Procedures is a revolutionary feature that enables polyglot database programming using WebAssembly. Write stored procedures in Rust, JavaScript/TypeScript, Python, or Go with industry-leading performance, complete security isolation, and universal compatibility.

Feature F6.12: World-First Polyglot Database Procedures

Version: 1.0 Status: Production Ready Last Updated: November 17, 2025


Key Features

  • Polyglot Programming: Write procedures in 4 languages (Rust, JavaScript/TypeScript, Python, Go)
  • High Performance: 10x faster execution than traditional interpreted procedures
  • Complete Isolation: 100% sandboxed execution with capability-based security
  • Universal Compatibility: Run the same WASM module across any platform
  • Sub-10ms Execution: Industry-leading performance with full security
  • Zero-Downtime Updates: Hot reload procedures without service interruption

Quick Reference

Create a Procedure

CREATE PROCEDURE calculate_discount(
order_total DECIMAL(10,2),
tier VARCHAR(20)
)
RETURNS DECIMAL(10,2)
LANGUAGE wasm
SECURITY PROFILE 'standard'
AS '/opt/procedures/discount.wasm';

Call a Procedure

SELECT calculate_discount(1000.00, 'gold') AS discount;

Performance Comparison

Traditional PL/pgSQL: 52ms per call
WASM Procedure (Rust): 6ms per call (8.7x faster)
WASM Procedure (JavaScript): 11ms per call (4.7x faster)
WASM Procedure (Python): 14ms per call (3.7x faster)
WASM Procedure (Go): 8ms per call (6.5x faster)

Complete Guide Sections

This comprehensive user guide has been split into 13 focused sections for easier navigation:

1. Introduction

WASM_PROCEDURES_INTRO.md

Get an overview of WASM Procedures, understand the key benefits, and learn why polyglot procedures are a game-changer for database development.

Topics Covered:

  • What are WASM Procedures?
  • Why Polyglot Procedures?
  • Key Benefits (Performance, Security, Portability)
  • World-First Innovations

Time to Read: 10 minutes


2. Quick Start

WASM_PROCEDURES_QUICK_START.md

Complete hands-on tutorial to build, deploy, and run your first WASM procedure in all 4 supported languages.

Topics Covered:

  • Prerequisites and setup
  • Rust example (calculate discount)
  • JavaScript/TypeScript example
  • Python example
  • Go example
  • Deployment and testing

Time to Complete: 20 minutes


3. Language SDKs

WASM_PROCEDURES_LANGUAGE_SDKS.md

Deep dive into SDK documentation for each supported language, including setup, API usage, and best practices.

Topics Covered:

  • Rust SDK (heliosdb-sdk)
  • JavaScript/TypeScript SDK (AssemblyScript)
  • Python SDK (PyO3)
  • Go SDK (TinyGo)
  • Cross-language data types
  • SDK comparison matrix

Time to Read: 30 minutes


4. Host Functions

WASM_PROCEDURES_HOST_FUNCTIONS.md

Complete reference for all host functions available to WASM procedures, organized by category.

Topics Covered:

  • Database operations (SQL, transactions, prepared statements)
  • Key-Value store operations
  • Document store operations
  • Graph query operations
  • Vector search operations
  • HTTP client functions
  • Logging and metrics
  • Cryptographic functions
  • Time and date functions

Time to Read: 25 minutes


5. Security Model

WASM_PROCEDURES_SECURITY_MODEL.md

Understand the security architecture, capability-based permission system, and how to configure security profiles.

Topics Covered:

  • Capability-based security
  • 13 capability types
  • Security profiles (restricted, standard, elevated, trusted)
  • Resource limits (fuel, memory, time)
  • Sandboxing and isolation
  • Security best practices

Time to Read: 20 minutes


6. Use Cases

WASM_PROCEDURES_USE_CASES.md

Real-world examples and production use cases demonstrating the power of WASM procedures.

Topics Covered:

  • Real-time fraud detection
  • Multi-model data processing
  • Geospatial analytics with custom algorithms
  • Machine learning inference
  • Event-driven workflows
  • Data validation and transformation
  • External API integration
  • Time-series analysis

Time to Read: 25 minutes


7. Procedure Management

WASM_PROCEDURES_PROCEDURE_MANAGEMENT.md

Complete guide to managing the lifecycle of WASM procedures: creating, updating, versioning, calling, and monitoring.

Topics Covered:

  • Creating procedures (SQL syntax, examples)
  • Updating procedures (hot reload, zero-downtime)
  • Dropping procedures
  • Calling procedures (SQL, prepared calls, application integration)
  • Versioning and version control
  • Listing and inspecting procedures

Time to Read: 20 minutes


8. Performance Optimization

WASM_PROCEDURES_PERFORMANCE.md

Advanced techniques for optimizing WASM procedure performance, including caching, pooling, and compilation strategies.

Topics Covered:

  • Module caching configuration
  • Instance pooling
  • Fuel metering optimization
  • Memory management
  • Batch operations (10x speedup)
  • Compilation tiers (interpreter, baseline, optimizing)
  • AOT (Ahead-of-Time) compilation
  • Performance benchmarks

Time to Read: 25 minutes


9. Monitoring & Debugging

WASM_PROCEDURES_MONITORING.md

Comprehensive monitoring, debugging, logging, and profiling capabilities for production operations.

Topics Covered:

  • Execution metrics (success rate, latency percentiles)
  • Real-time monitoring
  • Fuel consumption tracking
  • Memory usage monitoring
  • Error tracking with stack traces
  • Logging configuration and best practices
  • Profiling and performance analysis
  • Debugging techniques
  • Alert configuration

Time to Read: 25 minutes


10. Advanced Topics

WASM_PROCEDURES_ADVANCED_TOPICS.md

Advanced patterns and techniques for expert users, including multi-language workflows and custom extensions.

Topics Covered:

  • Multi-language integration
  • Custom host functions
  • Sandboxing deep dive
  • WASM module optimization (size reduction, SIMD)
  • CI/CD integration (GitHub Actions)
  • Testing strategies
  • Advanced security patterns

Time to Read: 30 minutes


11. Migration Guide

WASM_PROCEDURES_MIGRATION_GUIDE.md

Practical guide for migrating existing database procedures to WASM, with before/after examples.

Topics Covered:

  • PL/pgSQL to Rust migration
  • JavaScript UDFs to AssemblyScript
  • Performance comparison table
  • Migration strategies (gradual, A/B testing, shadow mode)
  • Common migration patterns
  • Migration checklist

Time to Read: 20 minutes


12. API Reference

WASM_PROCEDURES_API_REFERENCE.md

Complete API reference for SQL statements, host functions, system catalogs, and configuration parameters.

Topics Covered:

  • SQL statements (CREATE, ALTER, DROP, CALL)
  • Host function reference (40+ functions)
  • Error codes
  • System catalogs (metrics, errors, logs, cache stats)
  • Configuration parameters
  • Quick reference

Time to Read: 15 minutes


13. Conclusion

WASM_PROCEDURES_CONCLUSION.md

Summary of innovations, getting started steps, resources, and links to community support.

Topics Covered:

  • World-first innovations
  • Production readiness
  • Performance and security benefits
  • Getting started roadmap
  • Resources and links
  • Related features
  • Future of database procedures

Time to Read: 10 minutes


File Structure

docs/guides/features/
├── WASM_PROCEDURES_USER_GUIDE.md (This index file)
├── WASM_PROCEDURES_INTRO.md (Section 1)
├── WASM_PROCEDURES_QUICK_START.md (Section 2)
├── WASM_PROCEDURES_LANGUAGE_SDKS.md (Section 3)
├── WASM_PROCEDURES_HOST_FUNCTIONS.md (Section 4)
├── WASM_PROCEDURES_SECURITY_MODEL.md (Section 5)
├── WASM_PROCEDURES_USE_CASES.md (Section 6)
├── WASM_PROCEDURES_PROCEDURE_MANAGEMENT.md (Section 7)
├── WASM_PROCEDURES_PERFORMANCE.md (Section 8)
├── WASM_PROCEDURES_MONITORING.md (Section 9)
├── WASM_PROCEDURES_ADVANCED_TOPICS.md (Section 10)
├── WASM_PROCEDURES_MIGRATION_GUIDE.md (Section 11)
├── WASM_PROCEDURES_API_REFERENCE.md (Section 12)
└── WASM_PROCEDURES_CONCLUSION.md (Section 13)

Total Documentation:

  • 13 focused sections
  • 19,500+ words
  • 75+ code examples
  • 8 detailed use cases
  • 4 supported languages

For New Users (Getting Started)

  1. Introduction - Understand the feature
  2. Quick Start - Build your first procedure
  3. Use Cases - See real-world examples
  4. Procedure Management - Learn lifecycle management

For Developers (Implementation)

  1. Language SDKs - Choose your SDK
  2. Host Functions - Learn available APIs
  3. Security Model - Configure security
  4. Performance - Optimize procedures

For Operations (Production)

  1. Monitoring & Debugging - Observability tools
  2. Performance - Tuning and optimization
  3. Security Model - Security configuration
  4. API Reference - System catalogs

For Migrating Users

  1. Migration Guide - Migration strategies
  2. Language SDKs - SDK comparison
  3. Performance - Performance benefits
  4. Advanced Topics - Advanced patterns

For Advanced Users

  1. Advanced Topics - Advanced patterns
  2. Performance - Deep optimization
  3. Monitoring - Advanced monitoring
  4. API Reference - Complete API

External Resources

Community and Support

SDK Repositories


Document Information

Feature: F6.12 - WASM Procedures Version: 1.0 Last Updated: November 17, 2025 Status: Production Ready Supported Languages: Rust, JavaScript/TypeScript, Python, Go Total Documentation Size: 19,500+ words across 13 sections


Navigation: Documentation Home | User Guides | Features