Main > Free Download Search >

Free transactional storage software for linux

transactional storage

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 512
ReleaseAction 0.07

ReleaseAction 0.07


ReleaseAction - call actions upon release. more>>
ReleaseAction - call actions upon release.

SYNOPSIS

use ReleaseAction on_release;
{
# OO style
my $handle = ReleaseAction->new(
sub {print "Exiting scopen"}
);
print "In scopen";
}
{
# Functional style
my $handle = on_release {print "Exiting scopen"};
print "In scopen";
}
{
my $rollback = on_release {rollback_trans()};
if (do_stuff()) {
$rollback->cancel();
}
}

This provides an easy way to create opaque handles which will do something when they are destroyed. There are two ways of creating a new handle. Both take one or more arguments, with the first being the action to take when the handle is released and the (optional) rest being the arguments that the handle will get.

new is the method oriented constructor.
my $handle = ReleaseAction->new(
sub {print shift}, "Goodbye cruel worldn"
);

And an optional function on_release that you can import. For those who like that sort of thing, I have provided the prototype &@ for syntactic sugar.

my $handle = on_release {print "Goodbye cruel worldn"};

And should you decide that you dont want to do the action on release after all, you can call the cancel() method. As suggested in the SYNOPSIS, this is useful if you wish to set up transactional mechanics. Make the release action do your cleanup. And then when you commit your changes, cancel the cleanup.

EXAMPLE

use ReleaseAction on_release;

# This does the same thing as the module SelectSaver.
sub tmp_select {
on_release {select shift} select shift;
}

print "This print goes to STDOUTn";
{
my $hold_select = tmp_select(*STDERR);
print "This print goes to STDERRn";
}
print "Printing to STDOUT againn";

A LONGER EXAMPLE

use Carp;
use Cwd;
use ReleaseAction;

sub cd_to {
chdir($_[0]) or confess("Cannot chdir to $_[0]: $!");
}

sub tmp_cd {
my $cwd = cwd();
cd_to(shift);
ReleaseAction->new(&cd_to, $cwd);
}

sub something_interesting {
my $in_dir = tmp_cd("some_dir");
# Do something interesting in the new dir

# I will automagically return to the old dir
# when I exit the subroutine and $in_dir goes
# out of scope.
}

<<less
Download (0.004MB)
Added: 2007-05-24 License: Perl Artistic License Price:
883 downloads
Apache-Storage 1.00

Apache-Storage 1.00


Apache::Storage is Perl module containing simple functions to store and retrieve information from within the Apache process. more>>
Apache::Storage is Perl module containing simple functions to store and retrieve information from within the Apache process.
<<less
Download (0.004MB)
Added: 2005-08-24 License: GPL (GNU General Public License) Price:
1521 downloads
PicoStorage 0.1

PicoStorage 0.1


PicoStorage is a lightweight structured storage software. more>>
PicoStorage allows you to store hierarhical information (similar to "files and directories") inside a single file. The functionality offered is largely equivalent to the one offered by any filesystem, or by the Structured Storage and Compound Files.

PicoStorage can efficiently handle huge numbers of small files, with very economical disk usage; it also allows you to keep open (in RAM) simultaneously a large number of files. Transaction support guarantees data integrity.

Learn more about the distinctive advantages of PicoStorage. or look at the benchmark.

The library is available on a dual-license basis: under GPL for free, and under a commercial license for use in closed-source applications.

Using

The library contains the classes File and Dir to represent files and directories. On a File you can read or write a number of bytes from a given offset, and set/get the file size. On a Dir you can create entries (either files or subdirectories), open entries, delete entries, and iterate over the directorys content.

The storage itself (i.e. the whole hierarchical structure, contained in a filesystem file) is represented by the class Storage. Using this class, you can create or open a storage, obtain the root directory of the storage, close the storage and do commit or rollback.
<<less
Download (0.13MB)
Added: 2005-04-13 License: GPL (GNU General Public License) Price:
1655 downloads
Twisted Storage 0.1.5

Twisted Storage 0.1.5


