ICOODB 2010

3rd International Conference on Objects and Databases
September 28-30, 2010
Frankfurt am Main, Germany
Home Programme Industry Track

Industry Track


1. Presentation (29. September, 14:00)
Title: Approaches to Data Modeling in Non-Relational Systems using Apache Cassandra
Author: Gary Dusbabek (Rackspace)
Abstract: Faced with the costs of vertically scaling their relational database systems, some application developers have considered NOSQL databases, including Apache Cassandra, as alternatives. These databases solve the scaling problem by partitioning data, expanding horizontally and promising “eventual” consistency. Effectively utilizing these new databases requires that developers take different approaches to the ways they model data used in their applications. Specifically, developers must cope without transactions, ad-hoc queries or automatic indexes. Further, developers who come from a strong RDBMS background will find they need to overcome dogmatic thinking, as some best practices are no longer best. Developers should also be aware of situations when Cassandra might not be the best tool for the job. In this presentation I will explore some of the motivation for using Cassandra, as well examine the modeling patterns that are emerging as more application developers adopt and become familiar with NOSQL databases. I will also explain some of the architecture internals of Cassandra as they relate to how application data can be most effectively modeled. I will conclude with a few brief case studies outlining how some companies are using Cassandra. Apache Cassandra is a fully distributed non-relational database that offers the ability to scale horizontally with no single point of failure. It features flexible, partially structured schema, customizable partitioning and multiple levels of indexing. Cassandra is in use at Digg, Twitter, Reddit, Facebook and Rackspace, and other companies that have large, active data sets. The largest production cluster has over 100 TB of data spread over more than 150 machines.


