The Caboteria / Tech Web / DatabaseProgrammingBookmarks (revision 23)
(Back to ProgrammingBookmarks)

Relational databases aren't cool, but they are hugely important to businesses around the world. I've been involved with databases for quite a while, in some cases actively pushing their limits.

Relational database can be "normalized" to make them more consistent and harder to break: http://en.wikipedia.org/wiki/Database_normalization

Lately, the most interesting database I've used is Postgresql. Dumb name, great product. http://www.postgresql.org/

Oracle is big and ugly, but so are Mack trucks. Both are useful. Oracle runs on Linux, there are some products to help with this process at: http://www.orasoft.org/

SQL isn't the only way to talk to a database. Xplain is an alternative: http://www.berenddeboer.net/xplain/index.html

http://datadraw.sourceforge.net/ - a tool to generate special-purpose databases in C. Very fast, not relational.

Documentation

This tool builds javadoc-like pages from an Oracle schema. I'm not sure that this is a good idea in general (better to generate docs from the source code), but it could be extremely useful for reverse-engineering. http://oraschemadoc.sourceforge.net/

http://www.izzysoft.de/?topic=oracle - orarep is a script that generates a nice-looking report about an oracle database instance.

Development

http://www.memoriapersistente.pt/en/opensource/gaudi/ - a Java tool for visual development of database tables.

http://www.danny.cz/datadesigner.en.html - visual tool for designing database tables, plus a back-end which can translate them into SQL. Gaudi looks better.

http://www.59uptime.com/db/index.html - a Java GUI to build database schemas

http://erw.dsi.unimi.it/ - a web-based tool for database maintenance. Also an excellent example of clean web design using CSS.

http://mdbtools.sourceforge.net/ - tools to manipulate MS Jet (.mdb) databases and move their data into real dbms's.

http://senora.sourceforge.net/ - a command-line tool for Oracle with a plugin architecture. Aims to replace sqlplus (which would be a wonderful thing to do).

http://dbmonster.kernelpanic.pl/ - DB Monster generates large quantities of random data which can be fed into a database and used for stress testing.

http://wfb2sql.sf.net/ - a neat idea - a script to translate the CIA World Fact Book into SQL.

http://dev.mysql.com/tech-resources/articles/hierarchical-data.html - Managing Hierarchical Data in MySQL
http://dirtsimple.org/2010/11/simplest-way-to-do-tree-based-queries.html - The simplest(?) way to do tree-based queries in SQL

Representing Database schemas in XML

There are many XML schemas for representing relational database metadata:

http://www.w3.org/XML/RDB.html - article on w3c website.
Gaudi (see above) has its own schema for database metadata.
http://sourceforge.net/projects/zsqlml - XML DTD and XSLT sheets for various databases.
Hibernate has an option that generates DDL from the hibernate mapping file.
http://erw.dsi.unimi.it/ - has their own schema
http://www.danny.cz/datadesigner.en.html - has a schema
http://jakarta.apache.org/commons/sandbox/sql/ - Jakarta Commons SQL project
http://dewdrop.sourceforge.net/ - XML schema and tools for generating DDL
http://www.pimentech.fr/en/technologies/outils

Non-SQL Databases

Because SQL isn't always the best choice.

http://www.mongodb.org/display/DOCS/Home - "Mongo (from "humongous") is a high-performance, open source, schema-free document-oriented database."

http://incubator.apache.org/cassandra/ - "Cassandra is a highly scalable, eventually consistent, distributed, structured key-value store. Cassandra brings together the distributed systems technologies from Dynamo and the data model from Google's BigTable. Like Dynamo, Cassandra is eventually consistent. Like BigTable, Cassandra provides a ColumnFamily-based data model richer than typical key/value systems."

http://code.google.com/p/redis/ - "A persistent key-value database with built-in net interface written in ANSI-C for Posix systems", "Redis is a key-value database. It is similar to memcached but the dataset is not volatile, and values can be strings, exactly like in memcached, but also lists and sets with atomic operations to push/pop elements."

Edit | Attach | Print version | History: r24 < r23 < r22 < r21 < r20 | Backlinks | Raw View | Raw edit | More topic actions...
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding The Caboteria? Send feedback