Twisted Storage is an application that will take your data and manage it for you, just like a file system. more>>
Twisted Storage is an application that will take your data and manage it for you, just like a file system. But Twisted Storage goes way beyond what a normal file system does.
What types of "objects" are stored in Twisted Storage : just regular files. The data stored in the system is expected to be fixed content, meaning it doesnt change at all. If you read the data back, change it, and store it, it is considered a different file. There are plenty of examples of fixed content data : emails you received, movies or mp3 files you made or own, documents you wrote, etc. In fact it is estimated that 80% of the data you have on your computer is fixed, reference data.
Your Twisted Storage system can start out small - a single computer with a few disk drives. When you need more storage you can add more disk drives and more computers. But it has been designed to store petabytes worth of data without requiring any special hardware. For example storing a petabyte worth of data, using the biggest disk drives available today (500 GB), would require 2000 disk drives. To overcome the need of special hardware, Twisted Storage is a scalable, distributed system using ordinary commodity computers. Even so that petabyte of data would require 500 computers networked together and that requires special handling.
Twisted Storage has a few features you wont find in any file system. For example once a file is added to the Twisted Storage repository it can be written in multiple locations simultaneously. The system has been designed to be compliant with Sarbanes-Oxley Act: when an object is added to the repository you can no longer delete it and the integrity of the contents are guaranteed. In addition any access to the object is recorded.
Main features:
Scalable to thousands of servers and multiple petabytes of data.
- Regardless of how much data you want to store,Twisted Storage is designed to handle it. The system can grow from one computer and a few disks to hundreds of systems and thousands of disk drivers.
Automatic data recovery without human intervention.
- Twisted Storage doesnt require backup/restore software or procedures. All data written to the system is recorded in multiple locations.
No special disaster recover procedures.
- So long as you have your systems in physically different locations and you have instructed the software to write the multiple copies to those systems, you have no-hassle disaster recover. If one of the sites goes down, the system will retrieve any data from the other systems. Additionally, once the disaster site is up and running, the system will automatically restore the data to the it.
Simplified configuration.
- To ease management of the system, you can change any one systems configuration and have it ripple through out the system.
<<less
Download (0.55MB)
Added: 2006-10-25 License: GPL (GNU General Public License) Price:
1094 downloads
FileSystemStorage 2.5.2

FileSystemStorage 2.5.2


FileSystemStorage is a project that provides FileSystem storage for Archetypes. more>>
FileSystemStorage is a project that provides FileSystem storage for Archetypes.

FileSystemStorage is an Archetype storage for storing data on FileSystem This storage is used to avoid ZODB to grow quickly when using a lot of large files.

<<less
Download (0.070MB)
Added: 2007-02-09 License: GPL (GNU General Public License) Price:
987 downloads
cfgstoragemaker 1.1

cfgstoragemaker 1.1


cfgstoragemaker is an MRTG configuration file generator for storage monitoring via SNMP. more>>
cfgstoragemaker remotely generates an MRTG config file in order to graph all storage devices (disk, memory, and swap) of one or more specific host(s) via SNMP.
<<less
Download (MB)
Added: 2005-04-07 License: GPL (GNU General Public License) Price:
1661 downloads
A MySQL Storage Engine for AWS S3 0.06

A MySQL Storage Engine for AWS S3 0.06


