Understanding Disk Rebuilds After Replacement in Exadata Compute Nodes

When a disk fails in an Exadata compute node, it should be replaced as soon as possible. Compute node disks are typically configured with RAID-5, which can tolerate only one disk failure. ⚠️ Important: RAID-5 does not create two copies of your data. It stores only one copy, with parity distributed across the other disksContinue reading “Understanding Disk Rebuilds After Replacement in Exadata Compute Nodes”

Partitioning in PostgreSQL vs Oracle

A customer who had migrated from Oracle to PostgreSQL several years ago recently reported a serious performance regression. A critical table—now holding over 700 million rows—had become extremely slow when filtering by date. As an DBA, I approached this from an Oracle perspective: partition pruning, local indexes. PostgreSQL partitioning is broadly similar to Oracle’s, butContinue reading “Partitioning in PostgreSQL vs Oracle”

When the Clustering Factor Strikes: How a “Perfect” Plan Turned into a 9-Second I/O Nightmare

This wasn’t a theoretical exercise—it was a real-world performance issue that left the database paralyzed.Let’s start with the global stats: The database wasn’t working—it was waiting.Over 90% of the query’s elapsed time was spent on I/O waits, meaning the database was stuck reading data from disk. Step 1: The Execution Plan At first view, theContinue reading “When the Clustering Factor Strikes: How a “Perfect” Plan Turned into a 9-Second I/O Nightmare”

Streamlit : Making Your Enterprise Knowledge Assistant AI Accessible

Last time, I built a working enterprise knowledge assistant in Python using RAG + OpenAI + Chroma. It could read documents, answer questions, and even remember chat history. Today, I’m taking it a step further: giving it a friendly web interface. Instead of typing commands in a terminal, employees can now interact with the assistantContinue reading “Streamlit : Making Your Enterprise Knowledge Assistant AI Accessible”

Building an Enterprise Knowledge Assistant with RAG, OpenAI, and a Vector Database

Many companies have a lot of documents — policies, procedures, meeting notes, and training materials.The problem: this knowledge is often hard to find. In this post, I’ll show how to build a simple Enterprise Knowledge Assistant using LangChain, OpenAI, and a vector database (Chroma).This AI assistant can read your internal files and answer employee questionsContinue reading “Building an Enterprise Knowledge Assistant with RAG, OpenAI, and a Vector Database”

Building a Simple RAG Q&A Assistant with LangChain and OpenAI

I recently explored how to combine LangChain and OpenAI’s GPT models to create an intelligent Retrieval-Augmented Generation (RAG) assistant. This project can read your local documents, store them in a searchable vector database, and answer questions based on your own text . What is RAG? RAG (Retrieval-Augmented Generation) is a powerful technique that combines informationContinue reading “Building a Simple RAG Q&A Assistant with LangChain and OpenAI”

Hello AI, Using OpenAI API with Python

Recently, I tried using OpenAI’s Python library for the first time — and I was amazed at how easy it is to create a conversational AI assistant with just a few lines of code. In this post, I’ll share my experience and a simple Python example that lets you chat directly with GPT right fromContinue reading “Hello AI, Using OpenAI API with Python”

Resizing an ASM Diskgroup on Exadata When OCR/Voting Files Are on It

When you try to shrink an ASM diskgroup that holds Oracle Clusterware files (OCR and voting disks), you may hit errors like: Why it happens Even though Oracle bugs 24568147 and 37688474 mention fixes in newer releases (19.27 RU+), this issue still reproduces in 19.28 and 23.8. The voting files are persisted in the ASMContinue reading “Resizing an ASM Diskgroup on Exadata When OCR/Voting Files Are on It”

Be Careful: EX80 Issue Can Wipe Out Your Exadata/ZDLRA X8/X9 Data!

Recently, our ZDLRA X8-2 was impacted by the EX80 issue, resulting in the loss of three disks within a very short time. Two of these disks were partner disks, causing the DELTA disk group to unmount and all customer data to be lost. Oracle Support confirmed that recreating the DELTA disk group was not anContinue reading “Be Careful: EX80 Issue Can Wipe Out Your Exadata/ZDLRA X8/X9 Data!”

What Is a Bloom Filter in Oracle Database?

When working with big databases, speed matters. Oracle uses many smart tricks to make things faster. One of these tricks is called the Bloom filter. In this post, I’ll explain what it is and how it helps Oracle database run queries faster — in simple terms! The Problem: Big Tables and Slow Joins Let’s sayContinue reading “What Is a Bloom Filter in Oracle Database?”