I hope this question isn’t too “right field” and I'll be upfront in saying I'm a newb compared to many people on stackflow...
I want to compare object representations of images, audio and text for an AI project I am working on. I'd like to convert all three inputs into a single data type and use a central comparison algorithm to determine statically probable matches.
What are the “fastest” native .Net and SQL data types for making comparisons like this? In .Net what data type requires the least amount of conversions in the CLR? For SQL, what type can be “CRUD-ed” the fastest?
I was thinking bytes for .Net and integers for SQL but integers pose a problem of being a one dimensional concept. Do you think the images and audio should be handled within the file system rather than SQL…I’m guessing so…
FWIW I'm building a robot from parts I bought at TrossenRobotics.com
Personally, if you need to do frequent comparisons between large binary objects, I would hash the objects and compare the hashes.
If the hashes don't match, then you can be sure the objects don't match (which should be the majority of the cases).
If the hashes do match, you can then start a more lengthy routine to compare the actual objects.
This method alone should boost your performance quite a bit if you're comparing these objects frequently.