Kpow Documentation
website·Indexed 30 days ago
https://fac-454-docs.factor-house.workers.dev/Documentation for Kpow, a Kafka monitoring and management tool. Includes guides for provider integrations with Amazon MSK, Confluent Cloud, and Google Managed Service for Apache Kafka (MSAK), as well as configuration for SAML and OpenID authentication, Schema Registry setup, and data inspection using projection expressions and JQ filters.
What's inside Kpow
- This analytics platform erases the line between real-time stream analytics and large-scale batch processing by using a unified data lakehouse. Data is stored in Apache Iceberg tables on MinIO (S3-compatible storage), providing ACID transactions, schema evolution, and time travel. A central Hive Metastore, backed by PostgreSQL, serves as the unified metadata catalog, allowing both Apache Flink and Apache Spark to discover and query the same datasets seamlessly.
Introduction to kJQ pipeline model and filters
kJQ is a filter-based language for processing structured data, based on the jq language. The fundamental concept is the pipeline, where data flows from left to right through a series of transformations using the pipe operator (
|).Every expression in kJQ is a filter that takes an input and produces an output. Even literal values (like
42or"hello") are filters that ignore their input and return the literal value. The identity filter.passes its input unchanged to the output.input | transform1 | transform2 | outputOverview of the Factor House Playground
The Playground is a collection of self-contained environments designed for exploring modern data platform architectures. It provides hands-on labs based on real-world scenarios involving streaming, analytics, and microservices. The environment supports tools and patterns for event-driven systems, real-time data processing, lakehouse architectures, and operational analytics, featuring technologies such as Kafka, Flink, Spark, Iceberg, and Pinot, as well as observability and orchestration capabilities.Overview of Klang Language Syntax
Klang is a scripting language used in kREPL for processing bounded sequences of structured data from Kafka topics. It is a blend of JQ and Clojure, utilizing EDN (Extensible Data Notation) as its data representation. All JSON is valid EDN. Klang supports pure Clojure functions, pure JQ pipelines, and specific side-effecting Klang functions (likeconsume).Overview of Factor Platform
Factor Platform serves as a unified management layer for data ecosystems, providing governed control and visibility specifically for Apache Kafka® and Apache Flink® workloads.Overview of Bufstream
Bufstream is a Kafka-compatible message queue designed as a drop-in replacement for Apache Kafka®. Unlike traditional Kafka setups that require expensive machines with large attached disks, Bufstream leverages off-the-shelf technologies like S3 and Postgres for storage.Overview of the Kafka and Kpow local development stack
This stack provides a complete Apache Kafka development and monitoring environment for building, testing, and managing Kafka-based applications. It is designed for event-driven architectures, microservices communication, and data integration pipelines. The environment includes a 3-node Kafka cluster for high availability, Zookeeper for coordination, Schema Registry for data governance, Kafka Connect for data integration, and Kpow for enterprise-grade observability and management.Overview of Flex Multi-tenancy
Multi-tenancy in Flex allows administrators to restrict the visibility of Flink resources based on user roles. When a user operates within a tenant, they only see the resources included by that tenant, creating a consistent synthetic cluster-view. Users are restricted to creating only those resources that are valid for their assigned tenant. A single user role can be assigned to multiple tenants.Overview of Redpanda and Kpow
Redpanda is a Kafka-compatible streaming data platform. Kpow provides a developer-focused UI for managing and monitoring Redpanda clusters, creating a combined stack for operating real-time data pipelines.Overview of the Mobile Game Analytics Pipeline
The real-time analytics pipeline for mobile game metrics consists of three stages:
- Data Generation: A Python script simulates live gameplay by publishing user score events to an Apache Kafka topic.
- Metrics Processing: Four Apache Flink SQL jobs consume the Kafka stream to compute specific leaderboard metrics and write results to dedicated Kafka output topics using the
upsert-kafkaconnector. - Dashboard Visualization: A Streamlit web application reads the Flink output topics to display real-time performance insights.
Overview of Factor House Local Labs
The Factor House Local labs are a series of modular, production-inspired exercises for developers building real-time data pipelines. They cover a comprehensive stack including Kafka, Flink, Spark, Iceberg, and Pinot, focusing on key capabilities such as Avro serialization with Schema Registry, stream processing (via Kafka Streams and Flink SQL/DataStream APIs), connector management with Kpow, lakehouse integrations with Iceberg, and real-time analytics with Pinot.Overview of Kpow AWS Marketplace offerings
Kpow is available on the AWS Marketplace as automatically licensed containers that integrate with AWS for subscription checks, usage metering, and entitlement management. It is compatible with Amazon MSK and can be deployed on ECS, Fargate, EKS, or EKS Anywhere.