Reputation: 928
I have live audio that I would like to feed into a oracle database. I would then like the clients to be able to connect to the audio and be able to listen to any point of the live feed. Currently I have it setup to play audio from committed blobs but any raw seek'able data would be fine.
The question is how exactly do I stream raw data into a instantly available destination/source? I have thought about using Advanced Queues but that has a random seeking problem. I have though about creating table and just putting raw chucks into but seems like it would be quite expensive and dirty.
Is there some way I can create a multi consumer blob or some sort of multi consumer buffer?
Upvotes: 1
Views: 96
Reputation: 35401
I'd say this a non-friendly concept for a RDBMS. Generally while data is being inserted/updated in a database it isn't available for other sessions to use (or, in regard to updated data, the pre-update data is returned until the change is committed).
Once the audio is completed and committed to the database, the issue is very different.
I'd look for a dedicated application for streaming the live audio, and have the database as just another subscriber to that stream, recording it to the database.
Upvotes: 0
Reputation: 86774
Don't store the audio in the database. Put the audio in a file on the filesystem and store a pointer to it in the DB. The "multi-consumer blob" is just a filesystem file.
Upvotes: 1