rmoff's random ramblings
Recent content on rmoff's random ramblings
- Posts
- 693 from 23 Mar 2009 to 29 Oct 2026
- Posting
- weekly (39 in the last year)
- Kind
- personal blog
- Feed
- https://rmoff.net/index.xml
2026 30
- Interesting links - October 2026
- 🏃🚶 The unofficial Current San Francisco 2026 Run/Walk 🏃🚶
- I am so tired of this bullshit
- Interesting links - September 2026
- Interesting links - August 2026
- Interesting links - July 2026
- THE ONLY WINNING MOVE IS NOT TO PLAY
- Interesting links - June 2026
- Interesting links - May 2026
- AI Slop is Killing Online Communities
- 🏃🚶 The unofficial Current London 2026 Run/Walk 🏃🚶
- It's the Smell
- Interesting links - April 2026
- Materialized Tables in Apache Flink
- Kicking the Tyres on Harbor for Agent Evals
- Look Ma, I made a JAR! (Building a connector for Kafka Connect without knowing Java)
- Interesting links - March 2026
- Evaluating Claude's dbt Skills: Building an Eval from Scratch
- How I do, and don't, use AI on this blog
- Claude Code isn't going to replace data engineers (yet)
- Claude Code in action with dbt
- AI will fuck you up if you’re not on board
- Interesting links - February 2026
- Claude the Instructor
- Ten years late to the dbt party (DuckDB edition)
- Cosplaying as a webdev with Claude Code in January 2026
- Reflections of a Developer on LLMs in January 2026
- Interacting with Developers on Reddit
- Interesting links - January 2026
- Alternatives to MinIO for single-node local S3
2025 45
- A love letter to Raycast ❤️
- Interesting links - December 2025
- Using Graph Analysis with Neo4j to Spot Astroturfing on Reddit
- Interesting links - November 2025
- (AI) Smells on Medium
- Stumbling into AI: Part 6—I've been thinking about Agents and MCP all wrong
- How we built the demo for the Current NOLA Day 2 keynote using Flink and AI
- Tech Radar (Nov 2025) - data blips
- Interesting links - October 2025
- Blog Writing for Developers
- Stumbling into AI: Part 5—Agents
- Interesting links - September 2025
- Stumbling into AI: Part 4—Terminology Tidy-up (and a little rant)
- Stumbling into AI: Part 3—RAG
- Stumbling into AI: Part 2—Models
- Stumbling into AI: Part 1—MCP
- Interesting links - August 2025
- Kafka to Iceberg - Exploring the Options
- Connecting Apache Flink SQL to Confluent Cloud Kafka broker
- Interesting links - July 2025
- Keeping your Data Lakehouse in Order: Table Maintenance in Apache Iceberg
- Writing to Apache Iceberg on S3 using Kafka Connect with Glue catalog
- Interesting links - June 2025
- Writing to Apache Iceberg on S3 using Flink SQL with Glue catalog
- Digging into Ducklake
- Interesting links - May 2025
- Exploring Joins and Changelogs in Flink SQL
- 🏃🚶 The unofficial Current London 2025 Run/Walk 🏃🚶
- It's Time We Talked About Time: Exploring Watermarks (And More) In Flink SQL
- Interesting links - April 2025
- Confluent Cloud for Apache Flink - Exploring the API
- Interesting links - March 2025
- How to create Carousel posts in LinkedIn…without the bullshit
- Building a data pipeline with DuckDB
- Exporting Notebooks from DuckDB UI
- Kicking the tyres on the new DuckDB UI
- Creating an HTTP Source connector on Confluent Cloud from the CLI
- Why is kcat showing the wrong topics?
- Write more blog articles, not fewer (Don't leave the scraps on the cutting floor)
- Data Wrangling with Flink SQL
- Joining two streams of data with Flink SQL
- How to explode nested arrays with Flink SQL
- Exploring UK Environment Agency data in DuckDB and Rill
- DuckDB tricks - renaming fields in a SELECT * across tables
- Interesting links - February 2025
2024 32
- Checkpoint Chronicle - December 2024
- Disabling Vale Linting Selectively in Asciidoc
- Exploring Flink CDC
- Streaming Data from Postgres to Snowflake with CDC and Decodable
- Checkpoint Chronicle - October 2024
- Why Do I Need CDC?
- Checkpoint Chronicle - September 2024
- Current 2024 Recap
- Current 2024 - 5k Fun Run (or Walk)
- Adventures with Apache Flink and Delta Lake
- Declarative Resource Management for Real-time ETL with Decodable
- Troubleshooting Flink SQL S3 problems
- How to Migrate from Amazon MSF
- Sending Data to Apache Iceberg from Apache Kafka with Apache Flink
- Decodable vs. Amazon MSF: Getting Started with Flink SQL
- How to get data from Apache Kafka to Apache Iceberg on S3 with Decodable
- Checkpoint Chronicle - May 2024
- How I Try To Keep Up With The Data Tech World (A List of Data Blogs)
- ngrok DNS headaches
- How to stop AWS CLI clearing the screen
- Flink SQL—Misconfiguration, Misunderstanding, and Mishaps
- Checkpoint Chronicle - March 2024
- 🏃🚶 The unofficial Kafka Summit London 2024 Run/Walk 🏃🚶
- Apache Flink talks at Kafka Summit London 2024
- Exploring the Flink SQL Gateway REST API
- Flink SQL and the Joy of JARs
- Checkpoint Chronicle - February 2024
- Catalogs in Flink SQL—Hands On
- Catalogs in Flink SQL—A Primer
- Antora Deployment to Cloudflare Across Private Repositories with GitHub Actions
- Hosting on GitHub Pages? Watch out for Subdomain Hijacking
- 1️⃣🐝🏎️🦆 (1BRC in SQL with DuckDB)
2023 22
- Deploying Antora with GitHub Actions and a private GitHub repo
- Checkpoint Chronicle - December 2023
- Productivity tools: AI Image Generators
- Hugo not detecting changed pages on Mac
- Learning Apache Flink S01E06: The Flink JDBC Driver
- Checkpoint Chronicle - November 2023
- Using Apache Kafka with ngrok
- Learning Apache Flink S01E05: Installing PyFlink (with some bumps along the way…)
- Learning Apache Flink S01E04: A [Partial] Exploration of the Flink SQL Client
- Learning Apache Flink S01E03: Running my First Flink Cluster and Application
- cd: string not in pwd
- Learning Apache Flink S01E02: What *is* Flink?
- Learning Apache Flink S01E01: Where Do I Start?
- An Itch That Just Has to Be Scratched… (Or, Why Am I Joining Decodable?)
- Blog Writing for Developers
- What Does This DevEx Engineer Do?
- Authoring Wordpress blogs in Markdown (with Google Docs for review)
- Building Better Docs - Automating Jekyll Builds and Link Checking for PRs
- Using Delta from pySpark - `java.lang.ClassNotFoundException: delta.DefaultSource`
- Quickly Convert CSV to Parquet with DuckDB
- Making the move from Alfred to Raycast
- Aligning mismatched Parquet schemas in DuckDB
2022 19
- Looking Forwards, and Looking Backwards
- Data Engineering in 2022: ELT tools
- Data Engineering in 2022: Wrangling the feedback data from Current 22 with dbt
- Data Engineering in 2022: Exploring dbt with DuckDB
- Current 22 - Session Analysis with DuckDB and Jupyter Notebook
- Data Engineering in 2022: Architectures & Terminology
- Current 2022 - 5k Fun Run
- Data Engineering in 2022: Exploring LakeFS with Jupyter and PySpark
- Data Engineering: Resources
- Data Engineering in 2022: Storage and Access
- Stretching my Legs in the Data Engineering Ecosystem in 2022
- Customising the fields shown in Airtable's Calendar .ics export
- Inside the Sausage Factory: How we Built the Program for Current 2022
- ⚡️ Writing an abstract for a lightning talk ⚡️
- How to Write a Good Tech Conference Abstract - Learn from the Mistakes of Others
- Remote-First Developer Advocacy
- Hanging up my Boarding Passes and Jetlag…for now
- Using GitHub Actions to build automagic Hugo previews of draft articles
- 🏃🚶 The unofficial Kafka Summit London 2022 Run/Walk 🏃🚶
2021 17
- My Favourite Tools on the Mac (Setting up a new Mac)
- Why I use Alfred App (and maybe you should too)
- A bash script to deploy ksqlDB queries automagically
- Loading CSV data into Confluent Cloud using the FilePulse connector
- Connecting to managed ksqlDB in Confluent Cloud with REST and ksqlDB CLI
- Using ksqlDB to process data ingested from ActiveMQ with Kafka Connect
- Kafka Connect JDBC Sink deep-dive: Working with Primary Keys
- Kafka Connect - SQLSyntaxErrorException: BLOB/TEXT column … used in key specification without a key length
- Quick profiling of data in Apache Kafka using kafkacat and visidata
- Using Open Sea Map data in Kibana maps
- Loading delimited data into Kafka - quick & dirty (but effective)
- 📼 ksqlDB HOWTO - A mini video series 📼
- Performing a GROUP BY on data in bash
- Running as root on Docker images that don't use root
- Running a self-managed Kafka Connect worker for Confluent Cloud
- Creating topics with Kafka Connect
- Kafka Connect - Deep Dive into Single Message Transforms
2020 83
- 🎄 Twelve Days of SMT 🎄 - Day 12: Community Transformations
- 🎄 Twelve Days of SMT 🎄 - Day 11: Predicate and Filter
- 🎄 Twelve Days of SMT 🎄 - Day 10: ReplaceField
- Scheduling Hugo Builds on GitHub pages with GitHub Actions
- 🎄 Twelve Days of SMT 🎄 - Day 9: Cast
- 🎄 Twelve Days of SMT 🎄 - Day 8: TimestampConverter
- 🎄 Twelve Days of SMT 🎄 - Day 7: TimestampRouter
- 🎄 Twelve Days of SMT 🎄 - Day 6: InsertField II
- 🎄 Twelve Days of SMT 🎄 - Day 5: MaskField
- 🎄 Twelve Days of SMT 🎄 - Day 4: RegExRouter
- 🎄 Twelve Days of SMT 🎄 - Day 3: Flatten
- 🎄 Twelve Days of SMT 🎄 - Day 2: ValueToKey and ExtractField
- 🎄 Twelve Days of SMT 🎄 - Day 1: InsertField (timestamp)
- Life as a Developer Advocate, nine months into a pandemic
- My Workstation - 2020
- Keynote - Why is Replace Fonts greyed out?
- Kafka Connect, ksqlDB, and Kafka Tombstone messages
- Streaming Geopoint data from Kafka to Elasticsearch
- ksqlDB - How to model a variable number of fields in a nested value (`STRUCT`)
- Streaming XML messages from IBM MQ into Kafka into MongoDB
- Ingesting XML data into Kafka - Option 3: Kafka Connect FilePulse connector
- Ingesting XML data into Kafka - Option 2: Kafka Connect plus Single Message Transform
- Ingesting XML data into Kafka - Option 1: The Dirty Hack
- Ingesting XML data into Kafka - Introduction
- `abcde` - Error trying to calculate disc ids without lead-out information
- IBM MQ on Docker - Channel was blocked
- Setting key value when piping from jq to kafkacat
- Some of my favourite public data sets
- 📌 🎁 A collection of Kafka-related talks 💝
- Using the Debezium MS SQL connector with ksqlDB embedded Kafka Connect
- Including content from external links with Asciidoc in Hugo
- What is Kafka Connect?
- Counting the number of messages in a Kafka topic
- Poking around the search engines in Google Chrome
- 🤖Building a Telegram bot with Apache Kafka, Go, and ksqlDB
- Telegram bot - BOT_COMMAND_INVALID
- Learning Golang (some rough notes) - S02E09 - Processing chunked responses before EOF is reached
- Learning Golang (some rough notes) - S02E08 - Checking Kafka advertised.listeners with Go
- Learning Golang (some rough notes) - S02E07 - Splitting Go code into separate source files and building a binary executable
- Learning Golang (some rough notes) - S02E06 - Putting the Producer in a function and handling errors in a Go routine
- Learning Golang (some rough notes) - S02E05 - Kafka Go AdminClient
- Learning Golang (some rough notes) - S02E04 - Kafka Go Consumer (Function-based)
- Learning Golang (some rough notes) - S02E03 - Kafka Go Consumer (Channel-based)
- Learning Golang (some rough notes) - S02E02 - Adding error handling to the Producer
- Learning Golang (some rough notes) - S02E01 - My First Kafka Go Producer
- Learning Golang (some rough notes) - S02E00 - Kafka and Go
- Learning Golang (some rough notes) - S01E10 - Concurrency (Web Crawler)
- Why JSON isn't the same as JSON Schema in Kafka Connect converters and ksqlDB (Viewing Kafka messages bytes as hex)
- Learning Golang (some rough notes) - S01E09 - Concurrency (Channels, Goroutines)
- Learning Golang (some rough notes) - S01E08 - Images
- Learning Golang (some rough notes) - S01E07 - Readers
- Learning Golang (some rough notes) - S01E06 - Errors
- Learning Golang (some rough notes) - S01E05 - Interfaces
- Learning Golang (some rough notes) - S01E04 - Function Closures
- Learning Golang (some rough notes) - S01E03 - Maps
- Learning Golang (some rough notes) - S01E02 - Slices
- Learning Golang (some rough notes) - S01E01 - Pointers
- Learning Golang (some rough notes) - S01E00
- How to install connector plugins in Kafka Connect
- Loading CSV data into Kafka
- How to list and create Kafka topics using the REST Proxy API
- Working with JSON nested arrays in ksqlDB - example
- Searching Alfred's Clipboard history programatically
- Building a Telegram bot with Apache Kafka and ksqlDB
- Add Markers list from Screenflow to Youtube Table of Contents
- Using Confluent Cloud when there is no Cloud (or internet)
- How to install kafkacat on Fedora
- Converting from AsciiDoc to Google Docs and MS Word
- A quick and dirty way to monitor data arriving on Kafka
- Are Tech Conferences Dead?
- Streaming Wi-Fi trace data from Raspberry Pi to Apache Kafka with Confluent Cloud
- Kafka Connect JDBC Sink - setting the key field name
- Adventures in the Cloud, Part 94: ECS
- Primitive Keys in ksqlDB
- Fantastical / Mac Calendar not showing Google Shared Calendar
- Notes on getting data into InfluxDB from Kafka with Kafka Connect
- Kafka Connect and Schemas
- Monitoring Sonos with ksqlDB, InfluxDB, and Grafana
- UnsupportedClassVersionError: ` ` has been compiled by a more recent version of the Java Runtime
- Changing the Logging Level for Kafka Connect Dynamically
- How to win [or at least not suck] at the conference abstract submission game
- Exploring ksqlDB window start time
- Streaming messages from RabbitMQ into Kafka with Kafka Connect
2019 43
- Analysing network behaviour with ksqlDB and MongoDB
- Detecting and Analysing SSH Attacks with ksqlDB
- Copy MongoDB collections from remote to local instance
- Kafka Connect - Request timed out
- Using tcpdump With Docker
- Common mistakes made when configuring multiple Kafka Connect workers
- Streaming data from SQL Server to Kafka to Snowflake ❄️ with Kafka Connect
- Running Dockerised Kafka Connect worker on GCP
- Debezium & MySQL v8 : Public Key Retrieval Is Not Allowed
- Using Kafka Connect and Debezium with Confluent Cloud
- Skipping bad records with the Kafka Connect JDBC sink connector
- Kafka Connect and Elasticsearch
- Copying data between Kafka clusters with Kafkacat
- Kafka Summit GoldenGate bridge run/walk
- Staying sane on the road as a Developer Advocate
- Where I'll be on the road for the remainder of 2019
- Reset Kafka Connect Source Connector Offsets
- Starting a Kafka Connect sink connector at the end of a topic
- Resetting a Consumer Group in Kafka
- Migrating Alfred Clipboard to New Laptop
- So how DO you make those cool diagrams? July 2019 update
- Taking the Vienna-Munich sleeper train
- Manually delete a connector from Kafka Connect
- Automatically restarting failed Kafka Connect tasks
- Putting Kafka Connect passwords in a separate file / externalising secrets
- Deleting a Connector in Kafka Connect without the REST API
- A poor man's KSQL EXPLODE/UNNEST technique
- When a Kafka Connect converter is not a _converter_
- Reading Kafka Connect Offsets via the REST Proxy
- Pivoting Aggregates in Ksql
- Connecting KSQL to a Secured Schema Registry
- Exploring KSQL Stream-Stream Joins
- Terminate All KSQL Queries
- Quick Thoughts on Not Making a Crap Slide Deck
- Using httpie with the Kafka REST Proxy
- Preparing a New Talk
- Travelling for Work, with Kids at Home
- Kafka Connect Change Log Level and Write Log to File
- Replacing UTF8 non-breaking-space with bash/sed on the Mac
- How KSQL handles case
- KSQL REST API cheatsheet
- Confluent Schema Registry REST API cheatsheet
- What to Do When Docker on the Mac Runs Out of Space
2018 33
- Quick Thoughts on Not Writing a Crap Abstract
- Moving from Ghost to Hugo
- Pull new version of multiple Docker images
- Docker Tips and Tricks with Kafka Connect, ksqlDB, and Kafka
- Streaming data from Oracle into Kafka
- Tools I Use: iPad Pro
- So how DO you make those cool diagrams?
- Get mtr working on the Mac
- Kafka Connect CLI tricks
- ERROR: Invalid interpolation format for "command" option in service…
- Flatten CDC records in KSQL
- Exploring JMX with jmxterm
- Accessing Kafka Docker containers' JMX from host
- Sending multiline messages to Kafka
- Window Timestamps in KSQL / Integration with Elasticsearch
- Where I'm speaking in the rest of 2018
- Kafka Listeners - Explained
- Syntax highlighting code for presentation slides
- Analysing Network Data with Apache Kafka, KSQL, and Elasticsearch
- Compare and apply a diff / patch recursively
- Kafka Connect and Oracle data types
- Stream-Table Joins in KSQL: Stream events must be timestamped after the Table messages
- Quick 'n Easy Population of Realistic Test Data into Kafka
- Blogging v2
- Streaming Data from MongoDB into Kafka with Kafka Connect and Debezium
- Cloning Ubiquiti's MongoDB instance to a separate server
- Streaming Data from MySQL into Kafka with Kafka Connect and Debezium
- KSQL: Topic … does not conform to the requirements
- Streaming data from Kafka into Elasticsearch
- Installing the Python Kafka library from Confluent - troubleshooting some silly errors…
- Why Do We Need Streaming ETL?
- HOWTO: Oracle GoldenGate + Apache Kafka + Schema Registry + Swingbench
- Kafka - AdminClient - Connection to node -1 could not be established. Broker may not be available
2017 23
- Installing Oracle GoldenGate for Big Data 12.3.1 with Kafka Connect and Confluent Platform
- Where will I be at OpenWorld / Oak Table World?
- Apache Kafka™ talks at Oracle OpenWorld, JavaOne, and Oak Table World 2017
- Oracle GoldenGate / Kafka Connect Handler troubleshooting
- What is Markdown, and Why is it Awesome?
- Conferences & Meetups at which I'll be speaking - 2017
- Kafka Connect - JsonDeserializer with schemas.enable requires "schema" and "payload" fields
- Simple export/import of Data Sources in Grafana
- Linux - USB disk connection problems - uas: probe failed with error -12
- Configuring Kafka Connect to log REST HTTP messages to a separate file
- kafka.common.KafkaException: No key found on line 1
- Keeping Up with the Deluge
- Install qemu on AWS EC2 Amazon Linux
- Mount VMDK/OVF/OVA on Amazon Web Services (AWS) EC2
- Little Technology Wins
- Time For a Change
- Property Graph in Oracle 12.2
- Rittman Mead at BIWA Summit 2017
- HBase crash after resuming suspended VM
- Kibana Timelion - Anomaly Detection
- Streaming / Unbounded Data - Resources
- Data Processing and Enrichment in Spark Streaming with Python and Kafka
- Getting Started with Spark Streaming, Python, and Kafka
2016 83
- ETL Offload with Spark and Amazon EMR - Part 4 - Analysing the Data
- ETL Offload with Spark and Amazon EMR - Part 5 - Summary
- ETL Offload with Spark and Amazon EMR - Part 3 - Running pySpark on EMR
- ETL Offload with Spark and Amazon EMR - Part 2 - Code development with Notebooks and Docker
- ETL Offload with Spark and Amazon EMR - Part 1 - Introduction
- Source Control and Automated Code Deployment Options for OBIEE
- Enhanced Usage Tracking for OBIEE - Now Available as Open Source!
- The Rittman Mead Open Source Project
- kafka-avro-console-producer - Error registering Avro schema / io.confluent.kafka.schemaregistry.client.rest.exceptions.RestClientException
- Oracle GoldenGate -> Kafka Connect - "Failed to serialize Avro data"
- Kafka Connect - java.lang.IncompatibleClassChangeError
- Connecting Oracle Data Visualization Desktop to Google Analytics and Google Drive
- Using SQL to Query JSON Files with Apache Drill
- OBIEE, Big Data Discovery, and ODI security updates - October 2016
- boto / S3 errors
- Streaming data from Oracle using Oracle GoldenGate and Kafka Connect
- OTN Appreciation Day : OBIEE's BI Server
- Poug
- All You Ever Wanted to Know About OBIEE Performance…but were too afraid to ask
- Using logdump to Troubleshoot the Oracle GoldenGate for Big Data Kafka Handler
- How To Poke Around OBIEE on Linux with strace (Working with Unsupported ODBC Sources in OBIEE 12c)
- An Introduction to Apache Drill
- Using Apache Drill with OBIEE 12c
- OGG-15051 oracle.goldengate.util.GGException: Class not found: "kafkahandler"
- OGG - Class not found: "com.company.kafka.CustomProducerRecord"
- Kafka Connect JDBC - Oracle - Number of groups must be positive
- Stream Analytics and Processing with Kafka and Oracle Stream Analytics
- An Introduction to Oracle Stream Analytics
- Kafka Connect - HDFS with Hive Integration - SchemaProjectorException - Schema version required
- Configuring UPS/apcupsd
- Using R with Jupyter Notebooks and Oracle Big Data Discovery
- Spark sqlContext.read.json - java.io.IOException: No input paths specified in job
- Using SparkSQL and Pandas to Import Data into Hive and Big Data Discovery
- Proxmox 4 Containers - ssh - ssh_exchange_identification: read: Connection reset by peer
- Reset Hue password
- Apache Drill - conflicting jar problem - "No current connection"
- ClassNotFoundException with MongoDB-Hadoop in Hive
- Erroneous SwapFree on LXC causes problems with CDH install
- Using Jupyter Notebooks with Big Data Discovery 1.2
- Running Big Data Discovery Shell and Jupyter Notebook on Big Data Lite VM 4.5
- Reviving a bricked EdgeRouter Lite (ERL) from a Mac
- Running a Docker Container on Proxmox for BitTorrent Sync
- Importing VMWare and VirtualBox VMs to Proxmox
- Commissioning my Proxmox Server - OS and filesystems
- A New Arrival
- New version of BigDataLite VM from Oracle
- OBIEE 12c blog posts
- Presentation Services Logsources in OBIEE 12c
- OBIEE 12c – Extended Subject Areas (XSA) and the Data Set Service
- Changes in BI Server Cache Behaviour in OBIEE 12c : OBIS_REFRESH_CACHE
- Lifting the Lid on OBIEE 12c Web Services - Part 2
- Dynamic Naming of OBIEE 12c Service Instance Exports
- OBIEE 12c - "Add Data Source" in Answers
- York Fry Ups
- Lifting the Lid on OBIEE 12c Web Services - Part 1
- Kibana Timelion - Series Calculations - Difference from One Week Ago
- OBIEE 12c hangs at startup - Starting AdminServer ...
- oracle.bi.bar.exceptions.UnSupportedBarException: The Bar file provided as input is not supported in this BI Platfrom release.
- OBIEE Baseline Validation Tool - Parameter 'directory' is not a directory
- Under the Covers of OBIEE 12c Configuration with sysdig
- Monitoring Logstash Ingest Rates with Elasticsearch, Kibana, and Timelion
- Monitoring Logstash Ingest Rates with InfluxDB and Grafana
- Collection of Articles on How to Write a Good Conference Abstract
- Experiments with Elastic’s Graph Tool
- Using R to Denormalise Data for Analysis in Kibana
- OBIEE security patches, and FINAL 11.1.1.7 patchset release
- Streaming Data through Oracle GoldenGate to Elasticsearch
- Decoupling the Data Pipeline with Kafka - A (Very) Simple Real Life Example
- Food Pr0n 02 - Devon & Dorset
- New OTN Article - OBIEE Performance Analytics: Analysing the Impact of Suboptimal Design
- Experiments with Kibana Timelion
- Connecting to OBIEE via JDBC - with jisql
- My latest IRC client : Kibana
- Food Pr0n - 01
- OBIEE 11.1.1.9 installation - JPS-06514: Opening of file based keystore failed
- Fun and Games with Oracle GoldenGate, Kafka, and Logstash on BigDataLite 4.4
- Presentation Slides… bye-bye Slideshare, hello Speakerdeck
- obihackers IRC channel
- Streaming data to InfluxDB from any bash command
- What makes a good Full English?
- Visualising OBIEE DMS Metrics over the years
- OBIEE Performance - Why Metrics Matter (and…Announcing obi-metrics-agent v2!)
- OBIEE 12c - Repository Password Corruption Issue
2015 19
- Using Linux Control Groups to Constrain Process Memory
- Driving OBIEE User Engagement with Enhanced Usage Tracking for OBIEE
- Forays into Kafka - Enabling Flexible Data Pipelines
- Introducing the Rittman Mead OBIEE Performance Analytics Service
- Forays into Kafka - Logstash transport / centralisation
- Using the BI Server Metadata Web Service for Automated RPD Modifications
- Managing the OBIEE BI Server Cache from ODI 12c
- OBIEE BI Server Cache Management Strategies
- Security patches released for OBIEE 11.1.1.7/11.1.1.9, and ODI DQ 11.1.1.3
- What's New in OBIEE 11.1.1.9 for Systems Administrators and Developers
- Using the ELK Stack to Analyse Donor's Choose Data
- BI Forum 2015 Preview -- OBIEE Regression Testing, and Data Discovery with the ELK stack
- Analysing ODI performance with Flame Graphs
- Lifting the Lid on OBIEE Internals with Linux Diagnostics Tools
- OBIEE nqcmd Tidbits
- Instrumenting OBIEE Database Connections For Improved Performance Diagnostics
- An Introduction to Analysing ODI Runtime Data Through Elasticsearch and Kibana 4
- OBIEE Monitoring and Diagnostics with InfluxDB and Grafana
- Concurrent RPD Development in OBIEE
2014 25
- Linux cluster sysadmin -- OS metric monitoring with colmux
- Linux cluster sysadmin -- Parallel command execution with PDSH
- Linux cluster sysadmin -- SSH keys
- OBIEE SampleApp v406 Amazon EC2 AMI - available for public use
- Auditing OBIEE Presentation Catalog Activity with Custom Log Filters
- Analytics with Kibana and Elasticsearch through Hadoop - part 2 - Getting data into Elasticsearch
- Analytics with Kibana and Elasticsearch through Hadoop - part 3 - Visualising the data in Kibana
- Analytics with Kibana and Elasticsearch through Hadoop - part 1 - Introduction
- Monitoring OBIEE with Elasticsearch, Logstash, and Kibana
- Using rlwrap with Apache Hive beeline for improved readline functionality
- First-timer tips for Oracle Open World
- OBIEE SampleApp in The Cloud: Importing VirtualBox Machines to AWS EC2
- SampleApp v406 - Automatic startup of OBIEE
- Visual Regression Testing of OBIEE with PhantomCSS
- Mobile App Designer mis-configuration error
- Extended Visualisation of OBIEE Performance Data with Grafana
- BI Forum 2014 preview - No Silver Bullets : OBIEE Performance in the Real World
- Visualising OBIEE DMS metrics with Graphite
- Built-In OBIEE Load Testing with nqcmd
- Installing obi-metrics-agent, Graphite, and collectl
- Introducing obi-metrics-agent - an Open-Source OBIEE Metrics Collector
- Date formatting in OBIEE 11g - setting the default Locale for users
- Exploring OBIEE Web Services through Python
- Automated Regression Testing for OBIEE
- OBIEE Regression Testing - An Introduction
2013 23
- Make Use of OBIEE's Command Line Tools with Reduced Exposure of Plain Text Passwords
- Monitoring OBIEE Performance for the End User with JMeter from EM12c
- Collecting Usage Tracking Data with Metric Extensions in EM12c
- Building alerts in EM12c with OBIEE Usage Tracking data
- OBIEE "Act As" (ActAs) vs "Impersonate"
- Tips and Tricks for the OBIEE linux sysadmin
- TimesTen and OBIEE port conflicts on Exalytics
- The Rittman Mead scripts github repository
- Learn OBIEE 11.1.1.7 from the experts!
- Patch OBIEE the quicker way - with OPatch napply
- Using OBIEE SampleApp 305 in VM Fusion
- Testing aggregate navigation on OBIEE and Exalytics
- Incremental refresh of Exalytics aggregates using native BI Server capabilities
- Upgrading OBIEE to 11.1.1.7
- Performance and OBIEE - part I - Introduction
- Performance and OBIEE - part II - Test - Define
- Performance and OBIEE - part III - Test - Design
- Performance and OBIEE - part IV - Test - Build
- Performance and OBIEE - part V - Execute and Measure
- Performance and OBIEE - part VI - Analysing results
- Performance and OBIEE - part VII - Optimising OBIEE performance ("Tuning")
- Performance and OBIEE - Summary and FAQ
- Incremental refresh of Exalytics Aggregates using TimesTen
2012 20
- Alternatives to the Summary Advisor for Refreshing Exalytics Aggregates
- Advanced monitoring of OBIEE with Nagios
- An introduction to monitoring OBIEE with Nagios
- Automated Monitoring of OBIEE in the Enterprise - an overview
- OBIEE / AD integration - [OBI-SEC-00022] Identity found ... but could not be authenticated
- Advanced Presentation Services settings for OBIEE testing & development
- OBIEE / FMW and networking on DHCP hosts
- Exalytics - TimesTen and OBIEE connectivity
- OBIEE 11.1.1.6.2 BP1 - Logical SQL Diagnostic view
- Applying patches to OBIEE : 11.1.1.6.2 BP1
- Downloading OBIEE patches from Oracle with wget
- Running the RCU from the commandline
- OBIEE Administration Tool - Import Metadata shows no schemas
- OBIEE performance tuning myth : BI Server logging
- Public training schedule for 2012-H2 announced
- screen and OBIEE
- RittmanMead Webinar Series 2012
- New Training Courses and Seminars from Rittman Mead
- Configuring OBI 11g to use port 80
- Scripted OBI 11g Linux startup/shutdown
2011 36
- Event Triggers in BI Publisher 11g
- Blogging
- Accessing BI Publisher 11g Web Services through a JDeveloper Web Service Proxy
- Calling BI Publisher 11g Web Services from BPEL
- Web Services in BI Publisher 11g
- Instrumenting OBIEE - the final chapter
- OBI 11g : UPGAST-00055: error reading the Oracle Universal Installer inventory
- Oracle - tnsping - Message 3513 not found; product=NETWORK; facility=TNS
- Sourcecode markup tweaks in Wordpress
- Friday miscellany
- DBMS_STATS - GATHER AUTO
- Using preupgrade to upgrade Fedora 14 to Fedora 15 - proxy errors
- Labelling Time axes in Excel
- A quotation to print out and stick on your wall
- New blog from Oracle - OBI Product Assurance
- Did you hear that thunk? That was me falling off my chair in shock
- Have you defined CLIENT_ID in OBIEE yet?
- OBIEE 10.1.3.4.2 released
- ODI 10g connectivity problem with OCI
- Security issue on OBIEE 10.1.3.4.1, 11.1.1.3
- Undocumented nqcmd parameters
- Oracle 11g - How to force a sql_id to use a plan_hash_value using SQL Baselines
- Global statistics high/low values when using DBMS_STATS.COPY_TABLE_STATS
- Data Warehousing and Statistics in Oracle 11g - Automatic Optimizer Statistics Collection
- OBIEE performance - get your database sweating
- Entertaining Exadata FUD from HP
- Oracle documentation - available on Kindle and iPad
- Oracle XE 11gR2 installation - "OracleXEService should not be installed already"
- Getting good quality I/O throughput data
- Comparing methods for recording I/O - V$SYSSTAT vs HP Measureware
- OBIEE Systems Management - dodgy counter behaviour
- Shiny new geek toys -- rrdtool and screen
- Changing LDAP settings in an OBIEE RPD with UDML
- Instrumenting OBIEE for tracing Oracle DB calls
- Materialised Views - PCT Partition Truncation
- Oracle Whitepaper - "Best Practices for a Data Warehouse on Oracle Database 11g"
2010 46
- Data Warehousing and Statistics in Oracle 11g - incremental global statistics
- Adding OBIEE monitoring graphs into OAS
- Charting OBIEE performance data with gnuplot
- Collecting OBIEE systems management data with jmx
- OBIEE monitoring
- OBIEE 10g - javahost hang
- Troubleshooting OBIEE - LDAP (ADSI) authentication
- A Poor Man's OBIEE EM/BI Management Pack
- Analysing ODI batch performance
- Does this summarise your system development & support ethos?
- Two excellent OBI presentations from Jeff McQuigg
- Graphing I/O data using gnuplot and Oracle V$SYSSTAT
- awk - split a fixed width file into separate files named on content
- When is a bug not a bug? When it's a "design decision"
- A good maxim to bear in mind when designing reports
- Better safe than sorry...sanitising DB input
- TortoiseSVN doesn't prompt for authentication
- The danger of averages - Measuring I/O throughput
- RTFM? But where TF is the FM? >> Offline searchable OBIEE 11g documentation
- A fair bite of the CPU pie? Monitoring & Testing Oracle Resource Manager
- Misbehaving Informatica kills Oracle
- BI Publisher - error creating Quartz tables
- Measuring real user response times for OBIEE
- Scripts to extract information from OBIEE NQQuery.log
- OBIEE 11g launch date - 7th July 2010
- Performance Testing and OBIEE
- My first presentation - afterthoughts
- RittmanMead BI Forum 2010
- Validating EBS-BI authentication, without BI
- What am I missing here??? ORA-01017: invalid username/password; logon denied
- Rtfal
- Opera + Oracle EM = true love
- My first presentation - help!
- OBIEE 11g tidbit - XUDML support
- ORA-13757: "SQL Tuning Set" "string" owned by user "string" is active.
- Securing OBIEE Systems Management JMX for remote access
- Who's been at the cookie jar? EBS-BI authentication and Load Balancers
- OBIA 7.9.6 Performance Recommendations
- Oracle Support Blog back online, kinda.
- Oracle Support blog no more
- Exadata V2 POC numbers
- Illustrating data
- Brilliant performance articles by Cary Millsap
- Identify your OBIEE users by setting Client ID in Oracle connection
- How to resolve "[nQSError: 12002] Socket communication error at call=: (Number=-1) Unknown"
- Hardening OAS
2009 94
- libnnz10.so: cannot restore segment prot after reloc: Permission denied
- Running the OBIEE admin tool on Unix
- Caf
- Troubleshooting Presentation Services / analytics connectivity
- UKOUG TEBS 2009
- I think this summarises everything.
- OBIEE application servers, now and future
- SoOotW and sweep
- Resolved: sawserver : Error loading security privilege /system/privs/catalog/ChangePermissionsPrivilege
- Deploying Oracle Business Intelligence Enterprise Edition on Sun Systems
- #Fail: My Oracle Support
- OBIEE clustering - specifying multiple Presentation Services from Presentation Services Plug-in
- Advanced Googling for OBIEE information
- CAF installation video
- Experts
- The state of OBIEE on the web
- The mind boggles...
- Troubleshooting OBIEE and ORA-12154: TNS:could not resolve the connect identifier
- Critical Patch Update - OBIEE vuln CVE-2009-1990
- OTN forum - "Pro"
- New OBIEE blogs
- BI Server hung - nQSError 14054 / 15001 / 23005
- Heads up - Critical Patch Update affecting OBIEE
- New OBIEE benchmark - 50,000 users
- OBIA 7.9.6.1 released
- Usage Tracking - only half the story ...
- OBIEE and HP Performance Center (a.k.a. LoadRunner) - Notes
- Performance testing OBIEE using HP Performance Center (a.k.a. LoadRunner)
- James Morle : Spotting the Red Flags (Part 1 of n)
- SQL Developer v2.1 Early Adopter released
- Changing password on Oracle 11g from 10g clients (ORA-28001 -> ORA-01017)
- Collated OBIEE benchmarks
- OBIEE benchmarks
- OBIEE cluster controller failover in action
- OBIEE on Opera 10 / IE 7 / FF 3.5 / Chrome 4
- Syntax for AdminTool.exe command line script
- AdminTool.exe /command
- Metalink 3 followup
- RSS feeds for OBIEE, including del.icio.us obiee tags
- CAF troubles
- Metalink 3 RIP
- Multiple RPDs on one server - Part 1 - the BI Server
- Multiple RPDs on one server - Part 2 - Presentation Services
- OBIEE error/message code reference
- Tech Support Cheat Sheet [xkcd.com]
- OBIEE and Load Runner - part 2
- Querying SQL Server from OBIEE running on Unix
- Do you mean (pt II)
- Logging specific types of sawserver activity
- OBIEE and Load Runner - part 1
- sawserver log - short format
- OTN forums - different URL to get prompted to login less often
- Unix script to report on OBIEE and OBIA processes state
- OBIA upgrade 7.9.5 to 7.9.6 - first thoughts
- Repository Error ([REP_51821] Failed to connect from Integration Service (pmserver) to repository Oracle_BI_DW_Base running in exclusive mode.)
- Clean install of OAS - Enterprise Manager not available
- Google vs Bing
- OBIA grumble
- What is OBIA...
- OBIEE performance monitoring and alerting with jManage
- How to find out what web application server is in use
- Maker's Schedule, Manager's Schedule
- ORA-00922: missing or invalid option
- Metalink 3 - Do You Mean ... ?
- OBIEE Windows PerfMon counters
- Mark Rittman's OBIEE repository for DAC
- psservice - Windows command line goodness!
- sawserver charts crash
- sawserver logging configuration - logconfig.xml
- Oracle BI Management / Systems Management MBeans
- JConsole / JMX - followup
- OBIEE admin tools & hacks
- OTN forum rant
- JConsole / JMX
- nqcmd and [nQSError: 27005] Unresolved column
- Custom HTTP error page in OBIEE / OAS
- New releases
- OBIEE and F5 BIG-IP
- Google and Korean OTN forums
- OAS bug 7132128 - Send notification: oracle.ons.Notification
- OAS makes you log in twice
- sawserver won't start up - resolved
- Troubleshooting an HPUX program
- Bug in Clustered Publisher Scheduler - ClusterManager: detected 1 failed or restarted instances
- sawserver won't start (analytics: Servlet error java.net.ConnectException: Connection refused (errno:239))
- ODI Server install - missing odiparams.sh file
- Remove windows line feed characters in vi
- ORA-12537 / ORA-12518 [Informatica DAC error CMN_1022]
- Clustering Publisher - Scheduler and Report Repository
- Firefox add-ins - ones I find useful
- Metalink Metalink Metalink
- Which jdbc driver to use
- Finding config files in unix
- OBIEE Publisher - configuring connection to clustered BI Server