Top Banner
Научные вызовы СУБД и система SciDB Павел Велихов Sunday, April 24, 2011
36

научные вызовы к субд и система Sci db. п. велихов. зал 2

Jun 16, 2015

Download

Documents

rit2011
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: научные вызовы к субд и система Sci db. п. велихов. зал 2

Научные вызовы СУБД и система SciDBПавел Велихов

Sunday, April 24, 2011

Page 2: научные вызовы к субд и система Sci db. п. велихов. зал 2

Sunday, April 24, 2011

Page 3: научные вызовы к субд и система Sci db. п. велихов. зал 2

e-Science

Наука организуется вокруг данных

Крупные проекты по сбору и диссеминации данных

LHC Grid: 50+ стран, 200+ институтов

Open Grid, Virtual Observatory, GEON Grid, PDB...

Sunday, April 24, 2011

Page 4: научные вызовы к субд и система Sci db. п. велихов. зал 2

Пример: PDB (SDSC)

Sunday, April 24, 2011

Page 5: научные вызовы к субд и система Sci db. п. велихов. зал 2

Лавина данных

Раньше bottleneck был в получении данных

Сенсорные технологии перевернули картину

Сейчас bottleneck = анализ полученных данных

Sunday, April 24, 2011

Page 6: научные вызовы к субд и система Sci db. п. велихов. зал 2

Лавина данных

Физика высоких энергий - LHC: 15 Pb/год

Астрономия - LSST: 6 Pb/год

Астрономия - ЛИРА: 200-300 Tb

Науки о земле: сотни Tb (например LIDAR)

Геномика: сотни Tb с секвенсеров

Sunday, April 24, 2011

Page 7: научные вызовы к субд и система Sci db. п. велихов. зал 2

Проект ЛИРА

Sunday, April 24, 2011

Page 8: научные вызовы к субд и система Sci db. п. велихов. зал 2

Сложные сенсоры

На примере астрономии

Как было раньше

ПЗС матрица

ЛИРА

Sunday, April 24, 2011

Page 9: научные вызовы к субд и система Sci db. п. велихов. зал 2

Хранение и обработка данных

Надо хранить самые сырые данные

Процедура извлечения научных данных должна быть прозрачной и повторимой

Sunday, April 24, 2011

Page 10: научные вызовы к субд и система Sci db. п. велихов. зал 2

Анализ

Анализ численных рядов

Поиски в окрестностях точек

N^2 и N^3 алгоритмы

ковариация, PCA, SVD

Sunday, April 24, 2011

Page 11: научные вызовы к субд и система Sci db. п. велихов. зал 2

Современные СУБД

Реляционная модель или noSQL

Плохо масштабируются

High Availability - сложно дается

Закрытый код, дорогие лицензии

Почти ни один крупный проект не использует СУБД

Sunday, April 24, 2011

Page 12: научные вызовы к субд и система Sci db. п. велихов. зал 2

Кто как хранит

данные в файлах, немного метаданных в СУБД

LHC

сырые в файлах, вторичные в СУБД

PanSTARRS, LSST

доморощенные системы

Yahoo, Google, Amazon, и другие

Все в СУБД

Wallmart, eBay, SDSS

Sunday, April 24, 2011

Page 13: научные вызовы к субд и система Sci db. п. велихов. зал 2

SciDB

Sunday, April 24, 2011

Page 14: научные вызовы к субд и система Sci db. п. велихов. зал 2

SciDB

Проект стартовал в 2008 г

Основатели проета:

Stonebraket, DeWitt, Becla и др.

Международная комманда, 5 российских разработчиков

Sunday, April 24, 2011

Page 15: научные вызовы к субд и система Sci db. п. велихов. зал 2

Mike StonebrakerIngres

PostgresIllustraCoheraVerticaVoltDB

Sunday, April 24, 2011

Page 16: научные вызовы к субд и система Sci db. п. велихов. зал 2

Цели SciDB

“OLAP” для науки

Система с открытым кодом

Качество коммерческих продуктов

Масштабируемость до петабайт

Sunday, April 24, 2011

Page 17: научные вызовы к субд и система Sci db. п. велихов. зал 2

Большая цельСырые данные

SciDBХранение, обработка,

анализ

Воспроизводимые научные результаты

Sunday, April 24, 2011

Page 18: научные вызовы к субд и система Sci db. п. велихов. зал 2

Модель данных SciDBi

j A : int B : float C : float D : nested

Sunday, April 24, 2011

