Hacker Newsnew | past | comments | ask | show | jobs | submit | kfool's commentslogin

- schema. Maintaining schema and dependencies is hell on all but a small system

When you have the tools you have the power.


The toolkit documentation reports limitations.

What they really needed is ChronicDB http://chronicdb.com


If you are going to flog ChronicDB, please at least disclose if you have some sort of relationship with said company. Most of your previous submissions pertain to ChronicDB.


Sorry for not disclosing I work on ChronicDB.

The author of the 6b article kindly provided more information about the time it took for the migration:

http://news.ycombinator.com/item?id=3621561

A couple of limitations of the Percona tool are related to changing data in tables with ON DELETE and ON UPDATE foreign key constraints and possible lock-ups of tables. It is a bi-directional replication tool, so it has to deal with the master-master replication case and as such does not guarantee data consistency.

Still the tool is helpful in many cases and congrats to Percona for developing it. Replication safety is a non-trivial problem in general.


They weren't doing a master-master sync.


ChronicDB is a hosted solution. That isn't even remotely what DeviantArt were looking for.


ChronicDB is not only a hosted solution. It also runs locally.


Not according to your own website.

ChronicDB is a combination of a software engineer and a hosted database: You run your database in our datacenters -- http://chronicdb.com/how_it_works

Your database will be hosted in our datacenters -- http://chronicdb.com/features


NoSQL does not support flexibility of schema change.

http://chronicdb.com/blogs/nosql_is_technologically_inferior....

Flexibility of schema definition and flexibility of schema change are two different things. Defining schemas only involves data. But changing schemas involves not just data, but code too.


The issue is not performance. The issue is backward compatibility.

ALTER TABLE performance will eventually improve. PostgreSQL 9.1 lifts-off the lock-up limitation.

But what a performant ALTER TABLE will not improve is its intrusiveness to applications. When you change the schema you break the app.

That's the problem.

http://chronicdb.com/blogs/change_is_not_the_enemy


Which part of the Slicehost to Rackspace migration required the additional time that had not been invested?

Also, what do BCC and AR refer to?


Bingo Card Creator and Appointment Reminder.


Now it's time to bring the idea beyond code

Exactly! Try versioning data with ChronicDB:

http://chronicdb.com


Referential integrity is to databases what pointers are to code. You definitely need it.

What's worse than migrations? Being unable to turn an application off, since it uses the old schema.

With ChronicDB we support indefinite backward compatibility. Unlike per-record versioning tricks, application code does not need to be aware of migration code.


Version data, like source code.

  $ chd version mydb
  $ chd revert -d <txn_id> mydb
Neither replication nor backups protect from accidentally deleting data. And restoring from binary logs requires downtime.

http://chronicdb.com/blogs/undelete_from_whoops


Not always. An app requiring non-trivial SQL can be an indication of a problem requiring non-trivial workflows.

If the problem is complex, you want to model relations, not ignore them.

(But clearly not in this hairy query.)


> "because of the schema-less models."

> "I find migrations painful and unnecessary."

A schema-less model neither makes a migration less painful nor eliminates it.

In MongoDB, what did you do when the data model changed?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: