What kind of data storage and processing is needed
-
Hi,
So after reading a few posts here I have realised it a big deal to crawl the web and index all the links.
For that I appreciate seomoz.org's efforts .
I was wondering what kind of infrastructure they might need to get this done ?
cheers,
Vishal
-
Thank you so much Kate for the explanation. It is quite helpful to better understand the process.
-
Hi vishalkhialani!
I thought I would answer your question with some detail that might satisfy your curiosity (although I know more detailed blog posts are in the works).
For Linkscape:
At the heart of our architecture is our own column oriented data store - much like Vertica, although far more specialized for our use case - particularly in terms of the optimizations around compression and speed.
Each month we crawl between 1-2 petabytes of data, strip out the parts we care about (links, page attributes, etc) and then compute a link graph of how all those sites link to one another (typically between 40-90 billion urls) and then calculate our metrics using those results. Once we have all of that we then precompute lots of views of the data, which is what gets displayed in Open SIte Explorer or retrieved via the Linkscape api. These resulting views of the data is over 12 terabytes (and this is all raw text compressed data - so it is a LOT of information). Making this fast and scalable is certainly a challenge.
For the crawling, we operate 10-20 boxes that crawl all the time.
For processing, we spin up between 40-60 instances to create the link graph, metrics and views.
And the API servers the index from S3 (Amazon's cloud storage) with 150-200 instances (but this was only 10 1 year ago, so we are seeing a lot of growth).All of this is Linux and C++ (with some python thrown in here and there).
For custom crawl:
We use similar crawling algorithms to Linkscape, only we keep the crawls per site, and also compute issues (like which pages are duplicates of one another). Then each of those crawls are processed and precomputed to be served quickly and easily within the web app (so calculating the aggregates and deltas you see in the overview sections).
We use S3 for archival of all old crawls. Cassandra for some of the details you see in detailed views, and a lot of the overviews and aggregates are served with the web app db.
Most of the code here is Ruby, except for the crawling and issue processing which is C++. All of it runs on Linux.
Hope that helps explain! Definitely let me know if you have more questions though!
Kate -
It is no where near that many. I attached an image of when I saw Rand moving the server to the new building. I think this may be the reason why there have been so many issues with the Linkscape crawl recently.
-
@keri and @Ryan
will ask them. my guess is around a thousand server instances.
-
Good answer from Ryan, and I caution that even then you may not get a direct answer. It might be similar to asking Google just how many servers they have. SEOmoz is fairly open with information, but that may be a bit beyond the scope of what they are willing to answer.
-
A question of this nature would probably be best as your one private question per month. That way you will be sure to receive a directly reply from a SEOmoz staff member. You could also try the help desk but it may be a stretch.
All I can say is it takes tremendous amounts of resources. Google does it very well, but we all know they have over 30 billion in revenue generated annually.
There are numerous crawl programs available, but the problem is the server hardware to run them.
I am only responding because I think your question may otherwise go unanswered and I wanted to point you in a direction where you can receive some info.
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Help! Need to Get Traffic Back Up in Saturated Market
I was looking in one of my client's Google Analytics profiles, and noticed that they had two major drops in traffic before we started working with them—and they've never really recovered. The first, and most significant drop was around January 2015. And then the again, but not as drastic of a drop, was around September 2015. They are a heating and cooling company, but they are located out west so this shouldn't be a seasonality thing. Here is a link to what the BIG drop is traffic looks like in January 2015: http://imgur.com/a/Y1s8U To get a clearer picture, here are the numbers for the overall website traffic:
Reporting & Analytics | | BlueCorona
September 1, 2015 - September 30, 2015: 30,923 sessions
September 1, 2015 - September 30, 2016: 13,768 sessions Year over year traffic to the website dropped by 55%. Here is a link to what year over year looks like in Google Analytics: http://imgur.com/a/TPdJQ Like I said, we weren't working with them at the time so I don't know specifics about what might have caused this, but their numbers have never even come close to reaching what they used to be prior to the noticeable drop after September 2015. Does anyone have any insights into why this might be? Was there an algorithm change back then that could still be impacting them? Any ideas how to get them back to where they once were? Any input is greatly appreciated! Thanks.1 -
Conflicting average position data from Google Search Console?
I'm looking at Google Search Console data in Google Analytics, specifically Average Position as given in the Landing Page report, and the same metric broken out by mobile and desktop in the Devices report. In the Landing Page report, I see an aggregated average position that's much higher/worse than an actual average of what is reported for mobile, desktop and tablet traffic under the Device reporting. For example: Mobile: 5 Desktop: 5 Tablet: 5 So the average still should be roughly 5, right? Why would the Landing Page then show an aggregate Average Position of 8? I wouldn't expect to see a precisely same average given that different device types have different proportions that could render differently when the buckets are combined, but this is a huge swing. In fact, the aggregate Average Position as given in the top level Devices report is closer to 5 than to the 8 shown in the Landing Pages report. (These aren't actual numbers, but are illustrative of what I'm seeing, by the way.) Unless I'm missing some vital difference in the way that Average Position is reporting for the Landing Page report versus the Device reports, it doesn't seem like this should be possible. What am I missing?
Reporting & Analytics | | BradsDeals0 -
Does applying filters in Google Analytics affect Moz Data?
Hello, I'm dealing with spam in google analytics, applying filters (and using segments for historical data) Does applying a filter in GA affect Moz data, future or historical? Is there a way of doing this? Thank you!
Reporting & Analytics | | wearehappymedia0 -
Need REGEX help
Hi Mozzers, I have multiple filters in one of the GA accounts I manage. I just created new pages that have URLs containing the keyword "spring" (location in texas) and wanted to filter out spring in the GA Spring profile(screenshot) . My issue is it will filter all the URLs containing the kw spring and the website has multiple blog post containing the same kw (spring). So what I need is a Regex formula so I can make sure I track only the Spring tx traffic and not the blog posts. Thanks for letting me know how can I do that! xejc38l.png
Reporting & Analytics | | Ideas-Money-Art0 -
Ecommerce Revenue Data is not Similar to Admin Panel Sales Data
I am webmaster of E commerce website. And, We're selling online home decor products to USA! Today, I was checking my website Admin Panel sales section. I have found big variation in E commerce Revenue data on Google Analytics and Admin Panel Sales Data. I am looking forward forward for quick discussion or suggestion on it. If anybody require further information to know more about issue so please let me know!
Reporting & Analytics | | CommercePundit0 -
No data available for example.com in WMT. What to do?
Hi, Our problem is simple: we have statistics data for www.example.com but some data is missing for example.com (eg."links to your site", "structured data, "html improvements") . However, "search queries", "index status" and some other data is available for example.com. The problem is that we have over 5000 subdomains and we see no information about them.(especially links pointing to them). We followed every advice given by Google but doesn't seem to work: -Adding www.example.com and example.com in WMT -Setting www.example.com as the preffered domain -Using DNS verification to verify our site What do we have to do? Thank you, Axello
Reporting & Analytics | | axello0 -
Is there a tool to automatically gather website SEO data?
I am looking for a tool that will crawl a website and create a spreadsheet listing out all key data such as title, meta description, etc. Anyone know of an available tool to do that?
Reporting & Analytics | | jfeitlinger0 -
Blocking our IP's but wondering if Google still uses our search data?
The company owner here has our (company) website as his home page. I excluded our static IP’s on Google Analytics, but is that good enough to keep Google from using his search traffic as an indicator of anything negative. Does Google still take into account his activity, but simply block it from my reporting? Finally, does one person actually have that kind of influence as far as time on site, bounce rates, etc. Should I convince him to find a new home page?
Reporting & Analytics | | Ticket_King0