9 research outputs found

    Multi-sensor Evolution Analysis: an advanced GIS for interactive time series analysis and modelling based on satellite data

    Get PDF
    Archives of Earth remote sensing data, acquired from orbiting satellites, contain large amounts of information that can be used both for research activities and decision support. Thematic categorization is one method to extract from satellite data meaningful information that humans can directly comprehend. An interactive system that permits to analyse geo-referenced thematic data and its evolution over time is proposed as a tool to efficiently exploit such vast and growing amount of data. This thesis describes the approach used in building the system, the data processing methodology, details architectural elements and graphical interfaces. Finally, this thesis provides an evaluation of potential uses of the features provided, performance levels and usability of an implementation hosting an archive of 15 years moderate resolution (1 Km, from the ATSR instrument) thematic data

    Continious Synchronization of Conflict-Free Replicated Relations

    Get PDF
    Local-first software is an attempt to use the benefits of cloud service while reducing its drawbacks. Local-first software gives the clients ownership and control of their data and makes the service always available. It is achieved by having the primary copy of the service at the client. The most common way to implement local-first software is by utilizing Conflict-free Replicated Datatypes or CRDTs, which are conflict-free by design. Conflict-free Replicated Relations or CRR are CRDT applied to SQL databases. CRR systems require some form of communication middleware to propagate its state so that each site can converge to a common state. Earlier CRR systems have used SSH File Transfer Protocol to propagate states or SFTP, which means writing to disk many times. This thesis focuses mainly on the communication portion of a CRR system applied to an SQLite database called SynQLite. SynQLite is a service that can augment an SQLite database with CRR-support. It also includes the possibility to clone and synchronize with remote sites. The previous version of SynQLite allowed only to pull states from a remote site. We propose a solution where users can synchronize continuously with more than two sites simultaneously. The solution involves creating a centralized leader that other sites can connect to with TCP connections, and the other sites synchronize with the leader. The thesis includes an evaluation process including many experiments. These experiments are used to evaluate how well SynQLite supports local-first properties. This includes testing how SynQLite affects the offline database and how well SynQLite supports synchronizing sites

    Automated Storage Layout for Database Systems

    Get PDF
    Modern storage systems are complex. Simple direct-attached storage devices are giving way to storage systems that are flexible, network-attached, consolidated and virtualized. Today, storage systems have their own administrators, who use specialized tools and expertise to configure and manage storage resources. As a result, database administrators are no longer in direct control of the design and configuration of their database systems' underlying storage resources. This introduces problems because database physical design and storage configuration are closely related tasks, and the separation makes it more difficult to achieve a good end-to-end design. For instance, the performance of a database system depends strongly on the storage layout of database objects, such as tables and indexes, and the separation makes it hard to design a storage layout that is tuned to the I/O workload generated by the database system. In this thesis we address this problem and attempt to close the information gap between database and storage tiers by addressing the problem of predicting the storage (I/O) workload that will be generated by a database management system. Specifically, we show how to translate a database workload description, together with a database physical design, into a characterization of the I/O workload that will result. Such a characterization can directly be used by a storage configuration tool and thus enables effective end-to-end design and configuration spanning both the database and storage tiers. We then introduce our storage layout optimization tool, which leverages such workload characterizations to generate an optimized layout for a given set of database objects. We formulate the layout problem as a non-linear programming (NLP) problem and use the I/O characterization as input to an NLP solver. We have incorporated our I/O estimation technique into the PostgreSQL database management system and our layout optimization technique into a database layout advisor. We present an empirical assessment of the cost of both tools as well as the efficacy and accuracy of their results

    VMWare e tecniche di virtualizzazione: un caso di studio

    Get PDF
    Il lavoro svolto da Fabrizio Amici ha suscitato immediatamente il mio interesse in primo luogo perché quando si parla di virtualizzazione con vari fornitori e commerciali, questi la indicano come una soluzione che possa coprire a 360 gradi le esigenze di un Datacenter. Questo è vero nella misura in cui il progetto di virtualizzazione e consolidamento dei Server sia svolto sotto certi criteri progettuali. Per esperienza personale non ho trovato in letteratura lavori che potessero fornire indicazioni approfondite sui parametri da considerare per una corretta progettazione di sistemi di virtualizzazione, spesso ci si avvale di vari fornitori che accennano ad eventuali criticità. Un lavoro come quello proposto da Fabrizio va esattamente nella direzione di rispondere a quelle domande che nascono quando si affronta la tematica della virtualizzazione e soprattutto cerca di capire quali siano i limiti intrinseci della virtualizzazione. In particolare nei vari confronti che, con piacere, ho avuto con Fabrizio, il mio suggerimento è stato quello di esasperare il sistema che aveva assemblato, caricando i test sino ad osservarne i limiti. Dai vari test sono emerse sia conferme, sia inaspettati comportamenti del sistema che rendono ancora più chiaro che solo una prova sperimentale può essere il banco di prova di un sistema complesso. L'elemento che colpisce maggiormente analizzando i risultati è il diverso comportamento in funzione delle CPU utilizzate. I risultati indicano chiaramente che le prestazioni sono fortemente influenzate da come si distribuiscono i core nelle macchine virtuali. Dalla lettura dei risultati viene confermato che i sistemi virtualizzati devono essere progettati per non raggiungere il 70-80% della componente più critica (RAM, CPU) ma anche che sono fortemente sensibili alle disponibilità prestazionali dei sistemi al contorno (Rete, SAN/Dischi). L'approccio metodico sperimentale ed i risultati forniscono una serie di elementi che permettono di affrontare la tematica della virtualizzazione in un quadro generale più solido, offrendo fra l'altro spunti di ricerca ulteriori anche in previsione di nuove soluzioni che vari costruttori, sviluppatori e system integrator proporranno nei prossimi anni. Ing. Massimiliano Casali Esperto di Gestione ICT, Pubblica Amministrazione,Repubblica di San Marin

    An erasure-resilient and compute-efficient coding scheme for storage applications

    Get PDF
    Driven by rapid technological advancements, the amount of data that is created, captured, communicated, and stored worldwide has grown exponentially over the past decades. Along with this development it has become critical for many disciplines of science and business to being able to gather and analyze large amounts of data. The sheer volume of the data often exceeds the capabilities of classical storage systems, with the result that current large-scale storage systems are highly distributed and are comprised of a high number of individual storage components. As with any other electronic device, the reliability of storage hardware is governed by certain probability distributions, which in turn are influenced by the physical processes utilized to store the information. The traditional way to deal with the inherent unreliability of combined storage systems is to replicate the data several times. Another popular approach to achieve failure tolerance is to calculate the block-wise parity in one or more dimensions. With better understanding of the different failure modes of storage components, it has become evident that sophisticated high-level error detection and correction techniques are indispensable for the ever-growing distributed systems. The utilization of powerful cyclic error-correcting codes, however, comes with a high computational penalty, since the required operations over finite fields do not map very well onto current commodity processors. This thesis introduces a versatile coding scheme with fully adjustable fault-tolerance that is tailored specifically to modern processor architectures. To reduce stress on the memory subsystem the conventional table-based algorithm for multiplication over finite fields has been replaced with a polynomial version. This arithmetically intense algorithm is better suited to the wide SIMD units of the currently available general purpose processors, but also displays significant benefits when used with modern many-core accelerator devices (for instance the popular general purpose graphics processing units). A CPU implementation using SSE and a GPU version using CUDA are presented. The performance of the multiplication depends on the distribution of the polynomial coefficients in the finite field elements. This property has been used to create suitable matrices that generate a linear systematic erasure-correcting code which shows a significantly increased multiplication performance for the relevant matrix elements. Several approaches to obtain the optimized generator matrices are elaborated and their implications are discussed. A Monte-Carlo-based construction method allows it to influence the specific shape of the generator matrices and thus to adapt them to special storage and archiving workloads. Extensive benchmarks on CPU and GPU demonstrate the superior performance and the future application scenarios of this novel erasure-resilient coding scheme

    Actas de las XIV Jornadas de Ingeniería Telemática (JITEL 2019) Zaragoza (España) 22-24 de octubre de 2019

    Get PDF
    En esta ocasión, es la ciudad de Zaragoza la encargada de servir de anfitriona a las XIV Jornadas de Ingeniería Telemática (JITEL 2019), que se celebrarán del 22 al 24 de octubre de 2019. Las Jornadas de Ingeniería Telemática (JITEL), organizadas por la Asociación de Telemática (ATEL), constituyen un foro propicio de reunión, debate y divulgación para los grupos que imparten docencia e investigan en temas relacionados con las redes y los servicios telemáticos. Con la organización de este evento se pretende fomentar, por un lado el intercambio de experiencias y resultados, además de la comunicación y cooperación entre los grupos de investigación que trabajan en temas relacionados con la telemática. En paralelo a las tradicionales sesiones que caracterizan los congresos científicos, se desea potenciar actividades más abiertas, que estimulen el intercambio de ideas entre los investigadores experimentados y los noveles, así como la creación de vínculos y puntos de encuentro entre los diferentes grupos o equipos de investigación. Para ello, además de invitar a personas relevantes en los campos correspondientes, se van a incluir sesiones de presentación y debate de las líneas y proyectos activos de los mencionados equipos

    Конспект лекцій з дисципліни «Грід-системи та технології хмарних обчислень» для студентів освітніх рівнів «спеціаліст», «магістр» 122 «Комп’ютерні науки та інформаційні технології»

    Get PDF
    Конспект лекцій призначений для полегшення засвоєння дисципліни “Грід-системи та технології хмарних обчислень”. Складається з урахуванням модульної системи навчання. Вказівки складені з урахуванням матеріалів літературних джерел, названих у списку.Лекція 1. Особливості розподілу задач і передачі даних. Історія виникнення та еволюція grid-систем. Класифікація grid-систем…8-- 1.1. Особливості розподілу задач і передачі даних…8-- 1.2. Історія виникнення та еволюція grid-систем…11-- 1.3. Еволюція grid: перше покоління (1990-1996 роки)…13-- 1.3.1. Fafner… 15-- 1.3.2. I-way…16-- 1.4. Еволюція grid: друге покоління (1997 – 2003 роки)… 18-- 1.4.1. Основні технології другого покоління… 19-- 1.4.1.1. Globus…19-- 1.4.1.2. Legion… 21-- 1.4.1.3. Розподілені об'єктні системи…22-- 1.4.1.4. Java…22-- 1.4.1.5. Jini і протокол rmi… 23-- 1.4.1.6. The common component architecture forum… 23-- 1.4.1.7. Посередники та планувальники ресурсів grid… 24-- 1.4.2. Однорангові обчислення… 26-- 1.5. Еволюція grid: третє покоління для е-науки (з 2004 року)… 27-- 1.5.1. Сервісно-орієнтована архітектура…32-- 1.5.2. Архітектура ogsa…33-- 1.5.3. Агенти…35-- 1.5.4. Web як інформаційна інфраструктура grid…36-- 1.6. Еволюція grid: обрії наступних поколінь…38-- Лекція 2. Архітектура grid: рівні та головні компоненти, протоколи та інтерфейси. Приклади архітектури grid-систем. Відкрита архітектура grid-сервісів (ogsa) – сервісно-орієнтований підхід. Прикладні додатки grid: наука, промисловість, бізнес, освіта…43-- 2.1. Архітектура grid…43-- 2.1.1. Базовий рівень…46-- 2.1.2. Рівень зв'язку… 47-- 2.1.3. Ресурсний рівень…48-- 2.1.4. Колективний рівень… 48-- 2.1.5. Прикладний рівень… 49-- 2.1.6. Стандарти, що використовуються для побудови архітектури grid... 50-- 2.1.6.1. Сервіс-орієнтована архітектура…51-- 2.1.6.2. Мова описів web – сервісів… 52-- 2.1.6.3. Web services inspection language…52-- 2.1.6.4. Universal description, discovery, and integration… 53-- 2.1.6.5. Протокол soap (simple object access protocol)… 53-- 2.2. Сервіс-орієнтована архітектура…54-- 2.2.1. Відкрита архітектура грід-сервісів…55-- 2.3. Е-наука і grid проекти…57-- Лекція 3. Класифікація сучасних обчислювальних систем. Систематика фліна та її деталізація. Системи з загальною пам’яттю. Загальна характеристика, приклади, проблеми. Системи з розподіленою пам’яттю. Мультикомп’ютери. Суперкомп’ютери. Комп’ютерні кластери, загальна характеристика, приклади, проблеми…63-- 3.1. Класифікація паралельних комп'ютерів і систем… 64-- 3.3. Паралельні комп'ютери із загальною пам'яттю… 81-- 3.4. Обчислювальні системи з розподіленою пам’яттю… 88-- 3.5. Кластерні проекти…94-- 3.6. Комунікаційні технології побудови кластерів…96-- 3.7. Методи оцінювання продуктивності суперкомп'ютерів…99-- 3.8. Побудова та характеристики сучасних суперкомп'ютерів…100-- 3.8.1. Суперкомп'ютер cray т932…100-- 3.8.2. Суперкомп'ютер ibm sp2…101-- 3.8.3. Суперкомп'ютер hp exemplar…102-- 3.8.4. Суперкомп'ютер Intel ASCI RED… 102-- 3.8.5. Суперкомп'ютер ibm blue gene/l…102-- 3.8.6. Суперкомп'ютер riken mdgrape-3…103-- 3.8.7. Суперкомп'ютер ibm roadrunner… 103-- 3.8.8. Суперкомп'ютери tianhe-1 ma tianhe-1a національного університету оборонних технологій Китаю…105-- 3.8.9. Суперкомп'ютер cray jaguar хт5…107-- 3.8.10. Суперкомп'ютер к computer компанії fujitsu та інституту фізикохімічних досліджень riken…108-- 3.9. Галузі застосування суперкомп'ютерів…112-- 3.10. Проблеми застосування суперкомп'ютерів…114-- 3.11. Персональні суперкомп'ютери…115-- 3.11.1. Персональний суперкомп'ютер tesla personal supercomputer фірми nvidia… 116-- 3.11.2. Персональний суперкомп'ютер сх1 фірми cray…117-- 3.11.3. Персональний суперкомп'ютер octane iii фірми sgi…119-- 3.12. Підходи до побудови суперкомп'ютерів…120-- Лекція 4. Коротка характеристика рейтингу top500. Сучасні тенденції розвитку процесорів. Гібридні високопродуктивні обчислювальні системи. Організація міжпроцесорних зв’язків – комунікаційні технології. Характеристики інтерконекту. Побудова кластерів, багатопроцесорних середовищ телекомутаційних мереж для розподілених інформаційних систем…122-- 4.1. Коротка характеристика рейтингу top500…122-- 4.2. Багатоядерні процесори…125-- 4.2.1. Багатоядерні мікропроцесори. Закон мура для ядер…125-- 4.2.2. Дві архітектури багатоядерних процесорів…129-- 4.2.3. Процесор nehalem…129-- 4.2.4. Процесори з індивідуальною пам'яттю…132-- 4.2.5. Процесор polaris на 80 ядер… 133-- 4.2.6. Процесор scc на 48 ядер…137-- 4.3. Підвищення продуктивності комп'ютерних систем за допомогою спеціалізованих процесорів…137-- 4.3.1. Підходи до побудови спеціалізованих процесорів…138-- 4.3.2. Архітектура апаратно-орієнтованих спеціалізованих процесорів...140-- 4.3.3. Вимоги до спеціалізованих процесорів на основі кристалів програмовної логіки реконфігуровного прискорювача…144-- 4.3.3.1. Вимоги до спеціалізованого процесора в частині його технічних характеристик…144-- 4.3.3.2. Вимоги до спеціалізованого процесора в частині організації приймання даних, їх опрацювання та видавання… 145-- 4.3.3.3. Вимоги до спеціалізованого процесора в частині його архітектури…146-- 4.3.3.4. Вимоги до кодів програмної моделі спеціалізованого процесора… 146-- 4.4. Гібридні архітектури обчислювальних систем…147-- 4.4.1. Огляд обчислень на графічних прискорювачах…148-- 4.4.2. Різниця між cpu і gpu в паралельних обчисленнях… 149-- 4.5. Області застосування паралельних розрахунків на графічних процесорах…152-- 4.5.1. Технологія nvidia cuda…152-- 4.5.1.1. Переваги і обмеження cuda…154-- 4.5.1.2. Апаратні засоби з підтримкою nvidia cuda…155-- 4.6. Характеристики інтерконекту…157-- 4.7. Обчислювальний кластер…159-- 4.7.1. Будова кластера…163-- 4.7.2. Організація мережі обчислювального кластеру…166-- 4.7.2.1. Мережеві карти…167-- 4.7.2.2. Комутатори…167-- 4.7.2.3. Мережеве забезпечення кластеру…168-- 4.7.2.4. Мережева файлова система…169-- 4.7.2.5. Конфігурація сервера…169-- 4.7.2.6. Конфігурація клієнтів…170-- 4.7.2.7. Ssh, беспарольний доступ…170-- 4.7.3. Комунікаційні системи обчислювальних кластерів…171-- Лекція 5. Паралельні алгоритми, як засіб розв’язання великих задач на високопродуктивних системах. Граф «операції-операнди». Використання багато поточності при програмуванні для багатоядерних платформ…175-- 5.1. Паралельні алгоритми…175-- 5.2. Граф операції-операнди…178-- 5.3. Стандарт mpi…180-- 5.4. MPI програма для обчислення числа π на мові С…181-- 5.5. Програма множення матриці на вектор…182-- 5.6. Openmp…185-- Лекція 6. Поняття проміжного середовища (middleware) для grid. Процес виконання завдання grid. Підходи до організації складних сервісів та потоків робіт. Паралельне програмування та grid. Задачі в grid та основні операції над ними. Компонування складних задач, потоки задач…191-- 6.1. Поняття проміжного середовища (middleware) для grid…191-- 6.2. Процес виконання завдання grid…192-- 6.2.1. Паралельне обчислення в грід. Пакет g2…194-- 6.2.2. Пакет glite…195-- Лекція 7. Архітектурні рівні обчислювальної хмари. Інфраструктура як сервіс. Платформа як сервіс. Програмне забезпечення як сервіс…196-- 7.1. Види хмарних обчислень… 197-- 7.1.1. Інфраструктура як сервіс (iaas)…197-- 7.1.2. Платформа як сервіс (paas)…199-- 7.1.3. Програмне забезпечення як сервіс (saas)…200-- 7.2. Переваги хмарних обчислень…204-- 7.3. Недоліки та проблеми хмарних обчислень… 206-- 7.4. Безпека…207-- 7.5. Залежність від «хмарного» провайдера… 207-- 7.6. Перешкоди розвитку хмарних технологій… 208-- 7.7. Розподілені обчислення (grid computing)… 209-- Лекція 8. Моделі інфраструктури «хмарних» обчислень. Консолідація даних… 211-- 8.1. Порівняльний аналіз моделей хмарних технологій…211-- 8.2. Відмовостійкість та масштабованість системи… 212-- 8.3. Моделі та технології організації… 213-- 8.4. Організація безпеки хмарних технологій… 216-- Лекція 9. Хмари гетерогенних ресурсів. «хмарні» обчислення та grid-комп’ютінг. Web-служби в хмарі...217-- 9.1. Amazon… 219-- 9.2. Платформа як сервіс (paas)… 222-- 9.3. Microsoft azure…223-- 9.4. Програмне забезпечення як сервіс (saas)…230-- 9.5. Комунікація як сервіс (caas)…233-- 9.6. Моніторинг як сервіс (maas)… 235-- Лекція 10. Хмарні сервіси vmware та google…238-- 10.1. Функції, доступні користувачеві…238-- 10.2. Пошта та обмін повідомленнями…239-- 10.3. Календар…239-- 10.4. Робота з документами…240-- 10.5. Стартова сторінка і редактор сторінок…242-- 10.6. App engineapp engine…243-- 10.7. Середовище додатків… 243-- Лекція 11. Консолідація, віртуалізація іт-інфраструктури. Віртуалізація застосувань (додатків)… 249-- 11.1. Технології віртуалізації… 249-- 11.2. Віртуалізація застосувань (додатків)… 254-- Лекція 12. Віртуалізація робочих місць…256-- Лекція 13. Віртуалізація серверів… 259-- Лекція 14. Віртуалізація центрів обробки даних… 263-- 14.1. Короткий огляд платформ віртуалізації… 263-- 14.1.1. Vmware… 263-- 14.1.2. Citrix (xen)… 267-- 14.1.3. Microsoft… 268-- Лекція 15. Grid і бази даних. Управління grid-оточенням… 275-- 15.1. Розподілені бд…275-- 15.2. Гомогенні і гетерогенні розподілені скбд… 280-- Лекція 16. Керування розподіленою паралельністю…292-- 16.1. Управління розподіленими транзакціями… 292-- 16.2. Управління паралельним виконанням в розподіленому середовищі…293-- Лекція 17. Інтернет, хмари, E-LEANING…314-- 17.1. Інтернет в освіті… 314-- 17.2. Сервіси Інтернет в освіті… 316-- 17.3. Світова статистика використання Інтернету… 317-- 17.4. Ключові тренди ІТ-сфери, які надають вплив на освіту…319-- Лекція 18. ІТ-інфраструктури в освіті…323-- 18.1. Дизайн ІТ-інфраструктури… 323-- 18.2. Традиційна і хмарна ІТ-інфраструктури…324-- 18.3. Сучасна ІТ-інфраструктура в навчальних закладах…326-- Список літературних джерел...336-
    corecore