The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

СУБД Dolt, позволяющая манипулировать данными в стиле Git, opennews (??), 07-Мрт-21, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


36. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  –2 +/
Сообщение от Урри (ok), 07-Мрт-21, 16:01 
Не сказал бы, что это что-то инновационное. Если вам нужна версионность, ее легко реализовать в любой БД просто добавив еще один индекс-столбец "версия" к каждой таблице.

Ответить | Правка | Наверх | Cообщить модератору

43. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  –4 +/
Сообщение от tim2k (ok), 07-Мрт-21, 17:27 
А если приложение не поддерживает  дополнительный столбец? Очень много систем с закрытым кодом, к сожалению, есть на свете.
Ответить | Правка | Наверх | Cообщить модератору

46. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +4 +/
Сообщение от Annoynymous (ok), 07-Мрт-21, 18:40 
Так пусть не поддерживает. Мы ему напишем внешнюю нашлёпку, которая по нашему запросу уже будет откатывать данные на нужное нам состояние. А приложение по-прежнему будет считывать те поля, на которые оно запрограммировано.
Ответить | Правка | Наверх | Cообщить модератору

50. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +6 +/
Сообщение от adolfus (ok), 07-Мрт-21, 20:28 
Значит оно не поддерживает и СУБД Dolt. О чем вообще разговор?
Ответить | Правка | К родителю #43 | Наверх | Cообщить модератору

108. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от Аноним (108), 08-Мрт-21, 10:34 
Dolt ~= MySQL на уровне протокола
Ответить | Правка | Наверх | Cообщить модератору

110. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от ыы (?), 08-Мрт-21, 11:18 
И где там вон тот "AS OF" ?
Ответить | Правка | Наверх | Cообщить модератору

47. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  –2 +/
Сообщение от Msk20email (?), 07-Мрт-21, 18:42 
Что-то добавлять. к КАЖДОЙ. А таблиц в БД десятки. Менять много. Так что не так уж и легко.
Ответить | Правка | К родителю #36 | Наверх | Cообщить модератору

62. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +4 +/
Сообщение от ыы (?), 07-Мрт-21, 23:42 
А вы думаете как партицирование делается? Не только на каждую таблицу.. а каждую строку...
Ответить | Правка | Наверх | Cообщить модератору

51. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от минона (?), 07-Мрт-21, 20:36 
Нет, не совсем. Подобный подход позволяет версионифицировать данные в одной таблице.
Но, как правило, таблиц много, и данные в них связаны. Соответственно, для организации _среза_ данных приходится городить заметно более сложную структуру. Для этого, конечно, новый движок не требуется, достаточно обычного Постгреса. И, конечно, требуется инструмент для конструирования многоэтажных запросов (по опыту, там одних CVE-шек не меньше трех).
Ответить | Правка | К родителю #36 | Наверх | Cообщить модератору

63. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от ыы (?), 07-Мрт-21, 23:45 
> для организации _среза_ данных

мы строим sql  запрос... Зачем перед этим  организовывать физическое присутствие определенных данных?
Почему нельзя просто делать это тем же sql запросом? Почему надо для этого запроса каждый раз поднимать базу из бэкапа на какоето число или scn??

Ответить | Правка | Наверх | Cообщить модератору

72. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +1 +/
Сообщение от минона (?), 08-Мрт-21, 01:00 
Возможно, я не совсем понял вопрос, но в системах, для которых нужно манипулировать данными в стиле Git (см. топик), интересно не просто состояние какой-то одной записи в табличке, а определенного подмножества данных, соответствующих нужному состоянию. Точно так же, вы в Git (а равно как и в SVN и любой другой SCM, не считая RCS и CVS) имеете дело не с отдельным файлом, а с (под)множеством файлов, соответствующих определенному коммиту.

То есть, при конструировании запроса вы сначала имеете требуемое состояние (коммит, грубо говоря), а потом под него выгребаете нужные записи с нужными связями. Но опять-таки, связи интересны не абы какие, а только те, которые существовали ровно на момент выбранного коммита.

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

Ответить | Правка | Наверх | Cообщить модератору

86. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  –1 +/
Сообщение от ыы (?), 08-Мрт-21, 09:08 
Это все понятно. И точки зрения академического интереса - можно извернуться... Приведите пример осмысленной задачи решаемой таким образом?
Ответить | Правка | Наверх | Cообщить модератору

127. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от B (?), 08-Мрт-21, 23:11 
>> Приведите пример осмысленной задачи решаемой таким образом?

а это уже троллинг на уровне детсада.

Ответить | Правка | Наверх | Cообщить модератору

83. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от Ordu (ok), 08-Мрт-21, 04:16 
Эта штука позволяет немного иначе разделить задачи. Это не значит, что в ней можно сделать что-то такое, чего нельзя сделать на голом SQL, но в конце-концов, на C ведь тоже нельзя сделать ничего, чего нельзя было бы сделать на ассемблере -- это не значит что C не нужен, так?

