|
|
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemarglopendsa, Это слишком глобальный подход )) JSON структура проще. Линк Проще пока, у вас не стоит задача группировки множетсва обьектов в разрезе свойств. Или сортировки . Или связи обьектов разных типов по критерию одинаковых( или удовлетоворяющих условиям попадания в новое множество) свойств. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 17:53 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
opendsaSiemarglopendsa, Это слишком глобальный подход )) JSON структура проще. Линк Проще пока, у вас не стоит задача группировки множетсва обьектов в разрезе свойств. Или сортировки . Или связи обьектов разных типов по критерию одинаковых( или удовлетоворяющих условиям попадания в новое множество) свойств. Для этого есть зависимые множетства и индексы, которые по сути являются тоже множествами объектов типа "ссылка на объект" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 18:08 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Правда в зависимых множествах, алгебре над ними и производительности еще конь не валялся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 18:10 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemargl Для этого есть зависимые множетства и индексы, которые по сути являются тоже множествами объектов типа "ссылка на объект" Если ACID на них распостраняется так же как и на обьекты, то не вопрос. То есть версия узла( листа) индекса, должна соотвествовать версии обьектов на которые они ссылаются. Хотя запуск ссылки в космос ( в С++ ) в отличии от указателя невозможен, а невалидность ссылки можно получить аж на расс, и самое неприятное, что бороться с невалидными ссыками практически невозможно. То есть для предсказуемого поведения это должно быть аналогом сурагатного ключа в RDBMS. Думаю что в конечном итоге мы перейдем к нормализации отношений, а потом и другим аспектам RDBMS, и ваша базы станет RDBMS базой. Все к этому идет :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 18:25 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
opendsaSiemargl Для этого есть зависимые множетства и индексы, которые по сути являются тоже множествами объектов типа "ссылка на объект" Если ACID на них распостраняется так же как и на обьекты, то не вопрос. То есть версия узла( листа) индекса, должна соотвествовать версии обьектов на которые они ссылаются. Конечно меняются в рамках одной транзакции. Технически - все зависимые множества открывают файлы, ссылаясь на хендл транзакции родительского. Транзакция откатится при любой программной ошибке, включая GPF! При изменении и сохранении объекта, все зависимые пересчитываются. opendsa Хотя запуск ссылки в космос ( в С++ ) в отличии от указателя невозможен, а невалидность ссылки можно получить аж на расс, и самое неприятное, что бороться с невалидными ссыками практически невозможно. То есть для предсказуемого поведения это должно быть аналогом сурагатного ключа в RDBMS. Валидность ссылок проверяется при чтении. Ссылка хранит UID объекта и при загрузке объекта по ней UID сверяется. Зато при сохранении я проверку дублей ключей могу игнорировать. (В принципе это спорный выбор) opendsa Думаю что в конечном итоге мы перейдем к нормализации отношений, а потом и другим аспектам RDBMS, и ваша базы станет RDBMS базой. Все к этому идет :) Объекты тем и хороши, что от нормализации до определенных, но широких пределов можно совсем отказаться. Это не очень хорошо с точки зрения архитектора, но архиудобно с точки зрения разработчика ;-) Например объект, невозможный при нормализации { "queriues":[ 1, 2, ...., 1000000], "buyerName": [ "Иванов", "Васильев", ....."1000000й покупатель"], "buyAmount": [ 230, 160, ....., 12] } Вполне может спокойно обрабатываться и расти в размерах (утрирую немного) )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 18:42 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemargl Объекты тем и хороши, что от нормализации до определенных, но широких пределов можно совсем отказаться. Это не очень хорошо с точки зрения архитектора, но архиудобно с точки зрения разработчика ;-) ИМХО тупиковый путь. Siemargl Например объект, невозможный при нормализации { "queriues":[ 1, 2, ...., 1000000], "buyerName": [ "Иванов", "Васильев", ....."1000000й покупатель"], "buyAmount": [ 230, 160, ....., 12] } Вполне может спокойно обрабатываться и расти в размерах (утрирую немного) )))) И какую полезную ( бизнесс) нагрузку несет объект именно в таком виде? Это вы называете объект , на самом деле это набор множеств. Если будет стоять задача на этот набор множеств, наложить другой набор, то оперирование наборами ( разностями и пересечениями) усложнится в соотвествии с опять о конечных автоматах количество состояний.......растёт экспоненциально с ростом количества состояний исходного НКА Нормализация позволяет ограничить прирост значения функции количества возможных состояний в зависимости от количества множеств и количества элементов во множествах ( диференциальная функция) путем ограничения степеней свободы системы. Во как завернул :) Это возможно не самая лучшая абстракция для постороения схемы хранения и обработки, но самая надежная , предсказуемая и математически обоснованная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 19:46 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
opendsa, Ну конечно, алгебру не будем применять к множеству свойств объекта. Единицей хранения и оперирования все же является целый объект. Задача прии работе с ОСУБД меняется - вместо нормализации так же аккуратно нужно спроектировать структуру объектов. Здесь имеем плюс - если меняя неудачную нормализацию, JOINы придется переписывать по всему проекту, то при объектном подходе может обойтись легче. Кстати пример - OLAP - задача, неудобная для нормализации. И мой пример с объектом-массивом выше, хотя в целом и неудачный, тут может быть выгоднее (и в скорости и в удобстве обращения). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 20:03 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Другими, приземленными словами, нормализация , это уже не где то сбоку , это конкретный универсальный набор инструментов, который позволяет получить максимально предсказуемое поведение системы в результате( в конечном итоге). И я, например, не стану жертвовать ею, ради других возможно более интуитивно понятных с точки зрения хранения и обработки инструментов, но не позволяющих получить соизмеримую предсказуемость конечной системы. ps Предсказуемость = производительность=стоимость владения. "=" = соизмеримо( находится практически в линейной зависимости). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 20:06 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
opendsa, С этим не поспоришь. Но от нормализации в каком то ее виде все равно не уйти. Это - способ размещения данных в многомерном пространстве - одна таблица дает +1 измерение. Объекты просто дают способ немного сократить количество измерений на тех же данных. Убрать измерения, короткие по метрике - внутрь объекта. А ведь лишние измерения (таблицы) нужно тоже обслуживать - джойны, индексы, целостность ключей, кэш, безопасность. Даешь нормализацию, но сложных объектов! =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 20:41 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemargl Здесь имеем плюс - если меняя неудачную нормализацию, JOINы придется переписывать по всему проекту, то при объектном подходе может обойтись легче. Что значит неудачную нормализацию? Возможно тот кто смотрит на данные по другому, как раз и нарушает логику заложенную архитектором? Зачем ставить преграды в направлении в котором должна развиваться система. Если преграды стоят, значит система не должна в этом направлении развиваться. Другое дело выяснить причины, почему такое ограничение было установлено и поменять правила, но ни коем случе не отменять. Отмена ограничений это путь к бесконтрольной непредсказуемости ситемы, Тут нужна оценка количества и причин возникновения инцидентов , приводящих к попытке нарушения ранее установленной логики. Siemargl Кстати пример - OLAP - задача, неудобная для нормализации. И мой пример с объектом-массивом выше, хотя в целом и неудачный, тут может быть выгоднее (и в скорости и в удобстве обращения). ОЛАП не рождается на ровном месте, есть некие логически связанные данные( множества), Если они логически связанные, то и нормализация должна соответствовать этой логике ( не нарушать ее) и нужно получить численные значения для оценки логичных и нелогичных связей ( агригаты в разрезе). ОЛАП очень даже удобный инструмент в понимании какие степени сободы важны а какие вредны, где нормализация нужна, а где вредна. Если какието текущие аспекты обрабоки данных, отражающих какие либо реальные процессы , противоречат логике, то это только повод задуматься. На каком уровне решать проблему( хранения, обработки, или выгнать нерадивого сотрудника) нужно смотреть по совокупности. По сути ОЛАПу абсолютно паралельна нормализация( есть она или нет), но это не повод от нее отказываться в принипе. зы Начинается философский офтопик, давай его не продолжать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 20:45 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemargl Объекты просто дают способ немного сократить количество измерений на тех же данных. Убрать измерения, короткие по метрике - внутрь объекта. А как же ОЛАП ? В общем виде он должен дать возможность оценки от группировки в 1 результирующую запись, до декартового произведения. Тем самым ты себя ограничеваешь там, где этого делать не нужно . ОЛАП - это универсальное средство работы над ошибками в понимании логики реальных процессов, которые отражены в виде хранимых данных. В общем виде конечная цель хранения и обработки данных это управлять и предсказывать поведение(м) реальных процессов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 20:59 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemargl А ведь лишние измерения (таблицы) нужно тоже обслуживать - джойны, индексы, целостность ключей, кэш, безопасность. За универсальность нужно платить, Единственное с чем могу согласиться, это подход к безопасности. Все прочие универсальность RDBMS окупает с головой. Siemargl Даешь нормализацию, но сложных объектов! =) Любых, но там где она действительно нужна и не противоречит логике попадания данных в систему для дальнейшего анализа ( загрузки в ОЛАП). Соблюсти баланс попадания данных в систему( на хранение), и при этом не противоречить логике ( правилам) обработки, это глобальная(стратегическая) тема над которой я думаю. По сути все это придумано до нас, это велосипед на тему отложенных констреинтов и таблиц исключений. Для меня стоит вопрос удобства ( интуитивного понимания среднестатестическим разработчиком) этих инструментов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2010, 22:02 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Задам глупый вопрос сообществу. Со стороны гейм-дева поступила идея - подобная СУБД может быть удобной при разработке игр - хранить объекты игрового мира при создании игры и после создания - быть рид-онли движком хранения. Для этого необходима фунциональность: 1. Файл-серверное хранение. Для этого надо реализовать файловые блокировки и списки локов. Это кстати попутно даст Repeatable Read & Serializable. 2. Синхронизатор между базами. В БД уже есть UID, версия объекта, меняющаяся при сохранении и версия схемы объекта. 3. Умение подкачивать данные из файл-блоков по частям (сейчас грузятся в память целиком). Хотя бы в рид-онли режиме. Кроме того, как уже я понимаю - эта БД - хорошая заготовка под системы документооборота. Теперь обещанный глупый вопрос - "Не хочет ли кто поучаствовать?" Потому что интересные мне задачи, как видно по дизайн-документу, уже почти закончил. И потому что на работе накидали контрактов на херову тучу лимонов и обещают содрать шкуру за невыполнение в срок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2010, 13:23 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Я-б поучаствовал, но с меня спрос... На плюсах не пишу (хотя немного знаю), предпочитаю сидеть в никсах... Для документооборота - да, но только если нет нормального движка на реляционных СУБД... У меня, вроде (Тут автор сильно задумался) получилось... Хотя следил-бы точно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2010, 22:44 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
SiemarglНапример объект, невозможный при нормализации { "queriues":[ 1, 2, ...., 1000000], "buyerName": [ "Иванов", "Васильев", ....."1000000й покупатель"], "buyAmount": [ 230, 160, ....., 12] } Вполне может спокойно обрабатываться и расти в размерах (утрирую немного) )))) Если вам именно такое в радость, то почему не использовать любую RDBMS, поддерживающую RDF, либо "чистое" RDF-хранилище? Не случайно RDF-хранилища поддерживают ввод-вывод в формате JSON ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2010, 17:39 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
iv_an_ru, Суть не в том, что мне нужна "хитрая" СУБД, или в том _что_ хранить. Суть в том, _как_ хранить. Основные цели проекта: 1. Задействовать имеющиеся возможности ОС, не дублируя их. 2. Сделать простой интерфейс для разработки программ. К тому же RDF - это прежде всего описание метаданных. А я пока прекрасно обошелся без них. В общем, развлекаюсь я так, а сложные стандарты тут только помеха. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2010, 19:43 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemargl Суть не в том, что мне нужна "хитрая" СУБД, или в том _что_ хранить. Суть в том, _как_ хранить. В nosql-discussion@googlegroups.com не ходили? Siemargl 1. Задействовать имеющиеся возможности ОС, не дублируя их. Будьте готовы похоронить средствами ОС как производительность так и масштабируемость. Siemargl 2. Сделать простой интерфейс для разработки программ. Тут согласен, это может быть правильным стимулом. Siemargl RDF - это прежде всего описание метаданных. Это распространённое заблуждение. Siemargl В общем, развлекаюсь я так, а сложные стандарты тут только помеха. Если развлекаться, то, конечно, многие вопросы снимаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2010, 20:27 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
iv_an_ru, >В nosql-discussion@googlegroups.com не ходили? Нет. Что там принципиально интересного? >Будьте готовы похоронить средствами ОС как производительность так и масштабируемость. Это вопрос спорный. Причем, если как потерять в производительности еще хоть как то понятно, а вот в масштабируемости - это вряд ли. Как приложение может быть более масштабируемым, чем нижележащая кластерная ОС? Тесты покажут. Пока скорость вполне терпимая - за счет кэша, а "тяжелые" тесты типа TPC пока не проводил. Когда буду думать про язык сложных запросов, тогда буду смотреть и RDF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2010, 21:01 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
>> В nosql-discussion@googlegroups.com не ходили? > Нет. Что там принципиально интересного? Люди. > Как приложение может быть более масштабируемым, чем нижележащая кластерная ОС? Запросто. Ос не может оптимально планировать запросы к диску и к сети, которые будут постыпать от приложение. Зато приложение планировать 1) может и 2) должно. Правильная конвейеризация на уровне приложения творит натурально чудеса. > Пока скорость вполне терпимая - за счет кэша, а "тяжелые" тесты типа TPC пока не проводил. Вот тут простенький, но показательный пример: http://sql.ru/forum/actualthread.aspx?tid=762878#8856791 > Когда буду думать про язык сложных запросов, тогда буду смотреть и RDF. Хорошее знание RDF+OWL+SPARQL если не удваивает зарплату, то "уполторазивает". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2010, 17:42 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
iv_an_ru>> В nosql-discussion@googlegroups.com не ходили? > Нет. Что там принципиально интересного? Люди. > Как приложение может быть более масштабируемым, чем нижележащая кластерная ОС? Запросто. Ос не может оптимально планировать запросы к диску и к сети, которые будут постыпать от приложение. Зато приложение планировать 1) может и 2) должно. Правильная конвейеризация на уровне приложения творит натурально чудеса. Путаете производительность с масштабируемостью.iv_an_ru > Пока скорость вполне терпимая - за счет кэша, а "тяжелые" тесты типа TPC пока не проводил. Вот тут простенький, но показательный пример: http://sql.ru/forum/actualthread.aspx?tid=762878#8856791 Кластеры - не моя проблема.iv_an_ru > Когда буду думать про язык сложных запросов, тогда буду смотреть и RDF. Хорошее знание RDF+OWL+SPARQL если не удваивает зарплату, то "уполторазивает". Тоже не моя проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2010, 23:32 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Siemargliv_an_ruКак приложение может быть более масштабируемым, чем нижележащая кластерная ОС? Запросто. Ос не может оптимально планировать запросы к диску и к сети, которые будут постыпать от приложение. Зато приложение планировать 1) может и 2) должно. Правильная конвейеризация на уровне приложения творит натурально чудеса. Путаете производительность с масштабируемостью. Не путаю. Если у вас нода, командующая исполнением запроса, становится узким местом, то добавление узлов в кластер перестаёт увеличивать производительность. Тут и масштабируемости конец. Siemargl iv_an_ruХорошее знание RDF+OWL+SPARQL если не удваивает зарплату, то "уполторазивает". Тоже не моя проблема. Как я вам завидую. А у меня всю жизнь проблема. Сколько бы ни было зарплаты, всегда "для полного счастья" не хватает примерно вдвое большей :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2010, 00:15 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Благодаря, пролетевший за интересную ссылку с обзором NoSQL стало понятней,к какому лагерю я принадлежу и почему некоторые возможности РСУБД так не укладывались в мою идеологию. В общем, по идеологии ближе всего Document-Store DB, например MongoDB, только Catreen во много раз меньше. Слегка скорректирую планы развития. ЗЫ. На досуге получил кросс-компиляторную переносимость - поддерживается Digital Mars C++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2010, 12:04 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
Сырцы скачаны, буду перед сном читать. Люблю факты появления таких штук! Оценивать на предмет велосипедства не буду - такие явления происходят не для порабощения Oracle-ов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2010, 16:35 |
|
||
|
Новая бесплатная БД – К3 (Кэтрин)
|
|||
|---|---|---|---|
|
#18+
SiemarglБлагодаря, пролетевший за интересную ссылку с обзором NoSQL стало понятней,к какому лагерю я принадлежу и почему некоторые возможности РСУБД так не укладывались в мою идеологию. Siemargl >В nosql-discussion@googlegroups.com не ходили? Нет. Что там принципиально интересного? (Это я так, поворчать просто) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2010, 17:01 |
|
||
|
|

start [/forum/topic.php?fid=56&msg=36655342&tid=2015417]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
151ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 496ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...