Page 19: научные вызовы к субд и система Sci db. п. велихов. зал 2

Вертикальное хранение

a1 a2 a3

a4 a5 a6

a7 a8 a9

b1 b2 b3

b4 b5 b6

b7 b8 b9

c1 c2 c3

c4 c5 c6

c7 c8 c9

Sunday, April 24, 2011

Page 20: научные вызовы к субд и система Sci db. п. велихов. зал 2

Хранение

Чанк как единица хранения и обработки

Чанки большие - десятки-сотни мегабайт

Иногда подразделяются на подчанки для cpu cache (мегабайты)

Sunday, April 24, 2011

Page 21: научные вызовы к субд и система Sci db. п. велихов. зал 2

Транзакционность

Научные данные не меняются

Изменения только как новая версия

Навигация между версиями

Sunday, April 24, 2011

Page 22: научные вызовы к субд и система Sci db. п. велихов. зал 2

Транзакционность

Eventually consistent

COW и Delta

Избегаем большого количества замков, лога, управления буфферами

Избегаем накладных расходов современных СУБД

latching, locking, logging, buffer management

Sunday, April 24, 2011

Page 23: научные вызовы к субд и система Sci db. п. велихов. зал 2

Анализ данных

AQL и AFL

AFL: filter( subsample(A, 10, 100), x > 0.5 )

Специфические операторы: subsample, regrid

Sunday, April 24, 2011

Page 24: научные вызовы к субд и система Sci db. п. велихов. зал 2

Subsample

Sunday, April 24, 2011

Page 25: научные вызовы к субд и система Sci db. п. велихов. зал 2

Regrid i

jSrc

u

vTgt

assign: (u,v) -> { (i,j) }aggregate: f (assign(u,v)) -> tgt

Sunday, April 24, 2011

Page 26: научные вызовы к субд и система Sci db. п. велихов. зал 2

Пример запроса

S: <x:float>[i,j]T: <z:float>[u,v]regrid(

S,T,assign: subsample(s, [k-10,l-10,k+10,l+10])agg: sum( x * ae-(i-b)^2/2c^2)

Sunday, April 24, 2011

Page 27: научные вызовы к субд и система Sci db. п. велихов. зал 2

Конвейерное выполнение

Пример: subsample

интерфейс: getChunk( attribute, pos )

пересылаем вниз: getChunk( attribute, pos + offset)

если чанк внутри окна опрератора, передаем вверх

иначе: распаковываем, обрезаем, передаем вверх

Sunday, April 24, 2011

Page 28: научные вызовы к субд и система Sci db. п. велихов. зал 2

Параллелизм в SciDB

core

overlap

Sunday, April 24, 2011

Page 29: научные вызовы к субд и система Sci db. п. велихов. зал 2

Параллелизм в SciDB

Оптимизатор запроса расчитывает хватит ли overlap для запроса

Докидывает доп. данные оператором Scatter-Gather

Sunday, April 24, 2011

Page 30: научные вызовы к субд и система Sci db. п. велихов. зал 2

Параллелизм

f

g

f*g

core

overlap

Свертка: f*g

Sunday, April 24, 2011

Page 31: научные вызовы к субд и система Sci db. п. велихов. зал 2

Параллелизм

Также: распределение по колонкам и столбцам, и блочно-циклическое как в ScaLAPACK

Send, Recive как в MPI

Sunday, April 24, 2011

Page 32: научные вызовы к субд и система Sci db. п. велихов. зал 2

Дополнительные возможности

Uncertainty - арифметика интервалов

Provenance

отслеживание результатов

playback

Sunday, April 24, 2011

Page 33: научные вызовы к субд и система Sci db. п. велихов. зал 2

Расширяемость

User Defined Types - модель PostgreSQL

UDF - произвольные функции над массивами

Интерфейсы к Python, R, Matlab(?)

Sunday, April 24, 2011

Page 34: научные вызовы к субд и система Sci db. п. велихов. зал 2

Статус

Сентябрь 2009 демонстрация прототипа на VLDB

Январь 2011 - выпуск версии 0.75

Май 2011 - выпуск версии 1.0

Sunday, April 24, 2011

Page 35: научные вызовы к субд и система Sci db. п. велихов. зал 2

Немного о структуре

SciDB Inc.

paradigm4НБД

Non-profit

Sunday, April 24, 2011

Page 36: научные вызовы к субд и система Sci db. п. велихов. зал 2

Q&A

Sunday, April 24, 2011