Loading...
Answers
MenuI am building an image archive that will ultimately have millions of images you can search. I'd love the hear your thoughts on technologies to use.
My list so far:-
Storage - S3
CDN - CloudFront or CloudFlare
Database - ?
Front-End Framework - ?
Answers
I have worked on projects handling transfer of large image files across multiple vendors and being served on web for different targets (mobile, web etc.). I have also implemented cloud and DevOps solutions for high volume/scale of data and transactions.
While I could tell you a list of technologies which can be used - the problem here is more of design and architecture. So I will start with that. Also a lot of decisions are based on more information and the use case - so I will need information on certain aspects of your application.
1) For searching an image users will enter search terms. You will have to associate the search terms/tags to actual images. While there are multiple ways to do this association - what is the link between a search term and image in your case. Do you have a separate database/service which will link given search terms to given set of images?
2) Since you are talking about handling millions of images - they will need to be partitioned logically or bucketized for optimum way to store and search. Is there a natural distribution? Do your users access all the images all over the world?
3) For any data storage related to images - we will need to go one detail further. While relational DB might serve a lot of needs, there might be use cases where considering other storages will be needed. Some questions which will lead to answers are - what kind of data per image will be stored? How frequently this data might change? How many new additions will happen on this archive? How fast would you want the updates to be visible to users/consumers?
4) What kind of traffic do you expect roughly? This will decide a lot design around auto scaling, load balancing and other aspects.
5) I am not a front end expert - but similar principles of scaling would apply to front end stack. Though I can not necessarily answer what technologies might fit your needs best.
Related Questions
-
How do I find the Total Addressable Market for a Big Data product like Datameer?
As someone who has built TAM models for various industries - I can attest this isn;t always easy. Many analyst firms (former analyst here) typically do some surveys and research among public company revenue reports for the year and then do some pixie dust extrapolating. The hard thing about a market where startups like Datameer play is that it is a) a nascent market and b) not a "zero sum" game. This makes it difficult to a) fully understand WHICH companies actually are in the market for this flavor of BI and b) know how the space is developing in terms of white space AND disrupting the entrenched BI giants. You might want to look at the press published versions (read: free) of analyst market share reports, and extrapolate from their. Also, back-channel gossip may give you some revenue numbers on these players - and if you assume pipeline is 3-4x revenue, build a model from there. Hope this helps.MS
-
Best way to fund my app for a startup? The programming phase is a lot of money.
Hi, check outmy response to another question similar to yours. I hope it helps. Overall what you need to do is grow your community of users, or depending on the app generate enough sales or interest typically before any investors considering joining you. Not impossible to get investors early on, but your best bet is through kickstarted if anything. My responses tend to get UpVoted by other experts. Check it out https://clarity.fm/a/8032HV
-
What is the best way to do a permissions system for a low traffic administration system, PHP preferred, but general suggestion is also valuable.
Hi, I have been a PHP developer for 13 years and have experience building enterprise applications. What framework are you using? Most PHP frameworks have a built in authentication and authorization mechanism. For example, Yii has a builtin RBAC system that allow you to define a hierarchical permission system. If you're not using a framework or you just want to implement your own system for whatever reason then you can utilize Object Oriented Design and implement a Base controller (if MVC) that checks the permission for each request. That won't use a lot of if statements. Probably need more info, to give definitive guidance. Hope that helps.AP
-
Programming language for web platform?
NOT Wordpress! Facebook uses PHP among other languages, if that tells you anything. Every programmer will be bias toward what they like and what they are used to coding with. The bigger question for you is, have you completed your due diligence? Is there a real need for another crowd funding platform? Why would yours be so different that it would stand out among the others? Who is you target market? What is your unique selling proposition? How big is your potential market? Should you go vertical or horizontal? You may have already answered these and the two dozen other questions every entrepreneur must ask before they waste valuable time and money to become another business start up statistic. Assuming you have a strong grasp of where you are heading and a solid strategic blueprint to be able to predict your growth, the last thing I will leave you with is this. The programing language is not nearly as important as your database structure and IT infrastructure for the purpose of scale. Not to say the language is not important - all three components work together. Spend time on the other two and work backwards. If you would like to discuss this further at no charge, use the link below. I provide a free 30 minute consultation to first time callers. https://clarity.fm/kevinmccarthy/FreeConsult Best regards, Kevin McCarthy www.kevinmccarthy.comKM
-
How can I assess the value of my data assets?
I have been helping clients design, build, and deploy data platforms for many years. Initially on premise, but now in the cloud. This is a really good question. My immediate thought is, yes, there is value in this data. The more difficult one to answer is where and how? The obviously answer is monetisation i.e. what would people or organisations be willing to pay for this data. More importantly, is this my data (vs. customer data) to sell? The data may also represent your intellectual property or be your "secret sauce" so you might not necessarily want to sell it. It is then worth asking questions like "what would the impact on my organisation be if I did not have this data?" or "what would the impact on my organisation be if my competitors had this data?". Hopefully this has given you some ideas. Feel free to book in a call if you have any questions or would like to delve into the detail.GR
the startups.com platform
Copyright © 2025 Startups.com. All rights reserved.