Dave Abercrombie

Dave Abercrombie

Oakland, California, United States
568 followers 500+ connections

About

I have a deep understanding of database performance, tuning, and scalability. I am…

Experience

  • Sharethrough

    San Francisco Bay Area

  • -

    San Francisco Bay Area

Publications

  • Monetizing Millions of Mobile Users with Cloud Business Analytics

    MicroStrategy World 2013

    Tapjoy’s platform allows advertisers to reach millions of mobile devices. This generates huge volumes of interaction data that are stored in a Vertica database. Learn how Tapjoy is using MicroStrategy Cloud with Vertica to track, analyze, and distribute information to internal and external users. This presentation will also provide practical, technical advice on implementing MicroStrategy Cloud on the Vertica "Big Data" database.

    See publication
  • NoCOUG presentation: Network graph databases, semantic modeling, SPARQL queries, and social network analysis

    NoCOUG

    Consider the challenges you face trying to analyze a social network using traditional relational database technologies. Sure, you could find the friends of my friend's friends using Oracle's CONNECT BY clause. But could you assess a network's cohesiveness? Could you detect communities, or bridges between communities? Could you find members with strategic, central positions? These are very hard problems to solve using SQL.

    Network graph databases provide a way to answer such questions…

    Consider the challenges you face trying to analyze a social network using traditional relational database technologies. Sure, you could find the friends of my friend's friends using Oracle's CONNECT BY clause. But could you assess a network's cohesiveness? Could you detect communities, or bridges between communities? Could you find members with strategic, central positions? These are very hard problems to solve using SQL.

    Network graph databases provide a way to answer such questions with relative ease. This presentation provides a crash course in network graph database technology. You will learn about subject-predicate-object "triples," the Resource Description Framework (RDF), the importance of URIs, and semantic modeling using RDFS and OWL. You will see a graph database query language, SPARQL, in action.

    Several network graph databases have been developed, including AllegroGraph, OpenLink Virtuoso, and BigOWLIM. But guess what? You can do this in Oracle too, using Oracle Database Semantic Technologies! Please join me for a quick overview of these fascinating technologies.

    See publication
  • Book review: Pro Oracle SQL (Karen Morton, et al., Apress 2010)

    NoCOUG Journal

    An excellent resource for the Oracle SQL developer. It covers the basics well; topics such as access and join methods, execution plans, index design, plan stability, etc., are approached in a very practical way. However, what makes this book indispensable is its coverage of topics such as analytic functions, the MODEL clause, subquery factoring, and advanced DML. Helpful code listings and examples guide any reader toward greater proficiency with Oracle SQL.

    See publication
  • Book review: Oracle Database 11g—Underground Advice for Database Administrators (April Sims. Packt 2010)

    NoCOUG Journal

    This book has a very broad scope, and the author’s passion for Oracle’s extensive management toolset carries this book forward. Its expansive scope inspires you with the notion that you will learn to fully diagnose and manage all aspects of an Oracle database. Skim this book to get an idea of what is possible in Oracle 11g, but be sure to study the recommended outside sources before taking this book’s advice.

    See publication
  • NoCOUG Presentation: Estimating Cardinality and Query Execution Cost: Use of Jonathan Lewis CBO Methodology

    NoCOUG

    To successfully tune a query, you need to be able to think like Oracle's query optimizer. Sure, it helps to have intuitive, general knowledge, based on experience and informal rules of thumb. But such general knowledge can take you only so far. To really understand the optimizer, you need to be able to reproduce its cost estimates. Jonathan Lewis has published reverse-engineered optimizer algorithms in his book "Cost-Based Oracle Fundamentals" (Apress 2006). In this presentation, Dave…

    To successfully tune a query, you need to be able to think like Oracle's query optimizer. Sure, it helps to have intuitive, general knowledge, based on experience and informal rules of thumb. But such general knowledge can take you only so far. To really understand the optimizer, you need to be able to reproduce its cost estimates. Jonathan Lewis has published reverse-engineered optimizer algorithms in his book "Cost-Based Oracle Fundamentals" (Apress 2006). In this presentation, Dave Abercrombie will lead you through those algorithms using real-world examples. You will gain a degree of understanding and confidence with the Oracle optimizer that will improve your tuning skills. This presentation builds upon previous presentations on physical data storage and reading execution plans.

    See publication
  • Book review: DBA Survivor Become a Rock Star DBA (Thomas LaRock, Apress 2010)

    NoCOUG Journal

    This book is about working effectively as a DBA. It does not address technical details and does not cover Oracle at all. The book focuses on communication and collaboration from the perspective of a newly hired DBA. This perspective is fresh and insightful, and provides general lessons that can benefit even well-seasoned DBAs.

    See publication
  • Book review: Expert Oracle Practices (Oak Table Network, Apress 2010)

    NoCOUG Journal

    This book covers a wide variety of critically important topics. Each chapter author is a recognized expert in their field, and each chapter is infused with practical, real-world experience. Each chapter includes illustrative and informative examples. The topics cover a very wide range: design, troubleshooting, monitoring, tuning, firefighting, very large databases, running on Windows, cloud computing, and security. Most of the chapters are technical, but plenty of organizational and…

    This book covers a wide variety of critically important topics. Each chapter author is a recognized expert in their field, and each chapter is infused with practical, real-world experience. Each chapter includes illustrative and informative examples. The topics cover a very wide range: design, troubleshooting, monitoring, tuning, firefighting, very large databases, running on Windows, cloud computing, and security. Most of the chapters are technical, but plenty of organizational and collaborative advice is also included. Although it is unlikely that your work spans all of these topics, you will certainly find direct and immediate benefit from one or more of the chapters. Reading the other chapters is an excellent and easy way to broaden your outlook and improve your skills.

    See publication
  • NoCOUG Presentation: SQL Execution Plans, DBMS_XPLAN, and Cardinality Feedback

    NoCOUG

    Before you can tune an SQL statement, you need to obtain, and interpret, an execution plan. These steps are not trivial. Misunderstandings and confusion are common. In this presentation, you will learn how to correctly obtain and interpret an SQL execution plan. You will learn the many wonders of Oracle's DBMS_XPLAN, and you will be introduced to the essential technique called "Cardinality Feedback" that was pioneered by Wolfgang Breitling. Most importantly, you will learn how to avoid common…

    Before you can tune an SQL statement, you need to obtain, and interpret, an execution plan. These steps are not trivial. Misunderstandings and confusion are common. In this presentation, you will learn how to correctly obtain and interpret an SQL execution plan. You will learn the many wonders of Oracle's DBMS_XPLAN, and you will be introduced to the essential technique called "Cardinality Feedback" that was pioneered by Wolfgang Breitling. Most importantly, you will learn how to avoid common mistakes in reading execution plans. With these skills, you will be able to eliminate guess work, and increase your SQL tuning efficiency, accuracy, and confidence.

    See publication
  • Hotsos Presentation: End-to-End Metrics for Troubleshooting and Monitoring

    Hotsos

    This paper provides practical advice, based on years of real-world usage, to help you get the most out of this API. For example, effective use of this API requires several compromises and balancing decisions:
    * The tags should be at an appropriate level of detail: not as low as individual SQL statements (which are already known by SQL_ID), and not so high that necessary detail is lost.
    * The tags must be rather short (32, 48, or 64 characters), so brevity is important.
    * Not all tags…

    This paper provides practical advice, based on years of real-world usage, to help you get the most out of this API. For example, effective use of this API requires several compromises and balancing decisions:
    * The tags should be at an appropriate level of detail: not as low as individual SQL statements (which are already known by SQL_ID), and not so high that necessary detail is lost.
    * The tags must be rather short (32, 48, or 64 characters), so brevity is important.
    * Not all tags get swept up into all diagnostic tables, so it is non-trivial to decide which ones to use.
    Use of this API can help improve communication between developers and DBAs. Overhead costs of this API will also be presented.

    See publication
  • Book review: Oracle Performance Survival Guide (Guy Harrison, Pearson 2009)

    NoCOUG Journal

    An encyclopedic overview of all aspects of Oracle performance, addressing all layers from high-level application design through SQL tuning, PL/SQL, locks, and contention, all the way down to memory configuration and disk layout

    See publication
  • Book review: Oracle Performance Firefighting (Craig Shallahamer, OraPub 2009)

    NoCOUG Journal

    Craig Shallahamer has written a practical, informative, and very clear book that integrates important Oracle performance and scalability topics with valuable communication and problem-solving advice. His lively explanations of latching, wait events, the buffer cache, the shared pool, and redo mechanisms alone are worth the price of the book. Combined with excellent communication tips, a foundation of queuing theory, real-world examples, and a freely available toolkit, this book is truly…

    Craig Shallahamer has written a practical, informative, and very clear book that integrates important Oracle performance and scalability topics with valuable communication and problem-solving advice. His lively explanations of latching, wait events, the buffer cache, the shared pool, and redo mechanisms alone are worth the price of the book. Combined with excellent communication tips, a foundation of queuing theory, real-world examples, and a freely available toolkit, this book is truly invaluable.

    See publication
  • NoCOUG Presentation: Physical Data Storage for the Application Developer

    NoCOUG

    A basic understanding of how Oracle stores and retrieves data is essential for understanding performance issues. Such knowledge enables the developer to design scalable, high performance application code and data structures. By addressing scalability at the earliest stages of development, you can prevent expensive problems down the road. So this presentation is geared towards the developer, rather than the DBA. After this presentation, you will be able to answer questions such as the…

    A basic understanding of how Oracle stores and retrieves data is essential for understanding performance issues. Such knowledge enables the developer to design scalable, high performance application code and data structures. By addressing scalability at the earliest stages of development, you can prevent expensive problems down the road. So this presentation is geared towards the developer, rather than the DBA. After this presentation, you will be able to answer questions such as the following:
    Will an index help, and if so, what kind of index do I need?
    Why isn't my index being used?
    Can't I just iterate through my result set in Java, since it is so much easier than learning SQL?
    Why does my query work great on my development box, but is lousy in production?
    What is the best way to measure query performance?
    Since I am not sure which columns I might need, why shouldn't I just always "select *"?

    See publication
  • NoCOUG Presentation: End-to-End Metrics for Troubleshooting and Monitoring

    NoCOUG

    Oracle provides an API to "tag" a session with descriptive strings from your application. These tags are exposed in V$SESSION, which provides a real-time window into session activity or status. In addition, these session-level tags get copied into Oracle's diagnostics such as ASH and AWR, where they provide essential context for troubleshooting. These tags can also be used to trigger tracing events. This API is available in PL/SQL ("dbms_application_info"), JDBC ("End-to-End Metrics"), and…

    Oracle provides an API to "tag" a session with descriptive strings from your application. These tags are exposed in V$SESSION, which provides a real-time window into session activity or status. In addition, these session-level tags get copied into Oracle's diagnostics such as ASH and AWR, where they provide essential context for troubleshooting. These tags can also be used to trigger tracing events. This API is available in PL/SQL ("dbms_application_info"), JDBC ("End-to-End Metrics"), and OCI.

    See publication
  • Hotsos Presentation: A Tour of the AWR Tables

    Hotsos

    Topics include:

    Important AWR tables, their contents, how to join them, and their quirks and limitations.
    * Sample queries that can be easily adapted to focus on your own unique set of problems.
    * Estimating the "Average Active Session" metric.
    * Simple statistical techniques to find spikes and other types of anomalous behavior.
    * A comparison of techniques used for historical scalability studies with those used for real-time performance crisis resolution..
    * Use of…

    Topics include:

    Important AWR tables, their contents, how to join them, and their quirks and limitations.
    * Sample queries that can be easily adapted to focus on your own unique set of problems.
    * Estimating the "Average Active Session" metric.
    * Simple statistical techniques to find spikes and other types of anomalous behavior.
    * A comparison of techniques used for historical scalability studies with those used for real-time performance crisis resolution..
    * Use of DBMS_APPLICATION_INFO and JDBC end-to-end metrics.
    * Useful tips on configuring AWR.

    See publication
  • NoCOUG Presentation: A Tour of the AWR Tables

    NoCOUG

    Introduced in version 10g, Oracle's Automatic Workload Repository (AWR) provides diagnostic information for performance and scalability studies, automatically recording a rich variety of database performance statistics.

    What's the best way to leverage this wealth of data? While you can run Oracle-supplied AWR reports, or use Oracle features such as the Automatic Database Diagnostic Monitor (ADDM), each Oracle database presents its own unique tuning challenges. In this session you'll…

    Introduced in version 10g, Oracle's Automatic Workload Repository (AWR) provides diagnostic information for performance and scalability studies, automatically recording a rich variety of database performance statistics.

    What's the best way to leverage this wealth of data? While you can run Oracle-supplied AWR reports, or use Oracle features such as the Automatic Database Diagnostic Monitor (ADDM), each Oracle database presents its own unique tuning challenges. In this session you'll learn how to work directly with AWR tables, using customized queries to improve insight into your own particular scalability issues.

    See publication

Courses

  • Machine Learning 101 at the Hacker Dojo

    -

  • Machine Learning 102 at the Hacker Dojo

    -

  • MicroStrategy Advanced Data Warehousing

    -

  • MicroStrategy Architect: Advanced Project Design

    -

  • MicroStrategy Architect: Project Design Essentials

    -

  • MicroStrategy Desktop: Reporting Essentials

    -

  • MicroStrategy Mobile App Platform Workshop

    -

  • Vertica Advanced Performance Tuning

    -

View Dave’s full profile

  • See who you know in common
  • Get introduced
  • Contact Dave directly
Join to view full profile

Other similar profiles

Explore collaborative articles

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

Explore More

Others named Dave Abercrombie in United States

Add new skills with these courses