Working with Students to Improve Indexing in Apache Hive

Visit the post for more.

John Sichi
7 min readintermediate
--
View Original

Overview

The article discusses a collaborative project between Facebook Engineering and a team of undergraduate students from Harvey Mudd College aimed at enhancing indexing capabilities in Apache Hive. The initiative not only contributed to the development of new indexing features but also provided students with valuable real-world software development experience.

What You'll Learn

1

How to enhance indexing support in Apache Hive

2

Why automatic index usage is beneficial for query performance

3

When to apply bitmap indexing for efficient data retrieval

Prerequisites & Requirements

  • Basic understanding of indexing concepts in databases
  • Familiarity with Apache Hive and open source collaboration tools(optional)

Key Questions Answered

What was the main goal of the student project with Facebook?
The main goal was to enhance indexing support in Apache Hive by adding automatic index usage and introducing a new index type, bitmap indexing, which helps accelerate queries across multiple attributes.
What benefits did bitmap indexing provide during the project?
Bitmap indexing demonstrated significant space savings and improved query performance, especially for columns with few distinct values, making it a valuable addition to the indexing capabilities of Apache Hive.
How did the students manage their project effectively?
The student team managed their project through self-planning and regular weekly conference calls with Facebook liaisons, which provided guidance and a structured review cycle to track their progress.
What challenges did the students face while working on Apache Hive?
The students encountered challenges related to the complexity of Hive's codebase, which often left them feeling overwhelmed when switching tasks. However, they learned to seek help quickly when stuck, which was crucial for their success.

Key Statistics & Figures

Benchmark results
Significant space savings from bitmap index compression
This was observed during the students' presentations, showcasing the effectiveness of the new indexing approach.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Key Actionable Insights

1
Engage with open source communities to enhance project outcomes.
Collaboration with other teams, such as Persistent Systems, allowed the student team to share ideas and approaches, ultimately leading to better solutions for their indexing project.
2
Implement regular check-ins during project development.
The weekly conference calls with Facebook liaisons provided structured feedback and helped the students stay on track, emphasizing the importance of communication in project management.
3
Utilize existing open source resources to accelerate development.
The students leveraged prior open source work to build their bitmap indexing feature, highlighting the value of utilizing community resources to overcome development hurdles.

Common Pitfalls

1
Underestimating the complexity of the codebase can lead to frustration and delays.
Students experienced challenges when switching tasks, often feeling overwhelmed by Hive's complexity. To avoid this, it's essential to allocate sufficient time for familiarization with the codebase before diving into new tasks.

Related Concepts

Indexing In Databases
Open Source Collaboration
Apache Hive Features
Bitmap Indexing