Skip to content

Software Engineering Radio

The Podcast for Professional Software Developers

Archive

Tag: database

Recording Venue: Skype

Guest: Michael Hunger

Michael HungerMichael Hunger of Neo Technology, and a developer on the Neo4J database, joins Robert to discuss graph databases. Graph databases fall within the larger category of NoSQL databases but they are not primarily a solution to problems of scale. They differentiate themselves from RDBMS in offering a data model built with graphs rather than tables. Michael provides insight into many conceptual questions including: What is a graph? Is the world a graph? When are graphs a better representation of a problem than tables? When does a graph database outperform a relational database? How do graph databases scale? Michael also provides some insights into how thinking in terms of graphs changes the way that engineers view their domain. Graph databases are able to natively support queries that would be nearly impossible to express in SQL. The discussion also covers the consistency models of graph databases and an overview of the development environment for graph databases. Finally, the guest gives an overview of the emerging graph database space and where we are on the adoption curve.

Play

Recording Venue: Skype

Guest: Eric Lubow

Eric LubowEric Lubow and Robert discuss polyglot persistence, a term used to describe systems that incorporate multiple specialized persistent stores rather than a single general-purpose database.  Eric provides insights into the forces driving this trend:  including diverse data usage patterns, low latency, and increasing volumes of data.  The emergence of many free storage servers that perform well much better than most general-purpose databases for specific usage patterns has made polyglot persistence cost-effective.   Eric shares some of his experiences deploying storage solutions, programming languages, and the driver libraries.  Eric and Robert wrap up with a discussion of the impact of polyglottism on architecture and testing.  Along the way, they explore the cultural shifts that need to take place as organizations move from the one-size-fits-all model.

Play

Recording Venue: Lucene Revolution 2012 (Boston)

Guest: Grant Ingersoll

Grant IngersollGrant Ingersoll, a committer on the Apache Solr and Lucene, talks with Robert about the  problems of full-text search and why applications are taking control of their own search, and then continues with a dive into the architecture of the Solr search engine. The architecture portion of the interview covers the Lucene full-text index, including the text ingestion process, how indexes are built, and how the search engine ranks search results.  Grant also explains some of the key differences between a search engine and a relational database, and why both have a place within modern application architectures.  They close with a discussion of how Solr can scale up to serve very large indexes.

Play

Recording Venue: Skype

Guest: Martin Fowler and Pramod Sadalage

Martin FowlerPramod SadalageIn this episode, we talk with Pramod Sadalage and Martin Fowler about database evolution and agile database development. We discuss the basic challenges for working with a database in an agile development culture and how to include database design and most of all, database evolution, in the usually short development cycles of modern software development methods. We talk about continuous integration for database-related code changes using scripted database schema changes, the usage of multiple database schemas to overcome centralized deployments for development teams, how to migrate data in incremental steps, and what tools can help in this agile environment. We discuss how to break down database refactorings in small and incremental steps, one of the most important parts of integrating database changes into an agile development flow.

Play

Recording Venue: MongoSF, San Francisco

Guest: Dwight Merriman

Dwight Merriman

As application data size and throughput have outgrown the processing and storage needs of commodity servers, replication has become an increasingly important strategy. In this episode, Robert talks with Dwight Merriman about database replication. Topics covered include replication basics, master-slave versus master-master, failure and recovery, replication versus backup, whether replication primarily for scaling or for availability, and the internals of MongoDB replica sets.

Play

Recording Venue: Phone

Guest: Jeff Frey

Jeff Frey

System z, or the Mainframe, holds most of us in awe — the ultimate computing platform, referenced in Hollywood as well as by those who thought they were dealing with “legacy” systems — but what does Mainframe really mean? What does its stack look like?

This leading virtualized infrastructure is not just hardware, but advanced sets of operating system, programming, and transaction-processing platforms that are relied-upon worldwide for massive-scale computational and data needs, and that are becoming increasingly applicable to the cloud world. Jeff Frey, IBM fellow and CTO for System z platform speaks with SE-Radio’s Scott Jensen about the history, features, and architecture of one of the world’s largest retail computers.

Play

Recording Venue: Oracle Java One 2010, San Francisco
Guest: Nati Shalom

Host: Robert

In this episode, Robert talks with Nati Shalom about the emergence of large-system architectures consisting of a grid of high-memory nodes. As memory has become faster and cheaper more rapidly than has disk storage, application state has increasingly migrated to memory in the form of caches. Memory grids take this one step further, using memory as the system of record and disk is used as a write-behind journal for recovery purposes.  Data and processing are colocated on the same node, which hosts what would be multiple tiers in the popular multi-tiered architectures. Data partitioning and distributed algorithms such as map-reduce become critical design decisions. Nati also discusses reliability and availability considerations of memory grids.

Links:

Play

Recording Venue: Skype
Guest(s): Doug Simon

Host(s): Martin
In this episode we talk with Doug Simon from Sun Microsystems Laboratories about the Maxine Research VM, a so-called meta-circular virtual machine. Maxine is a JVM that is written itself in Java, but aims at taking JVM development to the next level while using highly integrated Java IDEs as development environments and running and debugging the VM itself directly from the Inspector, an IDE-like tool specialized for the Maxine VM. During the episode we talk about the basic ideas behind Maxine, what exactly “meta-circular” means and what makes it interesting and promising to build a Java VM in Java. We talk about the relationship to Sun’s current production JVM (HotSpot) and about ideas and directions for the future of Maxine.

Links:

Play