Параллельная поисковая машина для сверх-больших баз данных по окружающей среде Михаил Жижин, ИФЗ РАН jjn@wdcb.ru Eric Kihn, NGDC NOAA ekihn@ngdc.noaa.gov План семинара Генератор погодных сценариев ESG и нечеткий поиск данных Интерактивный ресурс данных по солнечно-земной физике SPIDR и моделирование космической погоды Архив изображений Земли из космоса SABR Ключевые слова и технологии ООП, параллельные вычисления, распределенные базы данных Искусственный интеллект и нечеткие множества Компьютерные кластеры Linux, Web (DHTML), XML, Java, JSP, RMI, SOAP, Web services Переносимость и масштабируемость Open Source Что мы храним и ищем? Пользователи Проекты Среды Флот ESG Океан Авиация, экология, метеорология Связь и навигация, GPS Климат и атмосфера SPIDR Спутниковые операторы Наблюдения Земли из космоса Ионосфера Магнитосфера и космос SABR Спутники Параллельная поисковая машина Ищет события как определенные условия и/или тренды в архивах данных Реализована на вычислительном кластере с распределенными базами данных и параллельными алгоритмами их обработки Подключение сетевых клиентов к поисковой машине не требует особых вычислительных затрат и трафика Основные модели данных Временные ряды на сетке - BLOBS Гранулирование по времени BLOBS зависит от приложений: 1 год для климатических данных, 1 день космической погоды Метаданные в формате XML, включая символьные выражения и формулы для виртуальных параметров (напр., скорость ветра) Проекция на общую терминологическую базу метаданных Протоколы и интерфейсы JDBC (доступ к кластеру баз данных) Java RMI, JAX-RPC (модели данных высокого уровня и распределенные синхронные сервисы) JMS, JAXM (асинхронные сервисы на EJB платформe) SMTP, Java Mail (синхронизация региональных узлов) HTTP (доступ пользователей) Модель данных ESG Distributed Environmental Data Model N-CPU Cluster Time Interval N Pressure level parameters Time interval 1 = [Year 1, Year 2] CPU 4D Grid 1-1 CPU 5D Grid 1-2 Time interval 2 = [Year 2, Year 3] CPU 4D Grid 2-1 CPU 5D Grid 2-2 4D Grid = time X lat X lon X parameter ... Time Interlval 2 Time interval 1 Surface level parameters Time interval N = [Year N-1, Year N] CPU 4D Grid N-1 5D Grid = time X lat X lon X level X parameter CPU 5D Grid N-2 Поиск событий в ESG Поиск и отбор источников данных Редактор сценариев нечеткого поиска Параллельный запрос в базы данных Нечеткий поиск событий Визуализация результатов поиска Экспорт данных, внешние сервисы Поиск и отбор источников данных Узлы и области на сетке Временные ряды в узле 5-мерная визуализация в области Поиск событий в терминах нечеткой логики WSG lingustic variables 1 Medium Membership Grades «классическое» множество 0.8 Small Large Very Small 0.6 Very Large 0.4 0.2 0 0 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.9 1 WSG numeric variables 1 Membership Grades «нечеткое» множество 0.1 ~ 0.3 0.8 < 0.2 > 0.7 0.6 0.4 < x < 0.6 0.4 0.2 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 X = normalized variable values 0.8 Нечеткие термины Языковые Числовые Очень большой Больше X0 Большой Равно X0 Средний Между X0 и X1 Малый Меньше X0 Очень малый Нечеткая логика First operand: fuzzy set A Fuzzy NOT A 1 A Fuzzy AND AB min A , B Second operand: fuzzy set B Fuzzy OR AB max A , B Нечеткое И: Т-норма Определение: T : 0,1 0,1 0,1 A B x T A x , B x T 0,0 0, T (a,1) T 1, a a (boundary ) a c and b d T a, b T c, d (montonicit y) T a, b T b, a (commutativ ity ) T (a, T (b, c)) T (T (a, b), c) (associativ ity ) Примеры: Tmin a, b min( a, b) a b (minimum ) Tap a, b ab (algebraic product ) Формулы Ягера (Yager) Определение: TY a, b, q 1 min 1, 1 a 1 b SY a, b, q min 1, a b q q q 1 q q , 1 q , q 1 q 1 Пределы: TY a, b,1 0 (a b 1) (bounded lim q TY a, b, q min( a, b) (minimum) SY a, b,1 1 (a b) (bounded lim q SY a, b, q max( a, b) (maximum) product) sum) Гладкость норм Ягера (a) Two fuzzy sets A and B 1 A 0.5 B a) Нечеткие функции принадлежности множеств A и B; 0 (b) T-norm of A and B 1 b) T-нормы (И) для q = 1, 2, 5, и 50; 0.5 0 (c) T-conorm (S-norm) of A and B 1 0.5 0 c) T-конормы (ИЛИ) для q = 1, 2, 5, и 50 Случай двух переменных Многомерный поиск в ESG Многомерные функции принадлежности в ESG задаются как конъюнкции (И) одномерных функций принадлежности для каждого параметра и узла Например, «сильный ветер» И «средняя температура» И «влажность 60%» В качестве оператора И используется Тнорма Ягера при q=5 January Wind Speed Record Wind Speed (kts) 20 “High” Wind 15 10 5 0 1/1/97 1/6/97 1/11/97 1/16/97 1/21/97 1/26/97 1/31/97 Date Temperature (deg C) January Temperature Record “Average” Temperature 30 25 20 15 10 5 0 1/1/97 1/6/97 1/11/97 1/16/97 1/21/97 1/26/97 1/31/97 Date Rel. Humidity (%) January Relative Humidity Record 100 80 “About” 60% Humidity 60 40 20 0 1/1/97 1/6/97 1/11/97 1/16/97 Date 1/21/97 1/26/97 1/31/97 Нечеткий запрос Сценарий ESG Результат нечеткого поиска Интерактивное моделирование Заполнить форму на счет модели Собрать данные из сети Рассчитать модель Визуализировать результаты Вернуть ссылки на графику и данные Model run request Ocean API SPIDR API ESG API ESG Web/JSP server Model run visualiaztion and output NOAA Modeling cluster ESG visualization server ION - Java IDL wrapper Климатические модели ESG NCEP/NCAR CDAS/Reanalysis Project Output Parameters: 1) pressure level data on 10 isentropic surfaces: horizontal winds, omega (dP/dt), geopotential height, specific/relative humidity, absolute vorticity and divergence on standard pressure levels every 6 hours; 2) total cloud cover, convective and total precipitation; 3) surface wind stress, latent/sensible heat flux, soil temperature/moisture, gravity wave drag, SST, 2m temperature, 2m humidity, 10m winds, runoff, mean sea level pressure, surface pressure, and snow. The data is available every 6 hours. The above list is not complete. URL: http://wesley.wwb.noaa.gov/reanalysis.html COAMPS - Coupled Ocean/Atmosphere Mesoscale Prediction System Output Parameters: Similar to NCEP/NCAR model URL: http://www.nrlmry.navy.mil/projects/coamps/ ACMES - Advanced Climate Modeling and Environmental Simulations Output Parameters: Similar to NCEP/NCAR model URL: http://www.meso.com/meso/research/acmes/acmes.html MM5 – 5th generation mesoscale model of atmospheric circulation Output Parameters: Similar to NCEP/NCAR model URL: http://www.mmm.ucar.edu/mm5/mm5-home.html Космические модели ESG IRI - International Reference Ionosphere Model Output Parameters: Electron density, electron temperature, ion temperature, ion composition (O+, H+, He+, NO+, O+2) URL: http://nssdc.gsfc.nasa.gov/space/model/models/iri.html AMIE - Assimilative Mapping of Ionospheric Electrodynamics Model Output Parameters: Ionospheric electric potential distribution URL: http://www.hao.ucar.edu/public/research/tiso/amie/AMIE_head.html MSM - Magnetospheric Specification Model Output Parameters: Electron and ion fluxes in the inner and middle magnetosphere; fluxes of electrons precipitating into the ionosphere; ionospheric electric fields; magneticfield mapping information URL: http://rigel.rice.edu/~freeman/dmb/index.html PIM - Parameterized Ionospheric Specification Model Output Parameters: Electron density profiles (EDPs) between 90 and 25000 km altitude, corresponding critical frequencies and heights for the ionospheric E and F2 regions, and Total Electron Content (TEC) URL: http://users.primushost.com/~cpibos/ IONSCINT - Ionospheric Scintillation Simulation Algorithm Output Parameters: A simulated prediction of scintillation intensity throughout a specified theater for communication with a specified satellite. Запрос модели IONSCINT Результат моделирования