A MySQL Storage Engine for AWS S3 is a plugin storage engine that allows MySQL to access Amazon Web Services. more>>
A MySQL Storage Engine for AWS S3 project is a plugin storage engine that allows MySQL to access Amazon Web Services Simple Storage Service (AWS S3) buckets and items.
You need a MySQL source tree, and you need to have it built.
Figure out where the source tree is.
In my case its /home/mark/mysql/mysql-5.1-arch
Figure out where the target install tree is.
In my case its /home/mark/mysql/builds/example
Figure out where the MySQL build puts storage engine plugins.
Its probably in lib/mysql under the install tree
Or its /usr/lib/mysql
Or its /usr/local/lib/mysql
For me its /home/mark/mysql/builds/example/lib/mysql
Then run:
./config/bootstrap
./configure --with-mysql=/path/to/mysql-source --libdir=/path/to/mysql-plugins
make && make install
You can optionally copy the "src" directory here into storage/ in the
MySQL server source, rebuild MySQL, and things should compile.
Next, you should probably install the S3 command line tools.
They depend on you having Python.
Get them at http://www.hanzoarchives.com/development-projects/s3-tools/
If you dont have one yet, you need an Amazon AWS account, and then
request that they enable S3. Go to http://amazonaws.com/ to do that.
You will need to get your "AWS Access Key Identifiers".
Assume they are
FV8CY5793BC7CY32YOSN
W9oQxQNJizGgjxNc82giE9/ipefQW19tuO2xpC9G
(I just made those up with a random number generator.)
Put this in your .bashrc file
AWS_ACCESS_KEY_ID=FV8CY5793BC7CY32YOSN
AWS_ACCESS_KEY_SECRET=W9oQxQNJizGgjxNc82giE9/ipefQW19tuO2xpC9G
export AWS_ACCESS_KEY_ID AWS_ACCESS_KEY_SECRET
This isnt used by the storage engine, but it makes using the s3 command
line tools easier.
Use s3mkbucket to create a bucket. Remember that buckets are in a
global namespace, and there are advantages to having them look lik a
domain name. I suggest you snap up "s3.example.com", where
"example.com" is your own domain name.
s3mkbucket s3.example.com
s3put -k solfege/Do -s "a deer, a female deer" s3.example.com
s3put -k solfege/Re -s "a drop of golden sun" s3.example.com
s3put -k solfege/Mi -s "a name I call myself" s3.example.com
s3put -k solfege/Fa -s "a long long way to run" s3.example.com
s3put -k solfege/So -s "a needle pulling thread" s3.example.com
s3put -k solfege/La -s "a note to follow So" s3.example.com
s3put -k solfege/Ti -s "a drink with jam and bread" s3.example.com
Then at the mysql> prompt
create table s3notes (s3id varchar(255) not null primary key, s3val blob)
engine=AWSS3
connection=awss3 s3.example.com FV8CY5793BC7CY32YOSN W9oQxQNJizGgjxNc82giE9/ipefQW19tuO2xpC9G;
select * from s3notes where s3id=solfege/Re;
insert into s3notes (s3id, s3val) values (color/Red, ff 00 00);
select * from s3notes where s3id=color/Red;
delete from s3notes where s3id=color/Red;
You can name the table anything you want, but the fields must be named s3id and s3val, and s3id must be the primary key.
Enhancements:
- More flexible schema, CREATE SERVER, and SELECT without WHERE are supported.
<<less
Download (0.32MB)
Added: 2007-04-20 License: GPL (GNU General Public License) Price:
548 downloads
smartmontoos 5.36

smartmontoos 5.36


The smartmontools package contains two utility programs (smartctl and smartd) to control and monitor storage systems. more>>
The smartmontools package contains two utility programs (smartctl and smartd) to control and monitor storage systems using the Self-Monitoring, Analysis and Reporting Technology System (SMART) built into most modern ATA and SCSI hard disks. In many cases, these utilities will provide advanced warning of disk degradation and failure.

The suite of smartmontools contains two utilities:

smartctl is a command line utility designed to perform S.M.A.R.T. tasks such as disk self-checks, and to report the S.M.A.R.T. status of the disk.

smartd is a daemon that periodically monitors S.M.A.R.T. status and reports errors and changes in S.M.A.R.T. attributes to syslog.
<<less
Download (0.36MB)
Added: 2006-07-06 License: GPL (GNU General Public License) Price:
1208 downloads
GnuAccounting 0.4.2

GnuAccounting 0.4.2


GnuAccounting is a open source java accounting software that creates and administrates e.g. invoices and credit notes. more>>
GnuAccounting is a open source java accounting software that creates and administrates e.g. invoices and credit notes. GnuAccounting embeds OpenOffice to design templates and output invoices and uses MySQL to store transactional metadata on a central server.

