MemSQL

MemSQL NewSQL реляційна система управління базами даних в оперативній пам'яті, яка припускає розподіл баз даних по декільком вузлам. Підтримує принципи ACID, мова SQL, примітна тим, що для виконання SQL-запитів здійснює кодогенерацію в C ++.

Базова технологія

MemSQL поєднує незаблоковану структуру даних і JIT (Точно вчасно) компілятор, щоб обробляти дуже енергозалежні навантаження. Зокрема, MemSQL реалізує незаблоковані хеш таблиці і незаблоковані списки з пропусками в пам'яті для швидкого і довільного доступу до даних. Запити, надіслані на сервер MemSQL перетворюються в C ++ і компілюються через GCC. Запити позбавлені їх параметрів і шаблон запиту зберігаються в якості спільно використовуваного об'єкта, який потім порівнюється зі вступними запитами до системи. Генерація коду і виконання попередньо скомпільованих запитів допомагає уникнути інтерпретацію довгих шляхів коду, забезпечуючи високоефективні шляхи, які мінімізують необхідну кількість інструкцій процесора.

MemSQL сумісна з MySQL. Додатки можуть підключатися до MemSQL через стандарти ODBC / JDBC, а також через драйвера і користувачів MySQL

Надійність

Незважаючи на зберігання даних в пам'яті, MemSQL забезпечує надійність завдяки впровадженому журналу операцій, оновлюваних до запису даних, і створення знімків файлової системи (за аналогією з контрольною точкою). За замовчуванням, після підтвердження транзакції в пам'яті, транзакція буде записана на диск зі швидкістю, що надається жорстким диском.

Реплікація

MemSQL підтримує власний протокол реплікації, який поставляє його транзакційний журнал в пристрої. MemSQL в даний час підтримує реплікацію «головний-підлеглий».

Розподілена архітектура

MemSQL — розподілена база даних, яка працює за концепцією накопичувачів і вершин. Накопичувач відповідальний за те, щоб розбити запит через відповідні вершини і агрегувати результати назад клієнтові. Вершина — база даних MemSQL. MemSQL використовує поділ хешу, щоб розподілити дані рівномірно по числу вершин. MemSQL зробили розподілену версію своєї системи загальнодоступної 23 квітня 2013, з пробним випуском, доступним для скачування на їх вебсайті.

Версії

  • MemSQL 1b — випущена у вільний доступ в червні 2012
  • MemSQL 1c — незначне оновлення попередньої версії, випущена в липні 2012.
  • MemSQL 1.8 — реплікація і розширені можливості SQL, випущена в грудні 2012.
  • MemSQL 2.0 — вільний доступ розподіленої системи. Перший реліз операційної панелі MemSQL Watch.

Компанія

Продукт розробляється однойменним стартапом, заснованим у 2011 році колишніми інженерами Facebook Еріком Френкелем (Eric Frenkiel) і Микитою Шамгуновим (Nikita Shamgunov) за підтримки проекту Y Combinator. В першому раунді фірма отримала фінансування понад $ 5 млн від фондів First Round Capital, IA Ventures, NEA, а також від приватних осіб: Пола Бакхайта(англ. Paul Buchheit), Макса Левчина, Арона Леви (англ. Aaron Levie) і Ештона Кутчер. 18 червня 2012 року побачила перша версія продукту. Повідомляється про використання СУБД такими замовниками, як Comcast , Zynga, Verisign, Shutterstock . На початку 2014 року в рамках другого раунду фірма отримала інвестиції в розмірі $ 35 млн[1].

Примітки

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.