Обновить
59
Vladimir Ozerov@devozerov

Founder at Querify Labs

122
Подписчики
Отправить сообщение
Добавлю, что типичный оверхед на JNI составляет несколько десятков наносекунд. Reverse JNI на момент замеров (JDK 7) был немного медленнее, чем прямой. В рамках распределенной системы, где типичный latency измеряется миллисекундами, оверхед JNI амортизируется практически в ноль.
Транзакционный SQL сейчас в стадии активной разработки [1]. Озвучить сроки выхода мы пока не готовы.
[1] issues.apache.org/jira/browse/IGNITE-4191
Выключать можно и с помощью Java API. Главный сценарий — быстрая загрузка данных.
Не совсем так. C# делегирует часть работы в Java. При этом узел C# может быть как клиентом, так и сервером. Один из плюсов такой модели — возможность исполнять реальный .NET-код в кластере. Тонкий .NET-клиент таким функционалом обладать не может.
А, понял, мы же действительно еще не релизнули это :) Должно заработать в AI 2.3, который должен выйти до конца октября.
А что вы вкладываете в schema exploration? Мы поддерживаем работу с метаданными, поэтому существующие схемы, таблицы и колонки должны быть видны.
Есть еще JDBC и ODBC. В ближайшее время появится открытый протокол для создания клиентов на любой платформе или языке программирования.
Это совершенно разные продукты. Общее сравнение лучше-хуже не является корректным.
Должна появиться в обозримом будущем.
Если это данные в кэше, то подкладывать классы в общем случае не требуется. Если же это исполняемый код (map-reduce, closures, services), то требуется. Сейчас идет работа над описанной вами фичей для Ignite.NET [1], и в каком-то виде она с очень большой вероятностью появится в версии 2.1 в середине июня.

Но скажу прямо, у нас пока остаются неразрешенные вопросы по дизайну этого функционала. Поэтому в первой версии мы скорее всего будем просить ограничиться ее использованием в девелопменте, но не в продакшене. Ключевая проблема — выгрузка динамически подгруженных assembly. Пока решения — один AppDomen, не выгружаем assembly вообще, либо же много доменов. К обоим вариантам есть очевидные замечания. Будем думать дальше. Если хотите — подключайтесь к обсуждению в JIRA.

[1] https://issues.apache.org/jira/browse/IGNITE-2492
Я навскидку не могу назвать мест, где нам пришлось пойти на большие компромиссы в других компонентах ради из-за поддержки SQL. Можно перефразировать: если бы SQL не было, другие части системы не претерпели бы существенных архитектурных изменений.

А преимущество SQL очевидно — простой язык, который всем понятен, и через который можно прозрачно интегрироваться с огромным количеством систем.
По второму пункту корректнее будет сказать, что оно регулируемо. Можно качнуть в сторону AP, можно в сторону CP.
1) Этот вопрос станет актуален, когда выйдет persistence.
2) CP
Порт — это перенос сотен тысяч строк нетривиального кода, полный отказ от стандартных механизмов сериализации, и удвоение работы по имплементации и поддержке каждого тикета, раздувание штата.
Обертка — это быстрый подъем функционала, отсутствие дупликации. Ценой некоторых потерь в производительности, которые едва ли видны на фоне сетевого взаимодействия.

Это трейдофф, в котором мы выбрали первое, о чем до сих пор ни разу не пожалели. .NET не только в продакшене бегает, его уже другие вендоры эмбедяд в свои продукты.

С точки зрения комьюнити этот выбор достаточно перпенедикулярен.
По поводу классов — уже ответили ниже, они не требуются. Что касается динамического создания таблиц и более удобного использования схем — такой функционал появится в версии 2.1 в середине июня.
Полноценный MVCC появится в ближайшем будущем. В интернете можете найти много статей на эту тему. Если на фундаментальном уровне, то раздел 9 (Transaction Processing, Concurrency Control, and Recovering) отсюда [1]. Только нам это нужно распределенно :-)

[1] https://www.amazon.ca/Fundamentals-Database-Systems-Ramez-Elmasri/dp/0133970779
Ильшат, не подскажите чего именно, на ваш взгляд, не хватало в документации?
Его пилят много разработчиков, в том числе и я.
Начать можно с официального сайта: http://ignite.apache.org/

На данный момент описать продукт в двух словах проблематично. Официальная формулировка — data fabric, то есть интегрированная платформа для распределенных вычислений и работы с данными.

Многие (если не все) продукты такого класса лет 10 назад начинали с простого use case: распределенный кэш и map-reduce, горизонтальное масштабирование. За годы требования бизнеса и конкуренция возросли, поэтому они трансформировались в эдакие универсальные конструкторы для работы с данными.

Ключевые фичи конкретно Ignite: distributed cache, распределенный SQL поверх данных в памяти (+ JDBC и ODBC драйвера), map-reduce, стриминг, распределенная файловая система, множество интеграций (web sessions, hibernate L2 cache, ...), API для .NET и C++, и т. д…
С удовольствием расскажем про Apache Ignite. Один из немногих крупных OSS-проектов, который пилят в России.
2

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Работает в
Дата рождения
Зарегистрирован
Активность