Domain: objectivity.com
Stories and comments across the archive that link to objectivity.com.
Comments · 9
-
Re:Object-relation databasesYes, well, it's perhaps a philosophical viewpoint more than practical. Working with objects from an object language is nice (and 'natural'). There is also the promise of versioning, quick object traversal and simple querying. In practice, those are very hard to implement seemlessly and standards for which are few (odmg, jdo). I've been using a homebrew object-relational mapping layer for years. It's slow (needs optimization), cumbersome to maintain (somewhat less than others, needs use optimization) and quite proprietary... but, it allows for dealing with (data) objects at a high level... modelling from the objects to the tables and not the tables to the objects. With a couple months work, the thing could be quite nice, replacing a 'real' (read expensive) oodbms (for smaller scale apps), but with the x-app sql binding and less data layer lock-in (and ability to migrate to more capable rdbms backends). I'd like to get it to the point where the changes to the object model roll across to the dbms schema (with override), which would allow for a much more fluid relation between code and data... and half the fun is doing it.
The fact that RDBMS' have been around for years means they've been under the scrutiny of many eyes for many years and are rock solid, if cumbersome. Of course, the fact that the few existing high performance oodbms' that do exist are horrifically expensive. Objectivity being the best I've seen... able to capture objects at many Gigabytes/Sec into multinode distributed object network (for CERN particle data), but, yow, oracle is cheap in comparison.
-
Objectivity or Caché?
If your current relational database schema is either 1) small flat files or 2) a few big tables with most/all of the data stored in "blob" columns: i.e. blobs, clobs, byte arrays, or big varchars. You might be a candidate for an XML database. I'd get two experienced DBA's to agree there was no realistic way to normalize the data, first, but that's me.We're doing "scientific" computing, and we're finding that classical "SQL/RDBMSs" just don't cut the mustard:
CLASSICAL RDBMSs: Essentially "ASCII" languages [SQL, VB, Java], with the idea of "typing" thrown in as an afterthought
Classical SQL/RDBMSs are fine as long as your data is very ASCII-ish and very short [e.g. first name, last name, street address, zip code, phone number, SSN, etc]. But as soon as you start dealing with very large datasets containing strongly typed data, you're SOL with a classical RDBMS.
SCIENTIFIC: Needs very strong typing not found in ASCII languages like "SQL" [e.g. Intel/AMD 96-bit doubles, Altivec 128-bit doubles, Sparc 128-bit doubles, LabVIEW 128-bit timestamps, etc]CLASSICAL RDBMSs: Very 32-bit in nature. Examples: SQL blobs max out at 2^32 bytes, Java can't take 64-bit longs as array counters, etc.
SCIENTIFIC: HUGE datasets; easily break the 2^32 barrier; 64-bit language support a mustAnyway, two systems we had been thinking about were Objectivity and Caché. Any thoughts?
Obviously it would be nice if we could get the standard functionality you'd expect from a mature RDBMS package: Seamless backup to a failsafe server, seamless integration with a tape backup system like BackupExec or ArcServe, seamless integration with an industry standard authentication service like ActiveDirectory or Novell Directory Services, etc.
Thanks for any advice you can offer!
-
depends on your user interface
I started with Oracle Programming, then moved to Objectivity for Pure OO DBs, and now I am using mySQL. Stored procedures are very useful, if your application runs in a console mode, from the server that is hosting the DB. But in real-life this is not usually the case. Most applications are web based, in which case the web server is the middle tier. The latency added by the middle tier and the whole HTML/XML is so much that using stored procedure vs C++ doesn't help too much. Nowadays I use Java/PHP code to process the data, instead of PL/SQL, since it is the middle tier that is the bottleneck, and not the fact that I m processing data on the middle tier instead of on the DB server.
With all advances in the client (browser) technology I am even doing some processing (mostly for presentation) on the client using applets, and XML/CSS. -
The largest databases aren't what you think
Stanford Linear Accelerator Center weighs in at 500TB. They run Objectivity.
Internet Archive weighs in at 300-400TB and runs Linux.
Google is probably somewhere in that range, but they don't tell. A rough guess would be 3307998701 pages * 100KB/page / 1024KB/MB / 1024MB/GB / 1024GB/TB = 308TB. They run pigeons -
Re:wintercorp climbing up the ratings now..On that note...
"Experiments at CERN will produce hundreds of TB of data per year at data rates up to 35MB/second starting in 1999," states Jamie Shiers, Project Leader at CERN. "Experience from the use of Objectivity/DB and HPSS on these experiments will help us understand how we can cope with the staggering 100PB of data at rates up to 1.5GB/second expected at CERN's Large Hadron Collider, starting in 2005."
"The size of CERN's database is bigger than any numbers ever seen," according to Richard Winter, president of Winter Corp., a Boston-based consultancy specializing in VLDBs. "The growing use of non-traditional data types is producing a produce a giant leap in database size. Such databases will soon be commonplace in engineering, commercial, and medical fields as well." concludes Winter.
-
Ditch SQL
-
.NET in University
I m taking a WebServices class at a university, and
.NET Visual Studio is a requirement, and all the projects will be done in .NET .
The Reason: .NET is easier to install and work with since it is GUI based.
Real Life developing doesn't always include a nice GUI. What about making Student learn the whole technology stack, from installation to configuration to usage????
I remember when I was in school for my undergrad we were made to install our own instances of Objectivity and Oracle and other Java related stuff before we started doing our projects, so that we learn the whole technology stack, and not just click our way through a GUI.
And I think I learned a lot more, when I fully understood the underlying technology. -
Re:It's called "Objectivity"
No, no, Objectivity is another database altogether. Now you're just confusing things.
-
Objectivity for Linux
Objectivity has released a linux version of Objectivity/DB for Linux last year. Objectivity is an very scalable, page-based OODBMS (and normal commercial software).
So far I have only used the Solaris and NT versions and the Java binding. The Java bindungs on Linux are not finished yet. Objectivity works pretty well with JDK 1.2, but with JDK 1.1 we had a lot of crashes that suddely disappeared when we switched to 1.2. Probably not Objectivitys fault, but made it almost unusable.