powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
25 сообщений из 305, страница 12 из 13
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39217463
Bubba Kush
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И то, что вложенных транзакций нет, это не упрощает поддержку и не делает код более понятным. Это поддержку усложняет и делает код более сложным (цикломатическая сложность кода возрастает, следовательно возрастает сложность тестированич). Это просто техническое ограничение СУБД. Ну нет там транзакционного стэка, видимо сложно его делать, потому и функционала такого нет.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39217469
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У оракла и ms sql server есть сейвпойнты, с их помощью "вложенные транзакции" и реализуются
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39218783
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stop, прежде чем расписывать то, где и как Ваш код нарушает принципы SOLID, хотел бы узнать описание следующих параметров:

Код: c#
1.
2.
3.
const string DB_HEADER_JSON = "{'type':'config'}";
const string DB_JSON = "{'confVal1':$,'confVal2':$}";
const string OBJ_JSON = "{'tbConfig1':{'Text':$},'tbConfig2':{'Text':$}}";


или дайте ссылку на документацию к методам DB.GetWhere и DB.GetPartDoc<T> .
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39218920
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAstop, прежде чем расписывать то, где и как Ваш код нарушает принципы SOLID, хотел бы узнать описание следующих параметров:

Код: c#
1.
2.
3.
const string DB_HEADER_JSON = "{'type':'config'}";
const string DB_JSON = "{'confVal1':$,'confVal2':$}";
const string OBJ_JSON = "{'tbConfig1':{'Text':$},'tbConfig2':{'Text':$}}";


или дайте ссылку на документацию к методам DB.GetWhere и DB.GetPartDoc<T> .

19067466
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39219238
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopskyANAstop, прежде чем расписывать то, где и как Ваш код нарушает принципы SOLID, хотел бы узнать описание следующих параметров:

Код: c#
1.
2.
3.
const string DB_HEADER_JSON = "{'type':'config'}";
const string DB_JSON = "{'confVal1':$,'confVal2':$}";
const string OBJ_JSON = "{'tbConfig1':{'Text':$},'tbConfig2':{'Text':$}}";


или дайте ссылку на документацию к методам DB.GetWhere и DB.GetPartDoc<T> .

19067466
Документация конечно не лучшая.

К методу GetWhere конечно есть скудное описание: find documents by filter, - и примеры из которых в принципе понятно.
А вот GetPartDoc<T> не имеет ни описания, ни примеров, где он принимает 4, а не 3 параметра.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39219267
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про UpdPartDoc<T> с 4-мя парамтрами кстати тоже ничего нет в документации.

Но я так понял, что это как хранится в БД:
Код: c#
1.
const string DB_JSON = "{'confVal1':$,'confVal2':$}";


а это как отображается на свойства объекта:
Код: c#
1.
const string OBJ_JSON = "{'tbConfig1':{'Text':$},'tbConfig2':{'Text':$}}";


верно?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39219297
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAstopпропущено...


19067466
Документация конечно не лучшая.

К методу GetWhere конечно есть скудное описание: find documents by filter, - и примеры из которых в принципе понятно.
А вот GetPartDoc<T> не имеет ни описания, ни примеров, где он принимает 4, а не 3 параметра.

Спасибо за замечание. Я добавлю.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39219298
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПро UpdPartDoc<T> с 4-мя парамтрами кстати тоже ничего нет в документации.

Но я так понял, что это как хранится в БД:
Код: c#
1.
const string DB_JSON = "{'confVal1':$,'confVal2':$}";


а это как отображается на свойства объекта:
Код: c#
1.
const string OBJ_JSON = "{'tbConfig1':{'Text':$},'tbConfig2':{'Text':$}}";


верно?

Всё верно. Код настолько простой что в нем можно разобраться даже без документации =)
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39219416
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopskyANAПро UpdPartDoc<T> с 4-мя парамтрами кстати тоже ничего нет в документации.

Но я так понял, что это как хранится в БД:
Код: c#
1.
const string DB_JSON = "{'confVal1':$,'confVal2':$}";


