Предложения по дизайну базы данных сценариев обмена трафиком - PullRequest
1 голос
/ 24 декабря 2011

Я хочу разработать скрипт обмена трафиком, который подсчитывает входящий трафик и пытается вернуть соотношение трафика: m (например, 1 in: 2out).В базе данных я хочу получить информацию о сайтах (SITE), затем отслеживать трафик по сайту и ip (DAILY-HITS), затем я хочу, чтобы торговля подсчитывалась за час или день - пока не уверен (SITE-TOTAL-HITS)).Я хотел бы получить какие-либо предложения по созданию хорошо спроектированной базы данных для обработки трафика.

Сейчас я беспокоюсь об отслеживании входящих обращений, а потом о возвращении.В общем, мой настоящий вопрос заключается в том, как мне спроектировать базу данных, которая может эффективно использоваться для возврата идеального объема трафика, скажем, за последние 24 часа.Проблема, с которой я сталкиваюсь, заключается в том, что когда дело доходит до программирования, я хочу иметь наилучшую базу данных для получения информации за последние 24 часа и обеспечения того, чтобы я оставался в пределах нормы.Вот что я разработал для базы данных:

САЙТ (просто базовая информация):

id,

url,

title,

description.

DAILY-HITS:

id,

site_id,

ip,

дата (включая время - будет разбито на час),

сумма (подсчитайте, сколько хитов с этого ip за этот час).

SITE-ПОЛНЫЕ ХИТЫ (возможно, обновляются каждый час с помощью скрипта - полезно позже для подсчета последних 24 часов):

id,

site_id,

год,

месяц,

день,

час.

Любые советы, предложения или указать мне в правильном направлении будет принята с благодарностью.Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 24 декабря 2011

Вот мое мнение о том, что оно стоит:

Сайт:

Same as what you have

Трафик:

id,
site_id,
ip,
request_DateTimeStamp <- this is a date and time for the url request

здесь не в счет, просто войдите сюда, вот почему:

assume you do have a count column
- url is requested
- lock up a record in the database with the same date and hour and ip
- Found, update the account
- Not Found, Create a new record and set the count to 1

это долгий процесс для таблицы, которая, по-видимому, будет многократно обновляться: в течение часа несколько запросов от одного и того же ip будут пытаться обновить одну и ту же запись, и им придется ждать друг друга.

уберите этот столбец подсчета, и ваш процесс состоит в том, чтобы просто регистрировать входящий трафик, всегда создавая новые записи.

Что касается анализа данных, вы можете сделать это несколькими способами:

Вы можете попробовать построить кубы: http://datacharmer.blogspot.com/2010/01/multi-dimensional-cubes-in-mysql.html

или вы можете создать таблицы агрегации информации, такие как site_total_hits, и просто обновлять их, используя ночные задания, или часто, если вы хотите их запускать, в зависимости от того, насколько точными они должны быть.

это мои 2 цента: D

0 голосов
/ 13 ноября 2013

Вы можете использовать HitLeap для этого.

Что такое HitLeap?HitLeap - это служба обмена трафиком, также известная как служба автоматического доступа. Мы помогаем вам увеличить количество посещений вашего сайта, рейтинг (alexa, google) и многое другое.Наша партнерская программа дает комиссию за наличные и трафик до 50%.Как это работает?После регистрации вы отправите все веб-сайты, на которые хотите отправить трафик.Тогда вы будете зарабатывать бесплатный трафик, просматривая чужие сайты.Кроме того, вы можете купить пакет трафика у нас.

Перейдите по этой ссылке, чтобы зарегистрироваться

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...