SQLFire — Скорости и Масштаб


Распределенная база данных SQL VMware vFabric SQLFire может загружать 8 миллионов строк за 88 секунд.

SQLFire предназначен для работы в качестве распределенного кэша на основе SQL в памяти, который можно использовать вместе с традиционной базой данных, обрабатывающей дисковую сторону процесса. vFabric SQLFire имеет интерфейсы JDBC и ADO.NET, которые вы используете для запроса хранилища данных с помощью SQL.

Ключи и индексы хранятся в памяти для обеспечения высокой масштабируемости, доступности и производительности. Он также может использовать СУБД, где требуется постоянство данных, и есть планы по обеспечению поддержки основных баз данных, включая Oracle, MySQL, Sybase, DB2, SQL Server и postGres.

Одной из проблем, связанных с использованием данных в системе данных на основе памяти с большими наборами данных, является возможное время, необходимое для их фактической загрузки. Пас Апичелла из команды vFabric Cloud Application Platform опубликовал интересную запись в блоге о том, насколько хорошо SQLFire справляется с этой задачей, загружая 8 миллионов строк за 88 секунд. По оценкам команды, это означает, что SQLFire сможет загрузить около 40 ГБ данных за час. Данные были в формате CSV, и команда использовала подход многопоточной загрузки.

Команда использовала SQLFire 1.0.3 с двумя виртуальными машинами с 18 ГБ памяти каждая. Виртуальные машины совместно использовали один и тот же домашний каталог, а также имели отдельные диски для собственных дисковых хранилищ и файлов журналов. Отдельное хранилище на диске использовалось для сохранения, и любые данные переполнения удалялись из памяти и не записывались на диск. Таблица в памяти асинхронно записывает свои изменения в хранилище на диске. Это означает, что перед переходом к следующему изменению необходимо только выполнить вставку в память. Было использовано всего шесть нитей, и Апичелла говорит, что слишком большое количество нитей может иметь неблагоприятный эффект.

Помимо обеспечения загрузки процесса только для клиента и предотвращения попыток второго узла прочитать файл, остальная часть настройки выглядит удивительно простой. Вы можете увидеть сценарии и вывод здесь.


Добавить комментарий