а это как отображается на свойства объекта:
Код: c#
1.
const string OBJ_JSON = "{'tbConfig1':{'Text':$},'tbConfig2':{'Text':$}}";


верно?

Всё верно. Код настолько простой что в нем можно разобраться даже без документации =)
Не льстите себе :)
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39219720
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bubba KushВложенной называется транзакция, коммит которой фиксирует операции транзакции только при фиксации обрамляющей транзакции и которая способна откатывать изменения только те, что она совершила от времени старта вложенной транзакции до времени отката.

Это достаточно очевидно любому программисту, знакомому с понятием стек, рекурсия и вложенность. Не понимаю, к чему демагогия про автономность и прочее?

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

stopИ если проггер написал РОЛЛБЕК то он подразумевает что все что внутри благополучно откатится на всех уровнях,
это не гуд, только текущую должно

и COMMIT не должен влиять на обрамляющую транзакцию, он просто говорит, что "атом" транзакции выполнился и может быть отменён вышележащим РОЛЛБЕКом

если уж хочется глобально, то придумайте какой ни будь abort с месагой, который будет РОЛЛБЕКи делать вверх по иерархии
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39219837
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роллбек обрамляющей откатывает все вложенные в нее транзакции, даже если они коммитились. Вверх по уровням роллбек не распространяется.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39220566
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopРоллбек обрамляющей откатывает все вложенные в нее транзакции, даже если они коммитились. Вверх по уровням роллбек не распространяется.
ну да

не так выразился?
stopИ если проггер написал РОЛЛБЕК то он подразумевает что все что внутри благополучно откатится на всех уровнях,
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39227871
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это треш. Тролли в угаре.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
int main(int argc, char** argv)
{
	//=====================================================

	system("cls");

	if (argc == 2 && !strcmp(argv[1], "-selftest")) //test mode
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39228179
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять якось невдобно получилось.
Еще один стандартный бенчмарк для Монго.
50 тыс. документов. В каждом массив на 100 целых чисел.
Цель запроса - пробежаться по всем документам и добавить 101 целое число в массив каждого документа,
короче говоря операция $PUSH для Монго и Insert для Днипры.
Запрос вообще самый самый базовый ниразу не подбирался. Например если вы на Монге будете делать
блог, то каждая статья также будет содержать массив с комментариями внизу, а пост комментария добавление этого
самого комментария в конец этого массива.

Сам запрос на апдейт этого дела ( незабываем обращать внимание на синтаксис )
Монго драйвер

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
var update = Builders<Person>.Update
                    .Push<int>(e => e.Arr, 100);

            stop = new Stopwatch();
            stop.Start();

            task = PushMany(collection, update);
            task.Wait();
            task.GetAwaiter().GetResult();

stop.Stop();

            Console.WriteLine(stop.ElapsedMilliseconds.ToString() + " ms.");

private static async Task PushMany(IMongoCollection<Person> collection,
                                           UpdateDefinition<Person> update)
        {
            await collection.UpdateManyAsync<Person>(p => p.Val == 1, update);
        }



Днипро драйвер

Код: c#
1.
2.
3.
4.
5.
6.
stop = new Stopwatch();
            stop.Start();

            db.GetWhere("{'Val':1}").Insert("{'Arr':[Add,100]}");

            Console.WriteLine(stop.ElapsedMilliseconds.ToString() + " ms.");



Результаты ожидаемы.
Днипра почти в 20ть раз быстрее . (59 миллисекунд против 1 секунды у Монго).
При этом Днипра - честная версионная транзакция, честный подтвержденный коммит на диск, все элементы в массиве проиндексированы автоматически.
Монга - отложеная запись, без транзакций. Дополнительно еще нужно создавать индексы.

Выводы:
Архитектура Днипры построена так, что не вызывает при добавлении нового элемента в массив документа его перезапись.
Монга, Постгри, Кеш и вся эта братия перезаписывает. При бОльшем количестве элементов, отставание будет только усугублятся.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39228314
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stop, что за поле Val, по которому делается выборка?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39228582
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAstop, что за поле Val, по которому делается выборка?

Это мембер класса

Код: c#
1.
2.
3.
4.
5.
public class Person
        {
            public int Val { get; set; }
            public List<int> Arr { get; set; }
        }



Дальше создается 50 тыс обьектов этого класса, где Val = 1
И дальше этот запрос.
"Добавить в массив Arr один элемент где Val = 1"
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39228601
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ясно..
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39244323
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда перед тобой стоит задача быстро написать понятный и хорошо поддерживаемый проект, всегда стоит задача выбора СУБД.
Бекенд в своей классической форме подразумевает создать модель данных и слой бизнесс логики работы с этими данными, который на начальном этапе скорей всего сводится к CRUD (Create Read Update Delete) операциям.
В данном случае выбор No Sql решения на базе украинской СУБД Днiпро был достаточно и необычен и рискован. Особенно если ты отлаживаешь проект и базу данных одновременно :) Но, чем больше ошибок будет выловлено тем лучше, на чем то же нужно тестировать субд.
Поэтому я начал проект, который уже при первом приближении декомпозировался в 30+ «таблиц» и 50+ «хранимок»
Суть самого проекта:
Чтото вроде социальной сети с элементами конструкторов форм, визардами, лайками, приватными чатами, оповещениями всех обо всем, системой комментариев, лентами сообщений и тд.

