The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Представлена новая открытая СУБД InfiniSQL

29.11.2013 16:16

Анонсирован первый альфа-выпуск новой открытой реляционной СУБД InfiniSQL, нацеленной на достижение показателей производительности и масштабируемости NoSQL-систем при предоставлении классического SQL-интерфейса для доступа к данным. InfiniSQL развивается одним из бывших инженеров компании Visa как полностью свободный проект, без разделения на community и enterprise версии. Код InfiniSQL распространяется под лицензией AGPLv3, а библиотеки для создания хранимых процедур под лицензией LGPLv3.

СУБД состоит из двух частей - демона на языке C++, использующего модель акторов для распараллеливания операций без блокировок, и менеджера ресурсов, написанного на языке Python. Клиентский интерфейс совместим с PostgreSQL, т.е. вместе с InfiniSQL могут использоваться приложения, собранные с использованием клиентских библиотек PostgreSQL и таких модулей, как DBD::Pg. На текущем этапе развития СУБД ещё не готова для промышленного использования, но уже может быть задействована для экспериментов и начального внедрения.

Построенный с использованием InfiniSQL тестовый кластер, состоящий из 12 узлов на базе типовых серверов (четырёхядерные CPU Intel Xeon E31230 3.30GHz, 8GB ОЗУ, 1TB SATA НЖМД, 2 x Intel 82579LM Gigabit Ethernet), смог обеспечить производительность на уровне 528 тысяч (в пике 542 тыс.) сложных транзакций в секунду при обработке более 100 тысяч одновременных соединений. Тестирование было проведено с использованием утилиты pgbench. Все проведённые тесты документированы и легко воспроизводимы.

InfiniSQL поддерживает подмножество стандарта SQL-92, в том числе Ad hoc-запросы и хранимые процедуры. СУБД обеспечивает три первых требования ACID к выполнению транзакций: атомарность, согласованность, изолированность. Отсутствие поддержки четвёртого требования, надежности, является ценой высокой производительности СУБД. Дело в том, что InfiniSQL хранит данные только в оперативной памяти, пока не предоставляя средств для обеспечения надёжного сохранения информации в случае сбоя всего кластера. В случае проблем, охватывающих все узлы остаётся полагаться на средства резервного копирования, в случае сбоя отдельного узла применяется избыточное дублирование данных на разных узлах. В будущем данная проблема будет устранена, и СУБД InfiniSQL будет доведена до полного соответствия требованиям ACID.

Хранимые в таблицах данные и индексы распределены по всем узлам кластера, при необходимости увеличения размера хранилища достаточно добавить новые узлы (горизонтальная масштабируемость). Клиент может подключиться к любому узлу и получить доступ к данным кластера в целом, который выглядит как одна неразрывная БД. Архитектура InfiniSQL предусматривает наличие двух процессов: менеджера и демона хранения. Демон хранения занимается приёмом соединений от клиентов, выполнением запросов и хранением данных. Кроме доступа к локально хранимым данным, в процессе выполнения запроса демон также обращается и к данным других демонов.

