Re: RRD PostgreSQL extension
Dustin Fisch <[email protected]> Wed, 12 Sep 2012 05:32:50 +0200
| Newsgroups | gmane.comp.db.rrdtool.devel |
|---|---|
| Message-ID | <[email protected]> |
Hm. Also a nice idea. But the benefit I want to from the PostgreSQL extension is to use psql as a network protocol and feeding the RRD database from data I have in my PostgreSQL database. The idea is to have a table with the following columns: id BIGSERIAL, name VARCHAR, value DOUBLE, history RRD now I can use a trigger for the "value" column to update the history on each update automatically. And as almost all programming languages have a PostgreSQL driver, they can would have a network-able RRD interface out of the box. cheers fooker Anthony Johnson <[email protected]> wrote: > Just curious... couldn't you simply build or use one of the existing > Database filesystems that work with Fuse? Then you could mount a > filesystem whose backend is Postgres. > > http://sourceforge.net/apps/mediawiki/fuse/index.php?title=DatabaseFileSystems > > > The postgres FUSE project seems to be dead, but these seem to be > pretty simple to create. This would mean that all existing tools > such as Cacti would not need any changes and migrating to such a > setup would require only a cp /olddirectory/* /sqlbackeddirectory/ > > I would hope that a database backed filesystem would also be able to > take advantage of filesystem caches at the OS-level which might be a > free performance gain. > > Good luck, > > Anthony > > On Tue, Sep 11, 2012 at 7:44 PM, Dustin Fisch <[email protected]> wrote: > > > > > > > Tobias Oetiker <[email protected]> wrote: > > > > > Hi Dustin, > > > > > > Yesterday Dustin Fisch wrote: > > > > > > > Hi, > > > > > > > > I am currently thinking about building an RRD extension for > > > > PostgreSQL. > > > > > > > > The extension will provide a RRD data type which represents a > > > > complete database and functions for all the existing functions > > > > of the RRD tool, like create, update, first and graph... > > > > > > > > PostgreSQL has a nice API for LOB, which allows to store the > > > > whole RRD database using the PostgreSQL file management. > > > > > > > > I already have taken a look to the RRD code. As far as I can > > > > see, there are functions like rrd_create_r(...) which provides > > > > the functionality I need for such an extension. > > > > > > > > The PostgreSQL LOB API currently provides a file descriptor for > > > > the access to the data stored in the LOB. > > > > > > > > Unfortunately, it looks like the RRD API only allows the usage > > > > of a filename. > > > > > > > > Is there any way to use a file descriptor instead of the > > > > filename? Or is there any chance such a patch would be accepted? > > > > > > if done nicely, I'll be glad to integrate such a patch ... I guess > > > you would have to compile without mmap support ... > > I'm not sure about mmap. I think I have to try it. > > > > The plan for the patch is to refactoring the rrd_*_r methods by > > moving out the real work of the method into something called > > rrd_*_x. The only thing remaining in the original method are the > > calls to rrd_open and rrd_close and the call to the new method. > > > > The new rrd_*_x methods will mirror the interface of there rrd_*_r > > counterparts expect the filename parameter, which will be replaced > > by the already opened rrd_file_t. > > > > > > > > how would this pg integration work, would the rrd data be stored > > > in a blob ? wouldn't this get read from disk entirely on every > > > update and make things rather slow ? > > Right. The idea is to store the RRD data in a BLOB. > > > > But I don't see any performance problem with this as a PostgreSQL > > extension is allowed to work on the file backing the BLOB directly > > using a file descriptor. > > > > This makes no difference to the way RRDtool currently works. Maybe > > this allows to to use the current mmap code, too. > > > > > > > > cheers > > > tobi > > > > > > > > > > cheers > > fooker > > > > -- > > http://lab.sh > > > > _______________________________________________ > > rrd-developers mailing list > > [email protected] > > https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers > > > > -- http://lab.sh _______________________________________________ rrd-developers mailing list [email protected] https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers
signature.asc
(application/pgp-signature, 490 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) iQEcBAEBAgAGBQJQUAJjAAoJELTDvwEtmya+J84IAMkULH8AkO1WIF1xLzwt6AFb KTqb5dUvX+skGanPIzQvXn1U9LZQmdL+9DKUkrHSw1T2lsaDbND5+rT9Cywm3d9e m8yHg7QT7DimzVgbjp4NZxuesVoTVlKId46Fxe/TOaS6p++24BpKljyLayzPP6Ub O8HgQhpcasDcIHRopRmUj3rJ9L3X55j9MSlWbB8R1fqDJO7wn/lxaI1mjpseyxTT VcLT5pUa23WifedC6rFXT6ijSlOVv0JZkvxH1hhTnTkgf711XooyChjae4O1UQOv UOGcSFzZQ5vTNDnrHJ2JSeYi+pVJLL47sRkr2tWM2oJdIBGY0z3OaNcb5oqF/Ok= =+jh4 -----END PGP SIGNATURE-----