Впечетления.
Все оказалось не так плохо. Весь Data Access Layer который отвечает за коммуникацию с базой данных представлен здесь
https://github.com/Bazist/DniproExamples/blob/master/Booben/Booben/Controllers/DAL.cs

Каждая «хранимка» занимает всего несколько строк кода и по сути своей шаблонна. Типичный метод GetWhere(шаблон части джисона).Select/Update/Insert/Delete(шаблон части джисона).
Есть более сложные хранимки, вида:
«Вставить обьект Event всем подписчикам этой страницы пользователя.»
(AddCommentToPage процедура в исходнике выше, как пример)
Благодаря статической типизации, если модель меняется, то ошибки отлавливаются на этапе компиляции. Все сами по себе методы шаблонны, можно набросать 3-5 «хранимок» и не сделать ниодной ошибки, ошибится достаточно тяжело.
Сама модель данных представляет собой крупную иерархию класса User.
Уровень вложенности достигает до 6-7 сущностей, что в реляционной модели означает 5-6 джоинов.
Вся модель представлена вот здесь

https://github.com/Bazist/DniproExamples/tree/master/Booben/Booben/Models

После того как у нас есть модель данных в БД и есть уровень работы с этими данными, остается на эту модель только натянуть VIews. Пресловутый MVC паттерн. Но тут все настолько просто, что это даже больше к дизайну чем к логике.

PS:
По быстродействию и архитектуре самой СУБД уже было обсуждение
Сейчас впечетления такие, что программу из 90х запустили на мощном компьютере )
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39264600
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Баз привет. Выдалась минутка. Чо как? Есть updates по ветке Java-клиента?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39268625
stop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonБаз привет. Выдалась минутка. Чо как?


Все по страому.
В отпуск пока что собираюсь.

maytonЕсть updates по ветке Java-клиента?

Пока нет, используется старый Джава драйвер.
Написать ОРМ драйвер под Джаву также как это сделано под Дот Нет
пока только в планах.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39283371
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Up какие новости?
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39350149
HArray
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maytonUp какие новости?

Выложил в сеть сердце Стебелька.
Все еще думаете что с Монго тесты както подтасованы ?
Шах и мат господа писимисты.
Посмотрите тогда вот сюда, на каком движке собрана СУБД Днiпро


slavik@slavik:~$ /home/slavik/Documents/HArray/HArray/bin/Release/HArrayMono
=== HArrayInt VS std::map<int,int> testing ===
Insert/Search 1000000 SEQUENCE keys (4 bytes each) ...
HArrayInt => Insert: 14 msec, Search: 3 msec.
std::map => Insert: 282 msec, Search: 166 msec.

Insert/Search 3000000 SEQUENCE keys (4 bytes each) ...
HArrayInt => Insert: 32 msec, Search: 10 msec.
std::map => Insert: 1076 msec, Search: 562 msec.

