I have Point feature class with 200K data with photos (blob) on it. Each row has around 1MB+ photo in File GDB. So, in total there are around minimum 200K*1Mb of blob data.
Now, I want to somehow reduce the photo size for each record upon loading data into SDE Geodatabase.
How can I do this ? I have storage limitation on SDE Geodatabase.
I don't know of a straightforward way to modify attachments in situ, I think you'd want to export them from your FGDB first, delete the attachments, modify them from your file system, reattach them, then migrate your FGDB data with the new attachments to SDE. You could use the Attachments toolset in the Data Management toolbox to do this - you'll definitely want to test your workflow with the original FGDB backed up elsewhere though. There are quite a few ways to resize images in bulk, Microsoft's PowerToys has an Image Resizer tool as one example that I use fairly often.
An alternative you might want to consider given space considerations is keeping the images at their original quality but no longer maintaining them as attachments, like if you have a network drive that everyone using your SDE feature class will have access to, move the images at full quality to that drive and add a field to your feature class that contains the exported file location (or file name, if they'll all be in one folder).
Step 1 is going to be use the Export Attachments tool to get the photos out of the FGDB. From there you can either make changes to the photos on your local file system.
Step 2 is to Generate Attachment Match Table to line up the attachments with their corresponding SDE feature.
If storage is an issue in your SDE I would consider keeping the files on a file system and use the match table to maintain a link to the files in your SDE. If you do decide to load the attachments into your SDE you would use the Add Attachments tool.