?

Log in

No account? Create an account

Previous Entry | Next Entry

В контексте обсуждения гугловской нереляционной базы BigTable на одном из форумов была упомянута статья "One Size Fits All": An Idea Whose Time Has Come and Gone  (перевод). Автор статьи разделяет обработку данных на outbound  - обработка данных после их сохранения (обычные реляционные СУБД) и inbound, где данные обрабатываются до их помещения в базу. В качестве примера применения вторых - потоковая обработка (с возможным сохранением) финансовой информации, а также информации с многочисленных RFID'ов/датчиков в реальном времени с помощью StreamBase.
Если необходимы агрегатные запросы (SUM, MAXи прочее), то, учитывая, что у потока нет границ, рассматривается некое временное окно, в рамках которого данные считаются конечными.

В задачах именно хранения предлагается использовать базы ориентированные на хранение столбцов (columns) , а не строк (rows). Грубо говоря, это усложняет (и замедляет) создание записи, но упрощает и ускоряет чтение/выполнение запросов. По идее, это также позволяет легко распределять базу между многими узлами, т.к. одна машина может обрабатывать запрос по одному столбцу, другая - по другому. В случае же хранения данных по строкам, как в RDBMS, для выполнения любого запроса нужен будет доступ ко всем строкам.

По-видимому, нас через некоторое время ждёт что-то сильно новое в области стандартов СУБД.
Реляционные базы больше не устраивают своими характеристиками, а что-то типа Bigtable слишком усложняет (по сравнению с RDBMS) решение наиболее распространенных задач.

Tags:

Comments

( 2 comments — Leave a comment )
thesz
Mar. 3rd, 2009 02:45 am (UTC)
Реляционные базы больше не устраивают своими характеристиками конкретно кого?

Бурление наподобие этого я слышу уже много лет. ;)
cr_it
Mar. 3rd, 2009 11:00 am (UTC)
Конкретно Google. Возможно, Амазон (SimpleDB нереляционная - просто не знаю насколько глубоко они её используют). Это только из тех, что "на слуху"
( 2 comments — Leave a comment )