2. Presentation (29. September, 14:30)
Title: The PolePosition Database Benchmark
Author: Carl Rosenberger (db4o)
Abstract: One of the key reasons that object databases are chosen over other persistence solutions is their performance advantage, in particular for managing complex object models. The open source benchmark framework "PolePosition" (http://www.polepos.org/) can be used to make this advantage measurable and visible. PolePosition is freely available, allowing developers to run it on own hardware with a choice of databases and use cases. In this talk Carl Rosenberger demonstrates how to set up and run PolePosition and how to extend it with custom use cases ("Circuits".) He elaborates on the following recent enhancements for PolePosition: - A new concurrency feature to run use cases with various numbers of concurrent threads. - A new graphical visualization that compares results by order of magnitude against an average baseline. - Improved standard use cases that provide optimized performance for the respective database APIs used. Carl discusses a set of PolePosition results collected in a sample run and offers his interpretations. He explains the challenges to set up and run multiple database engines against each other in a fair way: - Making sure all database engines are configured to provide ACID behaviour. - Comparable configurations for memory usage, cache sizes and other tuning parameters. - Key pitfalls in benchmarking. (German proverb: "Wer misst misst Mist.")


3. Presentation (29. September, 17:00)
Title: MySQL Cluster - real time performance for web applications with 5x9 availability and sometimes SQL
Author: Bernd Ocklin (Sun Microsystems)
Abstract: While MySQL Cluster is perhaps best known as the high available real time storage engine for MySQL Server, it is a fully functional transactional database in its own right. Based on a distributed shared nothing and transactional key-value store no SQL is required to access the data. Million real time operations per second can be executed directly on the underlying MySQL Cluster with a simple set of functions. In parallel SQL, LDAP or other access methods can still be used to provide data management services to a broad range of applications. The new native Java connector ClusterJ and an additional OpenJPA plugin map Java objects to the highly available data store and allow 10x faster operations by avoiding the usual SQL layer. This session will introduce you to the MySQL Cluster technology, its performance in benchmarks, and shows how major mobile phone and web companies build highly available real time solutions based on MySQL Cluster. Sometimes even with SQL.


4. Presentation (29. September, 17:30)
Title: Objects, Tables and Performance
Author: Stefan Wittmann (InterSystems)
Abstract: The world of databases is facing new challenges at the moment. An old topic arises again; the impedance mismatch – which is one, if not “the” reason for the rise of the so called NoSQL movement. Relational databases struggle with the fact that most of the popular programming languages for developing front-end and application logic follow the object-oriented paradigm. Pumping data in and out from flat tables adds complexity which is not suitable for projects in need of performance – for whatever reason that may be: low latency, mass user interaction or complex model analysis… There are many scenarios for this. In this presentation the speaker will outline how InterSystems’ technology is an answer to most of the advanced database challenges. As a result of 30 years of research and development for databases Caché – multi-dimensional from the very beginning – is using efficient B+Trees for the lowest storage level. With the advent of object-oriented languages InterSystems added the possibility to model data in the object-oriented way and equally query the same data in a traditional relational way with SQL. The first part of the presentation will focus on the traditional object/relational access and demonstrate how objects can be pushed directly and transparently into the database. Both Java and .Net variants will be discussed here. Every change made on the data set through the OO way will be automatically reflected at the relational level and vice-versa. This behavior makes it very interesting to mix both worlds, using both techniques in parallel where the application benefits most from it. After discussing the more common problems the session will leave the well known areas and lead to InterSystems’ understanding of Optional- and NoSQL. For high performance applications it makes sense to establish an architecture which still allows flexible development and bypasses the performance penalties created by both object and even SQL management. This will be demonstrated in a Java environment in which one of InterSystems’ frameworks, called eXTreme, is used. eXTreme uses an in-process communication channel via JNI to propagate data changes directly from Java to the database storage for a maximum throughput. Therefore data can be directly pushed into the internal storage layer of the database not using the OO or SQL layer which allows astonishing insert and access rates. In order to complete the scenario the speaker will show how exactly the same data can be published and altered in an object-oriented and relational way.


5. Presentation (29. September, 18:00)
Title: db4o Best Practices
Author: Eric Falsken (db4o), Roman Stoffel (db4o)
Abstract: A demonstration and presentation of a set of best practices when using db4o in different environments. Targeting users who have already learned the basics of db4o and are ready to start building applications, or those who are looking for tips to improve existing line-of-business applications.


6. Presentation (30. September, 10:00)
Title: State of MariaDB
Author: Michael Widenius (main author of the original version of the open-source MySQL database)
Abstract: MariaDB 5.1 is branch of MySQL 5.1 and is drop in replacement for MySQL 5.1 with additional features, speed enhancements and bug fixes. The talk will describe in detail the new features in MariaDB 5.1 (stable), the new features in MariaDB 5.2 (beta / RC) and what's in the upcoming MariaDB 5.3 (alpha).The talk will also explains the challenges we have had to do this fork, and the various systems (like buildbot) that we used to build the binaries and how we are working with the MariaDB/MySQL community. This talk also includes information how we plan to continue developing MariaDB so that it still a drop in replacement of MySQL as times goes by.


7. Presentation (30. September, 10:30)
Title: Dynamic columns in MariaDB; A feature that allows one to have a different set of columns for each row in a SQL table
Author: Michael Widenius (main author of the original version of the open-source MySQL database)
Abstract: This talk is both a description of one of the new features being developed for MariaDB and a practical demo of how to use them. This solves one of the hardest real-world problem with traditional relational databases: How to handle the storage of thousands of different kind of items in one database when one needs to be able to easily access the different kind of attributes for each item, for example to do comparison between them. Traditionally this has been solved by having a separate attribute table for the items. but this limits the kind of values the attributes can have. For example, the same attribute table can't easily store both a number or a color from a set of colors. The feature is especially useful when building one-line shops, where one can store both coffee-mugs and trousers in the same table, each with their own set of attributes.


8. Presentation (30. September, 11:30)
Title: The Synergy Between the Object Database, Graph Database, Cloud Computing and NoSQL Paradigms
Author: Leon Guzenda (Objectivity)
Abstract: ODBMSs all share one inherent advantage over RDBMSs – their ability to leverage their unique object identifiers in support of fast navigational access. Objectivity/DB has been deployed in many such applications, particularly in the Intelligence Community. There has been a recent surge in interest in graph databases, which represent networks (graphs) of vertices connected via edges. InfiniteGraph is a new commercial product that supports the inherent scalability, distributed database and navigational performance of Objectivity/DB to implement an industrial strength graph database. This talk will describe the key features of InfiniteGraph and explain exactly why ODBMSs outperform RDBMSs in graph database applications. There has also been a growing number of extremely large (petabyte plus) databases that do not need all of the functionality that a traditional database provides. This trend has developed into the “NoSQL” movement. This talk will look at major technologies in this arena and show how an ODBMS can leverage the scalability and resilience of some of them. ODBMSs have been used in grid environments in the scientific community for over a decade. However, the commercialization of the paradigm to suit Internet-scale applications has lead to the evolution of cloud computing, which has moved rapidly into Information technology organisation’s mainstream operations. This talk will describe how Objectivity/DB has been deployed within several cloud infrastructures. Drawing all of these paradigms together, a case study will cover a practical application of InfiniteGraph, built on Objectivity/DB, deployed in a cloud environment and using a “NoSQL” file system. The speaker, Leon Guzenda, will also cover the new features of Objectivity/DB 10.1 and 10.2.


9./10. Presentation (29. September, 12:00)
Title: Accelerate Rapid Prototyping for Database Application
Author: Guido Rost (Versant)
Abstract: Rapid Prototyping is one of the key concepts of agile software development. However, creating and maintaining a database for a complex application data model can be quite time consuming and challenging. The Versant Object Database is as a perfect solution for this problem. The object database completely eliminates the need to create a separate database schema and implement complicated object to relational mapping code for the prototype. This does not only save development time and speeds up the iteration cycles. The resulting application has an up to 10 x higher throughput at runtime since no CPU intensive mapping code is needed. This session provides a live prototyping demonstration creating a small, yet realistic C# sample application to demonstrate the efficiency and versatility of the Versant Object Database API.


 

Gold Sponsors

Banner
Banner

Silver Sponsors

Banner

Bronze Sponsors

Banner
Banner

Supported by

Banner
Banner
Banner

Publisher Proceedings

Banner
Banner

Media Partners

Banner
Banner
Banner
Banner