Jet Profiler 1.0.8 released
Jet Profiler now works on Intel 32 bit Mac Machines! Snow Leopard is required, as it includes the necessary Java version.
The release also contains some bug concerning memory leaks and software updates.
To upgrade the software, select Help, Check for upgrades from the menu. More details...
Comments
Oracle Database 11g helps BMW ORACLE Racing win America's Cup
I recently sat down with Ian "Fresh" Burns, design coordinator for the BMW ORACLE Racing trimaran, and talked about how technology helped win back the America's Cup. An amazing sight to see on the water, the BMW ORACLE Racing trimaran is able to travel at 4 times the wind speed, is as large as a baseball diamond, and has a wing sail that's 23 stories tall. Some of you will be interested to learn from Fresh how Oracle Database 11g played a major part in helping BMW ORACLE Racing win the oldest active trophy in International sport. Plus, Fresh shares a couple of other interesting bits about the race.
To learn more, tune into our podcast conversation with Fresh.

var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
try {
var pageTracker = _gat._getTracker("UA-13185312-1");
pageTracker._trackPageview();
} catch(err) {}
Oracle OpenWorld 2010 Call For Papers
Oracle OpenWorld 2010 Call For Papers is now open.
Oracle OpenWorld is the place to present your database ideas, experiences, and accomplishments to tens of thousands of the world's most demanding Oracle users.
Submit a database paper and you could present your ideas to the highest-profile technology thought leaders, C-level executives from the Fortune 100, peers from around the world, and the most-influential members of the media.
We are eager to hear your database ideas, implementations and experiences, and we invite you to share them with the entire Oracle community. Now is your chance to be heard. This CFPs closes 11:59 pm PDT on Sunday, March 21
Get started at http://ow.ly/1eJYk
We'll see you at the show!
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
try {
var pageTracker = _gat._getTracker("UA-13185312-1");
pageTracker._trackPageview();
} catch(err) {}
More book recommendations Comment Entries Recommendations
"InterXpress for Firebird" 2.3.0 released
"InterXpress for Firebird" is our driver that supports Borlands dbExpress technology! Today we release version 2.3.0 of our driver, this version includes support for Delphi 2010.
You can download a copy of it http://www.upscene.com .
Currently supported are Delphi 6, Delphi 7, BDS 2006, Delphi 2007, RAD Studio/Delphi 2009/2010, Kylix 3 and C++Builder 6.
What's fixed, new and changed? Check it out here:
http://customer.upscene.com/script/mantisgateway.exe/fixed?fixedin=2.3.0&projectid=19
http://customer.upscene.com/script/mantisgateway.exe/fixed?fixedin=2.2.0&projectid=19
http://customer.upscene.com/script/mantisgateway.exe/fixed?fixedin=2.1.0&projectid=19
With InterXpress for Firebird you have guaranteed access to Firebird and all its features. The driver comes in two versions:
- Desktop Edition
- Server Edition
All versions come with a full year of support and maintenance updates. The support period can be extended at a reduced price after the first year.
Desktop Edition
The Desktop Edition is aimed at deploying and developing applications that use a localhost or local protocol connection and accepts up to four connections per client process. The license includes full rights to deploy the driver at any number of sites for any number of workstations.
Server Edition
The Server Edition is aimed at deploying and developing applications that require a remote connection (client/server) and allows unlimited connections from a single client process. The license includes unlimited rights to deploy the driver at any number of sites for any number of workstations and/or servers.
Alternating Page Headers
Using Multi-Page Report View in IBM Cognos 8 BI
9.0 Status Report
Many people are waiting for Postgres 9.0, so here is a status report about the release. Two weeks ago we completed the last 9.0 CommitFest and released 9.0 Alpha 4. We are now working on a 9.0 open items list. There are relatively few open items compared to previous major releases because there are now more developers focused on closing open items.
Once we deal with all the items on that list, and any new items that appear, we can release the first 9.0 beta. Technically, we could release a beta before dealing with all open items as long as we are sure that none of the existing open items will require cluster reinitialization (initdb).
Countdown: Oracle Spatial User Conference
Mark your calendar for the 2010 Oracle Spatial User Conference, April 29 in Phoenix. This annual event, held in tandem with the GITA Geospatial Infrastructure Solutions Conference, continues to grow in popularity. Check out this year's agenda for some great case studies from the US Census Bureau, AngloAshanti Gold, and lots more. Oracle's hosting some cool new technical workshops, too. Register here.
Get more information about Oracle Spatial 11g on oracle.com and OTN.
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
try {
var pageTracker = _gat._getTracker("UA-13185312-1");
pageTracker._trackPageview();
} catch(err) {}
High scalability: SQL and computational complexity
Interested in working at RethinkDB? We’re hiring – please see our jobs page for more details.
Recently there has been a lot of discussion on fundamental scalability of traditional relational database systems. Many of the blog posts on this topic give a great overview of some of the immediate issues faced by engineers while scaling relational databases, but don’t dissect the problem in a systematic way and with sufficient depth to get to the core issues. I’d like to dedicate a series of blog posts to the problem of scalability and how it pertains to relational databases.
There are a number of aspects of an RDBMS that are relevant to high scalability:
- Relational data model
- Constraint enforcement (including referential integrity)
- SQL and its operational semantics
- ACID compliance
In addition, every aspect above must be discussed in the context of the following attributes:
- A specific usage pattern
- The implementation (a concrete system vs. a theoretically possible ideal)
- Hardware platform (few expensive machines vs. many cheap machines)
In these series I will deal exclusively with OLTP (realtime) use cases. I will not discuss various forms of analytics, data mining problems, etc. For this post, let’s define realtime as O(k * log N), where k is some small constant that represents a well defined number of queries, and N is the total size of the data (in rows). In other words, all operations of a realtime database must completely evaluate in a logarithmic time relative to the full size of the dataset, and the number of such operations required to make a logically complete business transaction is small and independent of the size of the dataset. I chose this definition because it seems intuitively interesting – other functions that we see in practice are unlikely to satisfy realtime demands of real world systems. In future blog posts I’ll restrict this definition even further to account for constant factors, but for now reasoning in terms of complexity theory is sufficient.
There are two aspects of high scalability I’d like to cover – specific issues and problems relevant today, and what we can expect from data management systems in the future. In order to cover these aspects, I will focus both on concrete systems commonly used in production and on theoretical ideals. For completeness, I will also discuss most issues in terms of horizontal and vertical scaling. Every time I talk about an RDBMS, I will define these contexts explicitly.
Since I’m a big fan of theory of computation and programming language theory, I’ll kick off the series with a discussion on scalability of SQL from the perspective of theory of computation (here I use the acronym ‘SQL’ in its strictest sense and mean the actual query language as defined by the ANSI standard and implemented by most vendors).
From a purely theoretical, computational perspective, the ANSI SQL-92 is equivalent to a primitive recursive language. Most real world SQL implementations are even more expressive, and are Turing-complete. As far as vertical scalability is concerned, SQL is simply too expressive. Even if we restrict ourselves to SQL-92, it is possible to write queries of polynomial, or even exponential complexity – a far cry from a logarithmic requirement we established earlier. This means that according to our definition of real-time, SQL is fundamentally not a vertically scalable language.
What about horizontal scalability? Reasoning about it is more difficult because it involves somewhat esoteric computational classes, and requires additional assumptions. To simplify the reasoning, we make one key assumption. We assume that we can only have a polynomial number of machines (and cores) – this appears to hold true because the number of machines we can manufacture is dwarfed by the astronomical amounts of information we consume. If this holds true, even if we can trivially parallelize each query, an exponential function (the amount of information) divided by a polynomial (number of machines) still dominates the logarithmic function we defined earlier as acceptable. This means that given modern trends, if a given query isn’t scalable vertically, it also isn’t scalable horizontally, which makes SQL fundamentally unscalable, period.
Of course so far we’ve shown what we already know – that it is possible to write SQL queries that will likely never be fast enough to evaluate in practice. At first glace this doesn’t appear very useful – all we have to do is avoid writing such queries and use the subset of SQL that can be evaluated in logarithmic time. Unfortunately from a theoretical (and far too often practical) perspective doing this is impossible.
The culprit is SQL’s lack of operational semantics. Even a simple point query can (and often does) run in O(1) time for hash indexes, O(log N) for tree indexes, or O(N) for a linear scan. For more complicated queries, there are too many edge cases where the optimizer might magically switch from logarithmic to linear execution on a whim, despite having an index available. In practice, these changes result in expensive downtime, and hours of debugging and rearchitecting. For massively scalable realtime systems, this is SQL’s Achilles’ heel – you can’t use a subset of SQL that runs in logarithmic time – some of the time (in practice, far more often than you’d like), you’ll end up writing queries that don’t satisfy your requirements. If we do settle on a declarative query language (and I believe that anything else is a huge step backward) for massively scalable systems, it must have the property that any query you could express in this language is guaranteed to evaluate in logarithmic time.
Of course such a language has a significantly limited purpose. It cannot be used for most analytics problems, and more importantly for realtime systems, cannot be used for realtime problems which involve polynomial islands of data in the exponential universe. Facebook may some day have billions of users, but any given user is unlikely to have more than a thousand friends. In this scenario there are realtime subproblems where linear, and loglinear queries are perfectly acceptable, and our language can’t handle them. This means that for these subproblems, one must use a different system, which may or may not be an acceptable solution. Perhaps a better solution is to design a database system that only allows to run provably logarithmic queries for massive datasets, but relaxes the requirement for smaller subsets of data.
Unfortunately it would be extremely difficult to modify SQL to satisfy this behavior because it isn’t modular – almost all additions are special forms, and it is so far removed from any theoretical model (including relational algebra), that reasoning about it in a rigorous way is extremely difficult for both humans and compilers. My prediction is that systems of the future will use a modular, verifiable, higher order query language capable of enforcing various complexity requirements at compile time, and that it will not look very much like SQL.
Interested in working at RethinkDB? We’re hiring – please see our jobs page for more details.
DbWrench Database Design & Synchronization v1.6.3
On Demand Webcast - Consolidate for Business Advantage: From Storage to Scorecard
In case you missed the live event, a replay of the webcast Consolidate for Business Advantage: From Storage to Scorecard is now available.
With insights into enterprise-wide information, companies can support a broad range of strategic, financial, and operational processes that meet their extreme performance, scalability, and total cost of ownership requirements. But getting actionable and timely information in the hands of the right decision makers can be tricky, especially when you must consolidate data from disparate systems throughout the enterprise.
As the market leader in data warehousing, enterprise performance management, and business intelligence, Oracle combines best-in-class capabilities to provide a complete, open, and integrated solution from storage to scorecard. Watch this webcast to learn how to:
• Drive pervasive insights and decision-making with Oracle Business Intelligence
• Unify enterprise information at low cost with Oracle Data Integration Suite
• Get extreme performance and manage data growth with Oracle data warehousing
Books: ECM, II, MDM, and DW Comment Entries Recommendations
Use DB2 pureXML to implement a healthcare industry data solution
Understanding IBM FileNet Content Manager storage management
IBM Cognos 8 Go! Dashboard 8.4.1 Companion Guide
Preliminary Program for the Mark Logic 2010 User Conference
It’s 60-something days until the Mark Logic User 2010 Conference which is being held at the lovely Intercontinental Hotel in San Francisco on 5/4/10 to 5/6/10 with pre-conference training available on 5/3/10. The early-bird $695 registration rate has been extended till 3/10/10 so you still have one week to register at this discounted rate. (Note that the early-bird government rate is a real steal at $495.) So please register now.
In addition, please note that this year we have added (1) the ability to pay the registration fee using training credits and (2) an integrated package that includes the pre-conference training with the program registration which might help people use training budget to attend this educational event. Contact Kelly Stirman, director of Mark Logic University, at kelly-dot-stirman at marklogic-dot-com if you’re interested.
In order to help you decide to attend, I’ve embedded a video overview of the 2009 event and the 2010 preliminary program below.
Here’s the video:
And here’s the preliminary conference program:
MarkLogic UC10 Conference Agenda Sessions
And did I mention that this year we will have our first user conference party!
More Data Management books Comment Entries Recommendations
Meet Oracle at Sonoma Workshop 2010
For some time, Infiniband has been working its way into the data center as the fabric of choice for low latency, high bandwidth database environments. And with Oracle Exadata V2, Oracle introduced the perfect example of a massively parallel database grid using OFA-driven Infiniband. In addition, now that Oracle is integrating Sun Microsystems' portfolio of Infiniband products and technologies, Oracle is uniquely positioned to deliver truly extreme performance throughout the enterprise
To learn more, join Oracle at the Sonoma Workshop 2010 on March 15th. Tim Shetler, VP of Oracle Product Management, is hosting a session on how Oracle is using Infiniband to enable massively scalable databases and to meet the demanding I/O requirements of today's and tomorrow's Data Warehousing and OLTP applications.
Register and get details here.