Выше написан пример с машинным обучением. У тебя есть куча модификаций нейросетки, которые ты обучаешь на разных данных, и смотришь что получится. Ты можешь код обучения пофиксить, чтобы он принимал аргументом версию бд. Или ты можешь привести бд в состояние, когда она будет выдавать именно те данные, которые сейчас ты хочешь попробовать. При этом, задачивая данные, ты можешь иметь историю этой заточки -- в смысле делать что-нибудь в стиле DELETE что-то-там FROM май-тейбл; а потом dolt commit -m "ёпрст, наш веб-скрапер натащил в базу кучу хлама, он всё портит." Или может dolt commit -m "хмм... а что будет, если эти данные удалить из базы?". Но потом человек занятый веб-скрапом такой: dolt checkout raw-data; INSERT что-то-там INTO май-тейбл; dolt commit -m "наш скрапер ещё данных приволок".

Соответственно, когда у тебя через месяц какая-то из нейросеток показала какой-то результат, ты можешь во-первых, попробовать эту нейросетку погонять на разных данных, выбирая их на основе истории -- скажем найти в истории коммит с меседжом "удалить каждую 13 строку, чтобы полоса неудач закончилась", откатить его, и посмотреть что будет.

Я очень примитивно занимался обработкой данных, под несоколько психологических экспериментов, но там бывает нужда данные подредактировать (потому что в них, например, есть данные от испытуемого, который не закончив эксперимент сорвался и убежал куда-то, потому что вспомнил о более важных для него делах), может потому, что там нечаянно остались данные с этапа тестирования программы-эксперимента, когда я проходил этот эксперимент десять ряд кряду... Не, я конечно могу в программку, которая считает статистику внести все эти ограничения в SELECT который она делает, но блин это неудобно. Собственно я делал это не поверх sql, а поверх csv, который я положил в git, и рядом с ним программку, которая его обрабатывает. Таким образом я мог иметь историю того и этого рядом.

Ответить | Правка | К родителю #36 | Наверх | Cообщить модератору

106. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от ыы (?), 08-Мрт-21, 09:59 
прикрутить к git- обертку для запросов на sql?
Ответить | Правка | Наверх | Cообщить модератору

107. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от ыы (?), 08-Мрт-21, 10:05 
Хотя это конечно чисто извернуться :)

Штука когда есть набор данных которые надо вот так вот кидать туда сюда- называется коллекция. И необходимость привлечения  git для манипуляций с нею -это как раз пример дурно спроектированной системы с чудовищным оверхедом из за непродуманности.

Ответить | Правка | Наверх | Cообщить модератору

111. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от Ordu (ok), 08-Мрт-21, 11:36 
> Хотя это конечно чисто извернуться :)
> Штука когда есть набор данных которые надо вот так вот кидать туда
> сюда- называется коллекция. И необходимость привлечения  git для манипуляций с
> нею -это как раз пример дурно спроектированной системы с чудовищным оверхедом
> из за непродуманности.

Нет никакой системы, чтобы говорить о проектировании её. Это процесс разработки. Постоянно возникают новые идеи, и 90% из них оказываются пустышкой. Но чтобы понять, что они пустышка, надо попробовать. Это так же как с программированием в незнакомой области. Если ты влезешь, например, в рендеринг векторной графики, не имея особо опыта в этом деле, ты будешь поначалу двигаться наощупь.  Пробовать разные подходы, и отказываться от них. И каждая попытка -- это бранч в git'е, может даже дерево бранчей, из которых ты потом может пару коммитов позаимствуешь, для того, чтобы начать новый бранч для нового подхода.

А оверхед не важен. Если ты занят машинным обучением, то этот оверхед ведь будет случаться, когда ты руками что-то там делаешь. Вот ты сейчас готовишь данные для следующего раунда обучения, и какая тебе разница, будут ли твои действия выполняться 0.0001 сек или 0.1 сек? Тут важнее твоё личное удобство. И если тебе удобно для этого использовать git, то почему бы и нет?

Не, если этот оверхед будет выливаться в 10 минут перелопачивания данных, то дааа... это перебор. Даже минута много. Хотя, если эта минута нужна одна, на каждый раунд обучения, который длится десять часов, ну и чё? Тут оверхед только с точки зрения эргономики важен.

Ответить | Правка | Наверх | Cообщить модератору

139. "СУБД Dolt, позволяющая манипулировать данными в стиле Git"  +/
Сообщение от Аноним (139), 09-Мрт-21, 12:51 
Чем-то напоминает: если вам нужны версии, просто делайте архивы.
Ответить | Правка | К родителю #36 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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