NoSQL: А ты уже отказался от SQL? Статья в журнал Хакер

Статья написана специально для журнала Хакер и опубликована на сайте журнала (в несколько сокращенной и отредактированной версии). Ниже я публикую свой оригинальный вариант, без правок или ограничения на объем материала.
Первым кинь камень в того, кто скажет, что делать новый суперпроект надо с SQL базой данных.
Скажи честно, тебе ведь интересно, как устроены внутри все эти суперсайты, на которых висишь сутками ты и еще сотни миллионов человек сразу? Ну, это я говорю о Facebook и нашем вКонтакте, Google, Amazon, ebay, Twitter и десятки других сайтов, которые самые посещаемые в мире. Если ты делал уже сайты, то знаешь, что большинство веб-сайтов просто странички на PHP вместе с базой данных мускула (MySQL). База данных нужна для всего – там и новости и товары из магазина, статьи и комментарии, и даже самое вкусное – логины и пароли пользователей, которые взламываются за пару секунд. Ты же даже не мыслишь о том, что сделать сайт без применения базы данных вообще – я говорю о реальном сайте типа форума или социальной сети, ну, на худой конец, магазин хакерских программ?
База данных – вширь и ввысь
В реальности так и есть – очень многие большие дядьки разработчики и архитекторы также думали, что без базы не обойтись, продолжая делать все более и более мощные сайты. Но потом все столкнулись с тем, что, сколько ни тужься, не придумывай всяких хаков и умных штучек, а базы данных плохой выбор, если у тебя сто миллионов посетителей. Ага, они тоже слышали о кластерах и распределенных системах, или даже об облачных вычислениях (можно почитать и у нас). Если надо, чтобы больше людей скачало новый порно-ролик Берковой, достаточно поставить еще пару серверов и скопировать на них файлы. А вот базы данных так просто не работают. Тут и появилась проблема масштабирования. Каждый решает ее по-своему.
Приветствуем читателей. К сожалению, не было возможности раньше написать, сейчас активно доводим до альфа-тестирования собственный стартап и проектируем новую он-лайн игру. И тема сегодняшней статьи как раз в плане инноваций. Вот вы часто создаете проекты? И, наверное, везде применяете базу данных, в частности, MySQL (а кто-то и PostgreSQL). Но вот что интересно, по опыту да и просто после чтения описания различных архитектур видно, что далеко не везде в проекте нужны ключевые особенности баз данных, во многих случаях базу используют просто как некоторое хранилище обычных данных. Например, в системах кеширования базы обычно не применяются, более того, кеширование как раз используют для того, чтобы избежать лишних запросов. А что используют для кеширования наиболее часто? Memcached. А что это такое? Это распределенная система хранения данных на основе хеш-таблицы. В общих чертах, это просто хранилище пар ключ-значение, над которыми можно производить только основные операции - запись, чтение, удаление и проверку на присутствие. Да-да, нет никаких фильтров, выборок, сортировки, самый максимум - система тегов для выборки одним запросом всех связанных записей. И во многих случаях такого функционала вполне достаточно.

Приветствуем наших читателей. Кстати, у нас произошло небольшое событие - да-да, именно у нас с вами. Если заметили, уже несколько дней счётчик Feedburner, при всех огрехах в работе сервиса за последние месяцы, показывает стабильно количество читателей больше 500. Это достаточно знаковая цифра для меня лично и, наверное, для отдельного блога узкотематической профессиональной направленности тоже. А достаточно скоро у нас будет первый день рождения, но пока ещё рано праздновать... нужно работать. И сегодня я расскажу вам о сервере приложений
Приветствуем наших читателей. На улице дождь и вообще погода радует (радует потому что при солнечном свете прямом достаточно трудно на работе сосредоточиться, поэтому дождливые дни для меня самые рабочие), поэтому сегодня мы поговорим о чём-то высоком... облачном. Да, о новом или, вернее, малоизвестном у нас стартапе, который создал свою платформу для облачных вычислений, хотя и это не совсем уж так точно - это платформа, которая предоставляется как сервис и позволяет получить гибкую и масштабированную среду исполнения для веб-проектов. В чём-то это все похоже на известный всем и уже почти нарицательный
Приветствую наших читателей. Некоторый перерыв в публикациях был связан с моей командировкой в Киев и последующей срочной работой, впрочем, сейчас я уже могу выкроить время для новой публикации. На этот раз я вспомнил забытой мною рубрике интересных материалов и, посмотрев на открытые вкладки и закладки с тем, что меня заинтересовало, понял, что "забывать дальше" эту рубрику никак нельзя. Ведь сегодня в сети очень много материалов, вместе с этим качественные и интересные ещё нужно поискать. Этим то мы и займёмся. Приятного и, главное, полезного чтения. 




Свежие комментарии