[Zope] should files be stored in RDBs?
Andreas Jung
andreas@andreas-jung.com
Mon, 20 May 2002 15:47:25 -0400
In general you can assign metadata (called properties in Zope) to Zope
object.
Zope is not the fastest DB for write operations. I do not know anything
about
your data model but maybe you should check the BTreeFolder product when you
have lots of file...
-aj
----- Original Message -----
From: "Charlie Fulton" <ccfulton@unity.ncsu.edu>
To: <zope@zope.org>
Sent: Monday, May 20, 2002 15:43
Subject: RE: [Zope] should files be stored in RDBs?
> To address comments from several people:
>
> > Andreas:
> > Have you thought about storing the data inside the ZODB?
>
> I had thought of it but wasn't sure if it would be appropriate. Is it
> possible to assign arbitrary metadata to a file in the ZODB?
>
>
> > Tom P:
> > It's certainly feasible to insert data into a relational database using
> > DTML. If the data is truly binary, it's probably not very well suited
for
> > web forms, where some characters are not allowed without escaping.
>
> Wouldn't using <type=file> and <enctype="multipart/form-data"> get around
> the need to escape certain things? I'm looking to build something that is
> simple to use and preferably wouldn't need any special applications for
the
> client.
>
>
> > It also would depend on what you want to do with the data, and
> > whether there
> > is any metadata that needs to be attached to the data. For example,
it's
> > one thing to store a blob in a table, and another to find the right data
> > later on. Of course, you have the same problem when you store files.
You
> > may find that it's better to store the files in the file system and the
> > metadata in a database, either the ZODB or in a relational database.
>
> There will be metadata (what equipment was used, what settings were, who
did
> it, etc) which needs to be searchable and is appropriate for a relational
> database. Now what to do with the data itself? File names are similar
and
> I'd probably have to hash the timestamp or something in order to guarantee
> that they're not the same in a directory, making it essentially
meaningless
> without the database. Plus they're small and the hierarchy could get ugly
> in a hurry.
>
> So I thought I might go ahead and store them as records in the database.
It
> seemed simple in principal and more intuitive since whoever inherits this
> system will likely not be a professional IT person. Just as I am not one.
>
>
>
> > I'm setting up a database to store data file for a scientific research
> > group. I'm thinking of writing the data into a MySQL table rather than
> > storing them externally in the filesystem. The files are generally
small
> > but the number of them will grow quickly.
> >
> > Are there opinions as to whether this is a good or bad idea?
> >
> > I know there's overhead and a (severe?) throughput penalty, but I was
> > thinking this would be simple to manage (and back up) as well as being
> > easy
> > to search. The load on the server won't be much anyway.
> >
> > Can collecting binary data in a web form and writing it to MySQL be done
> > totally in DTML? I've found some past threads in the list dealing with
> > this
> > kind of thing (and an old how-to) but there doesn't seem to be a
consensus
> > on a "right" way to implement it.
>
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )
>