Insert/Search 5000000 SEQUENCE keys (4 bytes each) ...
HArrayInt => Insert: 54 msec, Search: 16 msec.
std::map => Insert: 2107 msec, Search: 1066 msec.

Insert/Search 7000000 SEQUENCE keys (4 bytes each) ...
HArrayInt => Insert: 77 msec, Search: 22 msec.
std::map => Insert: 3014 msec, Search: 1505 msec.

Insert/Search 9000000 SEQUENCE keys (4 bytes each) ...
HArrayInt => Insert: 95 msec, Search: 28 msec.
std::map => Insert: 4021 msec, Search: 2017 msec.

Insert/Search 1000000 RANDOM keys (4 bytes each) ...
HArrayInt => Insert: 15 msec, Search: 15 msec.
std::map => Insert: 692 msec, Search: 619 msec.

Insert/Search 3000000 RANDOM keys (4 bytes each) ...
HArrayInt => Insert: 47 msec, Search: 47 msec.
std::map => Insert: 2653 msec, Search: 2430 msec.

Insert/Search 5000000 RANDOM keys (4 bytes each) ...
HArrayInt => Insert: 84 msec, Search: 84 msec.
std::map => Insert: 4908 msec, Search: 4445 msec.

Insert/Search 7000000 RANDOM keys (4 bytes each) ...
HArrayInt => Insert: 123 msec, Search: 126 msec.
std::map => Insert: 7253 msec, Search: 6700 msec.

Insert/Search 9000000 RANDOM keys (4 bytes each) ...
HArrayInt => Insert: 167 msec, Search: 170 msec.
std::map => Insert: 9755 msec, Search: 9066 msec.

Insert/Search 1000000 PERIOD keys (4 bytes each) ...
HArrayInt => Insert: 14 msec, Search: 4 msec.
std::map => Insert: 276 msec, Search: 165 msec.

Insert/Search 3000000 PERIOD keys (4 bytes each) ...
HArrayInt => Insert: 43 msec, Search: 9 msec.
std::map => Insert: 989 msec, Search: 551 msec.

Insert/Search 5000000 PERIOD keys (4 bytes each) ...
HArrayInt => Insert: 70 msec, Search: 16 msec.
std::map => Insert: 1931 msec, Search: 1007 msec.

Insert/Search 7000000 PERIOD keys (4 bytes each) ...
HArrayInt => Insert: 99 msec, Search: 22 msec.
std::map => Insert: 2929 msec, Search: 1503 msec.

Insert/Search 9000000 PERIOD keys (4 bytes each) ...
HArrayInt => Insert: 126 msec, Search: 30 msec.
std::map => Insert: 3990 msec, Search: 2005 msec.

=== HArrayVarRAM VS std::map<BinKey,int> testing ===
Insert/Search 1000000 SEQUENCE keys (16 bytes each) ...
HArrayVarRAM => Insert: 143 msec, Search: 221 msec.
std::map => Insert: 776 msec, Search: 820 msec.

Insert/Search 3000000 SEQUENCE keys (16 bytes each) ...
HArrayVarRAM => Insert: 590 msec, Search: 846 msec.
std::map => Insert: 2986 msec, Search: 2999 msec.

Insert/Search 5000000 SEQUENCE keys (16 bytes each) ...
HArrayVarRAM => Insert: 1094 msec, Search: 1449 msec.
std::map => Insert: 5273 msec, Search: 5369 msec.

Insert/Search 7000000 SEQUENCE keys (16 bytes each) ...
HArrayVarRAM => Insert: 1588 msec, Search: 2114 msec.
std::map => Insert: 7894 msec, Search: 8856 msec.

Insert/Search 9000000 SEQUENCE keys (16 bytes each) ...
HArrayVarRAM => Insert: 2225 msec, Search: 2830 msec.
std::map => Insert: 10583 msec, Search: 11053 msec.

Insert/Search 1000000 RANDOM keys (16 bytes each) ...
HArrayVarRAM => Insert: 70 msec, Search: 89 msec.
std::map => Insert: 709 msec, Search: 710 msec.