<<less
Download (6.5MB)
Added: 2007-07-18 License: GPL (GNU General Public License) Price:
830 downloads
Storage Inspector 0.5

Storage Inspector 0.5


Storage Inspector is a Firefox extension that makes it easy to view any sqlite database files in the current profile. more>>
Storage Inspector is a Firefox extension that makes it easy to view any sqlite database files in the current profile. This includes the anti-phishing and search engine...

Developer Comments:

There are quite a few polish issues that need to be addressed before this version is ready for the masses. If you notice problems, please view the readme.txt file first and tell me if there are other issues.

You can set the storageinspector.openmode pref to 2 if you want the extension to open in a new tab instead of its own window.

I have primarily tested the extension in Firefox 2b1 but would still like feedback on how it runs in 3a1.

If you dont like something, please post here with a constructive statement telling me what you would like.

<<less
Download (0.040MB)
Added: 2007-07-26 License: GPL (GNU General Public License) Price:
824 downloads
Tie::OffsetArray 0.01

Tie::OffsetArray 0.01


Tie::OffsetArray can tie one array to another, with index offset. more>>
Tie::OffsetArray can tie one array to another, with index offset.

SYNOPSIS

use Tie::OffsetArray;

tie @a, Tie::OffsetArray, 1, @b; # offset=1; use given array.

tie @c, Tie::OffsetArray, 2; # use anonymous array.

$a[0] = x; # assign to $b[1];

tied(@a)->array->[0] = y; # assign to $b[0].

When tied to this class, an arrays behavior is completely normal. For its internal storage, it uses another array, either one supplied by the caller, or a new anonymous one. Accesses to the tied array are mapped down to the storage array by offsetting the index by some constant amount.

A special method on the tied object returns a reference to the storage array, so that the elements below the offset can be accessed. This is particularly useful if the storage array was not supplied by the caller.

<<less
Download (0.008MB)
Added: 2007-08-10 License: Perl Artistic License Price:
805 downloads
BerkeleyDB Backend Storage Engine for DURUS 20070503

BerkeleyDB Backend Storage Engine for DURUS 20070503


BerkeleyDB Backend Storage Engine for DURUS provides a storage engine for DURUS, a persistence system for the Python language. more>>
BerkeleyDB Backend Storage Engine for DURUS project provides a storage engine for DURUS, a persistence system for the Python programming language.
Some advantages compared to Durus standard FileStorage:
- Startup time is negligible.
- You dont need an in-memory index, so your repository size is only limited by storage space, not RAM.
- If you change existing objects, your storage size doesnt increase.
- If you delete objects, those objects are garbage collected in background, slowly, without performance degradation.
- You can still do a full fast collection, if you need it. While this collection is in progress, Durus still serves objects. From time to time, nevertheless, it can be unresponsible for 2 or 3 seconds, while is doing a checkpointing to be able to free database logging diskspace.
- Garbage collection doesnt increase storage size. Neither RAM usage.
- Garbage collection deletes objects using nondurable transactions, very efficiently. If the collection is aborted abruptly (program or machine crashes), the collection will start again from the beginning. If the GC finishes without problems, that state is durable.
- Any object store in the storage will commit a durable transaction, including all objects released in the background garbage collector, along the way.
- Garbage collection time is proportional to garbage, not repository size.
There are some disadvantages, nevertheless:
- IMPORTANT: This backend uses reference counting to decide when an object is garbage and can be collected. So, if you have cycles in your data structures, you **MUST*BREAK** them before releasing the objects.
- Failing to do that will leak diskspace. It is possible that in a future release we can collect cycles, but try to avoid that pattern.
- Leaking objects will grow the diskspace, but **NO** corruption or malfunction will happen. No other secondary effect.
- Although this code could work on Windows, I havent checked it. Absolutely no garantee!.
- Sometimes this backend can become irresponsible for a couple of seconds. It is busy doing a checkpoint to recycle database logging space. The pause should be sort, nevertheless.
- Dont use this storage backend over NFS, at least you know what is going on.
- Since we are using BerkeleyDB as the backend:
- You should be experienced with BerkeleyDB deployments.
- Beware when updating Python or BerkeleyDB. In particular, BerkeleyDB is known by breaking (but they DOCUMENT!) binary compatibility between versions. In this case, they ALWAYS document the procedure to do a controlled upgrade, so dont worry. But take note of the risk.
- To do a trustable backup, you should follow instructions in BerkeleyDB documentation:
- http://www.sleepycat.com/docs/ref/transapp/reclimit.html
- http://www.sleepycat.com/docs/ref/transapp/archival.html
- http://www.sleepycat.com/docs/utility/db_hotbackup.html
- In Python you can use the standard "bsddb" or the up-to-date "bsddb3" bindings (which will be included in new python versions). This product will try to use always the more recent BerkeleyDB bindings. Be careful about BerkeleyDB version changes when you update the bindings.
- Since BerkeleyDB files are binary structures, a corrupt database can be unrecoverable. Be diligent and careful with your backups.
You can use this product both as a normal (local) filestorage, or a server (remote) storage system, just like the usual Durus FileStorage.
Enhancements:
- Compatibility with Durus 3.7 was added.
<<less
Download (0.033MB)
Added: 2007-05-03 License: GPL (GNU General Public License) Price:
907 downloads
Mergence HL7 Integration Engine 1.1