Менеджер отвечает за запуск демонов хранения, их настройку, мониторинг работоспособности и управление топологией кластера. При необходимости менеджер запускает новые экземпляры демонов хранения и обеспечивает распределение данных в кластере, в том числе выполняет перестроение кластера в случае изменения топологии (например, выводе или добавлении узла) и следит за выполнением требований отказоустойчивости за счёт дублирования данных на разных узлах. В настоящее время возможности менеджера сильно ограничены и сводятся к запуску демонов, остальные возможности планируется реализовать в будущем.

  1. Главная ссылка к новости (http://highscalability.com/blo...)
  2. OpenNews: Релиз открытой СУБД VoltDB 3.0, развиваемой одним из основателей Ingres и PostgreSQL
  3. OpenNews: Представлен первый стабильный релиз СУБД SciDB
  4. OpenNews: Проект NewSQL призван решить проблемы, с которыми столкнулся Facebook, используя MySQL
  5. OpenNews: Высокопроизводительный MySQL-движок TokuDB переведён в разряд открытых проектов
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/38553-database
Ключевые слова: database, infinisql, sql
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (41) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, linux must __RIP__ (?), 16:43, 29/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –12 +/
    > Код InfiniSQL распространяется под лицензией AGPLv3,

    не взлетит.

     
     
  • 2.3, inferrna (ok), 16:55, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Обрисуйте ход ваших мыслей, сударь.
     
     
  • 3.11, Аноним (-), 17:27, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > Обрисуйте ход ваших мыслей, сударь.

    Код ему зажать не дают, видите ли. Хотя оно если и взлетит то как-то сильно местами, ибо такие штуки - просто нишевая фиговина, нужная десяткам-сотням инсталляций на всю планету.

     
     
  • 4.14, Аноним (-), 17:41, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Да ладно - "сотня-на-планету" это в нынешнем состоянии, после допиливания acid и кластерного менеджера будет идеальная замена постгресу, да ещё и с правильной лицензией!
     
     
  • 5.15, Аноним (-), 18:21, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    После запиливания D из acid - оно будет не быстрее постргесса. dixi
     
  • 5.17, annulen (ok), 18:32, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • –6 +/
    Вы все перепутали, это у постгрес правильная лицензия, в отличие от этого поделия.
     
     
  • 6.20, Аноним (-), 19:55, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +5 +/
    >  Вы все перепутали, это у постгрес правильная лицензия, в отличие от этого поделия.

    У Oracle RDBMS - еще правильнее!

     
  • 5.22, Аноним (-), 19:56, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > да ещё и с правильной лицензией!

    Проприетарщики смотрят на вас с осуждением.

     
  • 3.25, Аноним (-), 19:58, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Обрисуйте ход ваших мыслей, сударь.

    Как говорил линуксмастрип, еще ни один проект под открытой лицензией не взлетел.
    All hail RDBMS!

     
     
  • 4.30, ананим (?), 20:37, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вот пусть и находится в этом радужном неведении.
    Всё хорошо, всё розовое.
     
  • 4.38, dxd (?), 22:17, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Affero - это не открытая, это ректальный зонд для корпораций. А корпорации, в отличие от юзеров, очень плохо относятся к ректальным зондам.
     
     
  • 5.43, Аноним (-), 23:04, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Affero - это не открытая, это ректальный зонд для корпораций. А корпорации,
    > в отличие от юзеров, очень плохо относятся к ректальным зондам.

    То-то, я смотрю, корпорации совсем на линукс забили.

     
  • 5.45, ананим (?), 23:46, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >Affero - это не открытая, это ректальный зонд для корпораций.

    Типа гугл, фейсбук, жж,..., яндекс,..?
    Или для тех, кого вышеперечисленные обува... обслуживают?

     
  • 3.28, ананим (?), 20:33, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Обрисуйте ход ваших мыслей, сударь.

    Миссия импосибл.
    Они вон до сих пор окуевают почему этот недо-сиквел, мускуль, не только получил распространение, но ещё и дохнуть не собирается. А ведь его душили-душили, душили-душили, …

     
  • 3.46, Michael Shigorin (ok), 00:06, 30/11/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Обрисуйте ход ваших мыслей, сударь.

    Для этого потребуется сперва Back2SQL... [бэктускуль]

     
  • 2.7, NikolayV81 (ok), 17:05, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да найти желающих поддержать из тех кому она может пригодиться в пром. применении будет сложновато.
    Да и так что то не особо понятно нужно ли оно.
    Т.к. горизонтальная расширяемость, насколько я понял, тут немного условная, ( на каждую следующую еденицу хранимой информации нужны всё большие аппаратные ресурсы ).
     
  • 2.55, AnonuS (?), 00:05, 01/12/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > ... без разделения на community и enterprise версии ...

    Может и не взлететь, кормится-то они с чего собираются, да и на развитие "денешка" нужна.

     

  • 1.13, zinid (ok), 17:31, 29/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    > Дело в том, что InfiniSQL хранит данные только в оперативной памяти.

    Не удивительно тогда, что оно так шустро работает.

     
     
  • 2.18, inferrna (ok), 18:54, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Готовятся к приходу mram - всё правильно, ящитаю.
     
  • 2.21, Аноним (-), 19:55, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >> Дело в том, что InfiniSQL хранит данные только в оперативной памяти.
    > Не удивительно тогда, что оно так шустро работает.

    Поправьте меня, но 1 Тб в оперативку целиком не запихнешь. Это раз. И два - у Оракла уже есть такое решение.

     
     
  • 3.26, Аноним (-), 20:00, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Поправьте меня, но 1 Тб в оперативку целиком не запихнешь. Это раз.

    А кто обязывает использовать это решение для таких тяжелых баз?

    > И два - у Оракла уже есть такое решение.

    То-то, я смотрю, младший менеджер оракла распереживался, кудахчет горестно :D

     
  • 3.33, all_glory_to_the_hypnotoad (ok), 21:36, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    впихнёшь в память сколько хочешь. Бери много машин и делай из них кластер. Сейчас на машине уже может быть порядка 128 Гб, кластер из 8-10 машин легко будет хранить 1 Тб
     
     
  • 4.47, Аноним (-), 01:09, 30/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Чо значит может быть?! Это стандартно на всех новых блейдах от голубых и принтерщиков.
     
  • 4.49, Аноним (-), 01:23, 30/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    На вполне обычном чипсете C602 от Intel - до 768GB
     
  • 2.56, AnonuS (?), 00:10, 01/12/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Не удивительно тогда, что оно так шустро работает.

    но

    > ... на данном этапе разработки пока не предоставляя средств для обеспечения надёжного сохранения информации в случае сбоя всего кластера.

    Интересно кому нужно такое щасте ?

     

  • 1.16, Аноним (-), 18:24, 29/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Durability в ACID обычно переводят как "надежность", а не "долговечность". Поправьте, плиз, глаза режет.
     
  • 1.19, jOKer (ok), 19:45, 29/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    >нацеленной на достижение показателей производительности и масштабируемости NoSQL-систем
    >масштабируемости NoSQL-систем

    Вот с этого момента, поподробнее плиз (в оригинале об этом ни слова).

    ИМХО, главная трабла (при использовании в веб'е)  PostgreSQL не в быстродействии, а чрезмерно сложном механизмах горизонтального масштабирования. Если сравнить с той же MongoDB - так небо и земля, по ходу.

    А из этого вопрос: я правильно понимаю, что в этой новой БД "ис каропки" горизонтальное масштабирование? И что я могу добавить нод в, - пользуясь терминологией MongoDB, - сегмент, не заморачиваясь вопросами типа: "А какой у меня алгоритм распределения данных по сегментам?" и "Как мне перераспределить данные после добавления нового нода?"

    Если это так, и если есть совместимость с PostgreSQL, то это... очень интересно.

     
     
  • 2.23, Аноним (-), 19:57, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Такого решения нет ни у кого RAC мы не считаем Неправильно Когерентность кэше... большой текст свёрнут, показать
     
     
  • 3.29, Все тот же аноним (?), 20:35, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > PSQL отнюдь не лидер на рынке RDBMS

    Не лидер по какому набору критериев?

     
  • 3.35, all_glory_to_the_hypnotoad (ok), 21:41, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > PSQL отнюдь не лидер на рынке RDBMS/

    смотря среги каокго сегмента. Если брать открытые рСУБД, то PG вообще единственная такая.

     
  • 3.34, all_glory_to_the_hypnotoad (ok), 21:39, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Такого решения нет ни у кого. RAC мы не считаем.

    RAC тоже горизонтально не масштабируется.

     
  • 2.31, sybasesql (ok), 21:09, 29/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    если нужно горизонтальное масштабирование в pgsql используйте plproxy от skype.
     
     
  • 3.57, jOKer (ok), 11:52, 01/12/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Это, отнюдь, не одно и тоже. В смысле, возможности mongo и plproxy. Первая полностью прозрачна для приложения (приложение даже и не знает о его существовании), для работы со вторым - требуется использовать свой язык запросов, что на практике выливается в допиливание ОРМа. По мне так проще ОРМ сменить на сделанный под монго, чем допиливать и далее самостоятельно поддерживать ОРМ под постгри.
     

  • 1.32, all_glory_to_the_hypnotoad (ok), 21:34, 29/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Отсутствие поддержки четвёртого требования, надежности, является ценой высокой производительности СУБД. Дело в том, что InfiniSQL хранит данные только в оперативной памяти, пока не предоставляя средств для обеспечения надёжного сохранения информации в случае сбоя всего кластера

    нахер не нужно, четвёртое требованаие обычно нужнее всех остальных, тем более для реляционной СУБД

     
  • 1.36, Аноним (-), 21:52, 29/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Возможно, из этого получится неплохая замена memcached'у, у которого выход из строя ноды вообще приводит к потере данных.
     
     
  • 2.48, Аноним (-), 01:11, 30/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Возможно, из этого получится неплохая замена memcached'у, у которого выход из строя
    > ноды вообще приводит к потере данных.

    Да, я если честно тоже другого применения не вижу. Ну возможно - пока не вижу.

     
     
  • 3.54, all_glory_to_the_hypnotoad (ok), 11:55, 30/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    с SQL интерфейсом ему и такое применение не светит
     

  • 1.50, Mark Travis (?), 02:58, 30/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Thank you for writing this article. I do not understand the Russian language, but according to Google's Translator, you explained InfiniSQL very well.

    I have always enjoyed working with Russian engineers--you have very good analytical skills and are interested deeply in technology. I hope that you will contribute to the InfiniSQL project as developers, alpha customers, and in any way that you can for the community.

    Please visit http://www.infinisql.org to find the code and to find how to stay in touch with the project.

    Sincerely,
    Mark Travis
    Founder, InfiniSQL

     
  • 1.51, robux (ok), 03:31, 30/11/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Клиентский интерфейс совместим с PostgreSQL

    Пусть взлетает! Как минимум "восьмёрочники" (1Cv8) будут довольны.
    Ну и вобще, чем больше движков БД, тем лучше, няхай конкурируют.

     
     
  • 2.53, all_glory_to_the_hypnotoad (ok), 11:55, 30/11/2013 [^] [^^] [^^^] [ответить]  
  • +/
    они довольны не будут, им из ACID все буковки нужны, особенно D
     
     
  • 3.58, vitalif (ok), 01:44, 02/12/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Да и не только они, опыт NoSQL показывает, что эта буковка вообще всем нужна в первую очередь - люди кладут на транзакционность в угоду скорости и надёжности.

    Так что тхе... если бы они на дисках такую производительность обеспечили - был бы прорыв, а сейчас - так, очередная in-memory БД.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру