Database architectures are constantly evolving due to new hardware technologies and new application requirements. Oracle database takes advantage of these new technologies without requiring application changes while at the same time enabling new types of applications. To utilize modern storage technologies effectively, it is essential to process data close to the storage. For over a decade, Oracle has been developing the Exadata Database Machine with Hybrid Columnar Compression and In Flash Columnar, and Database In-Memory, to achieve this goal. We aggressively push filtering, aggregations, projections, and joins into storage so we only need to return the data that will actually be used higher in the query. In this presentation I will introduce these technologies and discuss how they are tuned for different layers in the storage hierarchy.