Insert/Search 3000000 RANDOM keys (16 bytes each) ...
HArrayVarRAM => Insert: 185 msec, Search: 221 msec.
std::map => Insert: 2683 msec, Search: 2705 msec.

Insert/Search 5000000 RANDOM keys (16 bytes each) ...
HArrayVarRAM => Insert: 297 msec, Search: 391 msec.
std::map => Insert: 4933 msec, Search: 5025 msec.

Insert/Search 7000000 RANDOM keys (16 bytes each) ...
HArrayVarRAM => Insert: 607 msec, Search: 653 msec.
std::map => Insert: 7448 msec, Search: 7504 msec.

Insert/Search 9000000 RANDOM keys (16 bytes each) ...
HArrayVarRAM => Insert: 765 msec, Search: 887 msec.
std::map => Insert: 10028 msec, Search: 10331 msec.

Insert/Search 1000000 PERIOD keys (16 bytes each) ...
HArrayVarRAM => Insert: 112 msec, Search: 167 msec.
std::map => Insert: 714 msec, Search: 711 msec.

Insert/Search 3000000 PERIOD keys (16 bytes each) ...
HArrayVarRAM => Insert: 412 msec, Search: 563 msec.
std::map => Insert: 2681 msec, Search: 2703 msec.

Insert/Search 5000000 PERIOD keys (16 bytes each) ...
HArrayVarRAM => Insert: 694 msec, Search: 984 msec.
std::map => Insert: 4961 msec, Search: 4999 msec.

Insert/Search 7000000 PERIOD keys (16 bytes each) ...
HArrayVarRAM => Insert: 1277 msec, Search: 1444 msec.
std::map => Insert: 7328 msec, Search: 7537 msec.

Insert/Search 9000000 PERIOD keys (16 bytes each) ...
HArrayVarRAM => Insert: 1606 msec, Search: 1889 msec.
std::map => Insert: 9901 msec, Search: 10218 msec.

=== HArrayVarRAM VS std::map<StrKey,int> testing ===
Insert/Search 1000000 SIMILAR keys (64 bytes each) ...
HArrayVarRAM => Insert: 261 msec, Search: 276 msec.
std::map => Insert: 1229 msec, Search: 1161 msec.

Insert/Search 2000000 SIMILAR keys (64 bytes each) ...
HArrayVarRAM => Insert: 592 msec, Search: 682 msec.
std::map => Insert: 2792 msec, Search: 2577 msec.

Insert/Search 3000000 SIMILAR keys (64 bytes each) ...
HArrayVarRAM => Insert: 1022 msec, Search: 1173 msec.
std::map => Insert: 4413 msec, Search: 4362 msec.

Insert/Search 1000000 RANDOM keys (64 bytes each) ...
HArrayVarRAM => Insert: 269 msec, Search: 272 msec.
std::map => Insert: 984 msec, Search: 889 msec.

Insert/Search 2000000 RANDOM keys (64 bytes each) ...
HArrayVarRAM => Insert: 640 msec, Search: 651 msec.
std::map => Insert: 2164 msec, Search: 2007 msec.

Insert/Search 3000000 RANDOM keys (64 bytes each) ...
HArrayVarRAM => Insert: 1053 msec, Search: 1072 msec.
std::map => Insert: 3570 msec, Search: 3271 msec.


Больше о проекте
https://github.com/Bazist/HArray
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39350228
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HArrayВсе еще думаете...Вот польстил себе так польстил :)
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39350262
HArray
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но ведь правда.
Эта СУБД единственная кто начала с переработки базовых принципов поисковых алгоритмов.
Она единственная кто основана на супербыстром Trie, а не на какихто попсовых модификациях бинарных деревьев или хештаблицах.
Это почти революция в СУБД строении.
...
Рейтинг: 0 / 0
В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
    #39351233
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HArray, с RavenDB посоревнуйся ещё :)

А не зашкалит сервер от 100,000 запросов/сек?
...
Рейтинг: 0 / 0
25 сообщений из 305, страница 12 из 13
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / В рамках импортозамещения предлагаю обсудить новую базу (Днипра)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]