Mergence HL7 Integration Engine 1.1


Mergence is a high performance, open source HL7integration engine and application platform. more>>
Mergence is a high performance, open source HL7integration engine and application platform. It was developed to fill the need for an open source, fully transactional healthcare integration system capable of handling millions of messages per day, and thousands of concurrent LLP connections. Mergence is based on Apache ServiceMix, a lightweight enterprise service bus which conforms to the JBI standard, and HAPI, an excellent opensource HL7v2 API. We plan to support HL7v3 in the next release.
Mergence is still in heavy development, and documentation is still lacking, but the current release is already production-ready if you dont mind working with some XML. We have a well-tested and solid core in place, which is fully usable. Development of an AJAX administration console is underway and is the main focus of the 2.0 release.
We hope to have more complete documentation available in the next week.
Main features:
- Fully open source, under the GNU General Public License
- Built on standards-based technologies.
- End-to-end persistence with global transactions so no message can ever be lost.
- High-throughput, asynchronous architecture.
- Message vault with encrypted storage (embedded or external DB).
- Flexible message routing and transformation.
- Scriptable using Groovy
- Extensive logging, monitoring, and alerting system.
- Supports active clustering.
- Many bundled connectors, and compatible with any ServiceMix JBI component.
- NIO TCP connectors which can support thousands of concurrent connections.
- Support for processing/transforming flat files of unlimited size.
- Hot deployment of new components and configurations.
- JBI extensions for easily developing new HL7 components.
<<less
Download (30.9MB)
Added: 2007-06-07 License: GPL (GNU General Public License) Price:
533 downloads
Berkeley DB Java Edition 3.1.0

Berkeley DB Java Edition 3.1.0


Berkeley DB Java Edition is a high performance, transactional storage engine written entirely in Java. more>> <<less
Download (4.5MB)
Added: 2006-10-02 License: Open Software License Price:
1119 downloads
GNU-Monitor 0.0.13

GNU-Monitor 0.0.13


GNU-Monitor is a transactional monitor that allows client/server applications to be developed with minimal effort. more>>
GNU-Monitor is a transactional monitor that allows client/server applications to be developed with minimal effort.
GNU-Monitor project consists of transaction routing modules that ensure data integrity and recovery on abnormal termination.
Enhancements:
- New services .get_server_list and .get_service_list to get configuration info using the gm_cfgview tool.
- A new service .log-level to dynamically change levels of information on log files.
- A final solution for some transaction bugs.
<<less
Download (0.40MB)
Added: 2007-06-20 License: LGPL (GNU Lesser General Public License) Price:
857 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5