powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / NoSQL объясните)
25 сообщений из 64, страница 1 из 3
NoSQL объясните)
    #38878844
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!)
Спустя нескольких дней чтения о том что же такое NoSQL базы, какие есть и какие преимущества дают, остается ряд вопросов на которые пока нет ответа.

1) Нет транзакций. Как происходит выполнение операцией над балансом например либо коллективные операции над одними и теми же данными?
2) Нет транзакций = не ясно как работает многоверсионность. Что будет видеть второй пользователь, если первый еще не завершил изменения?
3) Например в Oracle есть pl/SQL в нем можно легко заложить всю бизнес-логику внутри самого сервера, и все операции выполнять там, как это происходит в noSQL? той же касандре или монго. Есть ли там что-то подобное?
4) Снова же, если нет транзакций, нет и автономных транзакций значит, как выполнять безоткатный аудит?
5) Можно ли вообще какие либо вычисления делать внутри сервера, либо это все нужно делать на клиенте?
6) Есть ли триггеры и как работают?
7) Есть ли джобы?
8) поддерживают ли индексы возможность индексирования по возрастанию\убыванию?
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38878966
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NoSQL - это довольно общее название сборника разношерстных изделий.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38878980
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZalmСпустя нескольких дней чтения о том что же такое NoSQL базыЧто именно Вы читали?

Погуглите "nosql transactional database".
NoSQL СУБД разные бывают, в том числе и с поддержкой транзакций, например GlobalsDB , GT.M , Caché их поддерживают.

СУБД Caché помимо прочего поддерживает вложенные транзакции ; имеет мощные серверные языки (чаще используется COS - Caché Object Script), соответственно всю логику можно сделать прямо на сервере; триггеры ; джобы ; индексы и много чего ещё.

Рядом есть ветка , посвящённая именно этой СУБД.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38878996
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zalm,

NoSQL это попытка работать с большими (для наличного оборудования) объёмами данных.
Соответственно при этом лишаемся многого.
Где-то нет индексов, кроме первичных, нет транзакций и т.д. и т.п.
Каждый разработчик сам решает, чем ему жертвовать, а что оставить (проще сделать хорошо, то, что нужно, да и дешевле разработка).
Индексы по другим полям (кроме ключа)- в монге есть, в hbase, например, нет.

То, что нет транзакций - не значит, что нет атомарности. Обычно изменения одной строки либо прошли, либо нет.

Процедуры/триггера/job'ы на сервере- мне пока не надо было, может кто и реализовал, хотя вряд ли. Скорее предполагается, что всё вычисляется в приложении.

В общем- надо понимать, что NoSQL- это экономия денег на железе. И эта экономия не бесплатна. Зато плюс- обычно очень развита кластеризация. Софт может работать рядом с БД и иметь к ней быстрый доступ. При этом машины в кластере, опять же, не менфреймы, а какие-нибудь блейд-сервера задёшево.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879000
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servitСУБД Caché помимо прочего поддерживает

Всё же Caché обычно в "NoSQL" не включают- это хоть и "не-SQL" база, но всё же она не совсем в тренде нынешней моды.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879021
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey TominZalm,

NoSQL это попытка работать с большими (для наличного оборудования) объёмами данных.
Соответственно при этом лишаемся многого.
Где-то нет индексов, кроме первичных, нет транзакций и т.д. и т.п.
Каждый разработчик сам решает, чем ему жертвовать, а что оставить (проще сделать хорошо, то, что нужно, да и дешевле разработка).
Индексы по другим полям (кроме ключа)- в монге есть, в hbase, например, нет.

То, что нет транзакций - не значит, что нет атомарности. Обычно изменения одной строки либо прошли, либо нет.

Процедуры/триггера/job'ы на сервере- мне пока не надо было, может кто и реализовал, хотя вряд ли. Скорее предполагается, что всё вычисляется в приложении.

В общем- надо понимать, что NoSQL- это экономия денег на железе. И эта экономия не бесплатна. Зато плюс- обычно очень развита кластеризация. Софт может работать рядом с БД и иметь к ней быстрый доступ. При этом машины в кластере, опять же, не менфреймы, а какие-нибудь блейд-сервера задёшево.

Спасибо
Интересует больше направление касандры
что о ней можете сказать?

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

Друзья вздумали полностью на касандре построить систему управления рекламой, тизеры банеры и тд))) и я пока не понимаю насколько это реально, хотя мне кажется это мало реально, так как даже с теми же деньгами не понятно как без транзакций управляться.

Там возможны варианты только в виде бд+приложение? Например как оракл он может самодостаточно работать с вебом и без доп приложений.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879023
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Tominно всё же она не совсем в тренде нынешней модыМода приходит и уходит, а продукт должен продолжать стабильно работать и поддерживать текущие веяния этой самой моды.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879035
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servitAlexey Tominно всё же она не совсем в тренде нынешней модыМода приходит и уходит, а продукт должен продолжать стабильно работать и поддерживать текущие веяния этой самой моды.

Согласен. Но всё же Caché немного другое.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879040
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZalmИнтересует больше направление касандры
что о ней можете сказать?

Ничего :)

ZalmДрузья вздумали полностью на касандре построить систему управления рекламой, тизеры банеры и тд))) и я пока не понимаю насколько это реально, хотя мне кажется это мало реально, так как даже с теми же деньгами не понятно как без транзакций управляться.

Я б сделал отдельную БД для оперативной работы (показ баннеров и т.п.) и отдельную- для биллинга.

ZalmТам возможны варианты только в виде бд+приложение? Например как оракл он может самодостаточно работать с вебом и без доп приложений.

Я б даже на окрале не стал бы делать веб без приложения. Точнее так- я НЕ ДЕЛАЮ веб без приложения. Т.к. мухи (код) отдельно, а котлеты (хранение данных)- отдельно. Базы данных хорошо хранят данные, а java (просто это мой инструмент- есть и другие)- хорошо обрабатывает.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879062
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
делать одну бд для билинга одну для оперативной работы нет смысла, каждый клик по банеру это деньги, это и есть оперативная работа. и кликов обычно много, так как я разраб оракла, как делать такую работу без транзакций я не представляю.

В итоге вопрос, насколько реально сделать систему по управлению рекламой чисто на касандре?
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879123
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорри, офтопик:
Alexey TominВсё же Caché обычно в "NoSQL" не включают- это хоть и "не-SQL" база,
Скорее наоборот - и SQL база, и NoSQL база. И SQL есть, и "key-value" доступ есть. И к одним и тем же данным.

Zalm,

Мое небольшое "имхо" , на основе работы с NoSQL возможностями СУБД Cache.

1)Транзакции есть.
2)Что будет видеть второй пользователь, если первый еще не завершил изменения? В NoSQL Cache можно сделать и так и этак, чтобы видел, и чтобы не видел (управляя блокировкой).
3)В Cache есть свой язык и можно писать бизнес логику.
4)Что такое "безоткатный аудит"? Журнал СУБД? Журнал есть, откат транзакций работает на его основе.
5)См.п.3.
6)Триггеров нет, т.к. нет метаданных (я про NoSQL Cache).
7)Джобы в Cache есть.
8)В NoSQL Cache индексы строятся программистом и читать их можно вперед и назад.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879147
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DirksDRСорри, офтопик:
Alexey TominВсё же Caché обычно в "NoSQL" не включают- это хоть и "не-SQL" база,
Скорее наоборот - и SQL база, и NoSQL база. И SQL есть, и "key-value" доступ есть. И к одним и тем же данным.

Zalm,

Мое небольшое "имхо" , на основе работы с NoSQL возможностями СУБД Cache.

1)Транзакции есть.
2)Что будет видеть второй пользователь, если первый еще не завершил изменения? В NoSQL Cache можно сделать и так и этак, чтобы видел, и чтобы не видел (управляя блокировкой).
3)В Cache есть свой язык и можно писать бизнес логику.
4)Что такое "безоткатный аудит"? Журнал СУБД? Журнал есть, откат транзакций работает на его основе.
5)См.п.3.
6)Триггеров нет, т.к. нет метаданных (я про NoSQL Cache).
7)Джобы в Cache есть.
8)В NoSQL Cache индексы строятся программистом и читать их можно вперед и назад.

Безоткатный аудит это когда некоторые операции могут быть закомичены в рамках общих операций которые будут откачены)))
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879178
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zalmделать одну бд для билинга одну для оперативной работы нет смысла, каждый клик по банеру это деньги, это и есть оперативная работа. и кликов обычно много, так как я разраб оракла, как делать такую работу без транзакций я не представляю.

В оперативной бд учитываются клики.
Потом они выгружаются в оракл, возможно с агрегацией (по дням, например) и дальше выставляется счёт и т.п.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879199
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey TominZalmделать одну бд для билинга одну для оперативной работы нет смысла, каждый клик по банеру это деньги, это и есть оперативная работа. и кликов обычно много, так как я разраб оракла, как делать такую работу без транзакций я не представляю.

В оперативной бд учитываются клики.
Потом они выгружаются в оракл, возможно с агрегацией (по дням, например) и дальше выставляется счёт и т.п.

Вопрос стоит другой, насколько адекватно такие проекты делать ONLY Cassandra, без каких либо других баз и всего прочего
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879227
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZalmВопрос стоит другой, насколько адекватно такие проекты делать ONLY Cassandra, без каких либо других баз и всего прочего

Если уже есть положительный опыт- то почему бы и нет?
А вот если человек прочитал про неё и решил "ух ты, круто, фейсбук сделал"- то, наверное, не стоит.

Любой инструмент хорош, если им уметь пользоваться. Если "подложить" её под фабрику веб-серверов - то это, наверное, хороший вариант. Но делать биллинг (с хранение версионной картотеки абонентов/тарифов, выставлением счетов и т.п.)- я б не взялся.
Сейчас на проекте используем hadoop+oracle+mongo. Расчёт данных в хадупе (с hbase+solr), слив результатов в oracle, на нём веб-интерфейс, где операторы анализируют результаты расчётов и ставят задачи. А в интернет торчит пачка серверов в облаке, опирающихся на mongo (куда задачки идут из oracle).
И всё на своём месте- hadoop даёт возможность проводить большие расчёты за разумное время, oracle обеспечивает мгновенный отклик, в т.ч. на сложных запросах, mongodb - не требует ресурсов на облаке и проста в использовании.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879307
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey TominZalmВопрос стоит другой, насколько адекватно такие проекты делать ONLY Cassandra, без каких либо других баз и всего прочего

Если уже есть положительный опыт- то почему бы и нет?
А вот если человек прочитал про неё и решил "ух ты, круто, фейсбук сделал"- то, наверное, не стоит.

Любой инструмент хорош, если им уметь пользоваться. Если "подложить" её под фабрику веб-серверов - то это, наверное, хороший вариант. Но делать биллинг (с хранение версионной картотеки абонентов/тарифов, выставлением счетов и т.п.)- я б не взялся.
Сейчас на проекте используем hadoop+oracle+mongo. Расчёт данных в хадупе (с hbase+solr), слив результатов в oracle, на нём веб-интерфейс, где операторы анализируют результаты расчётов и ставят задачи. А в интернет торчит пачка серверов в облаке, опирающихся на mongo (куда задачки идут из oracle).
И всё на своём месте- hadoop даёт возможность проводить большие расчёты за разумное время, oracle обеспечивает мгновенный отклик, в т.ч. на сложных запросах, mongodb - не требует ресурсов на облаке и проста в использовании.

какой должен быть положительный опыт что бы безтранзакционная "база" могла отлично работать с деньгами и которая не гарантирует что все данные будут сохранены?)
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879329
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZalmКакой должен быть положительный опыт что бы безтранзакционная "база" могла отлично работать с деньгами и которая не гарантирует что все данные будут сохранены?)

Почему не гарантирует? Гарантирует. Отсутствуют транзакции, но не вот всё плохо.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879363
DPH3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot Zalm]
Спасибо

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

А нет там изоляции, зачем она.
Если нужна очень быстрая БД с нормальным ACID - то смотри на VoltDB. Но он с нормальной Durability уже платный )


Друзья вздумали полностью на касандре построить систему управления рекламой, тизеры банеры и тд))) и я пока не понимаю насколько это реально, хотя мне кажется это мало реально, так как даже с теми же деньгами не понятно как без транзакций управляться.

А зачем каждый клик писать надежно с транзакциями в приложение? Ну, в худшем случае, потеряем клики или показы за секунду - не так уж и страшно.
Более того, для кликов не нужны полноценные транзакции, достаточно просто гарантированной durability, а это гораздо дешевле.

Там возможны варианты только в виде бд+приложение? Например как оракл он может самодостаточно работать с вебом и без доп приложений.
Ну, по хорошему, он это делает плохо и, все равно, внутри таки есть веб-приложение )
Но так делать не стоит, плохая это идея.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879470
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot DPH3]ZalmСпасибо

пропущено...

А нет там изоляции, зачем она.
Если нужна очень быстрая БД с нормальным ACID - то смотри на VoltDB. Но он с нормальной Durability уже платный )


пропущено...

А зачем каждый клик писать надежно с транзакциями в приложение? Ну, в худшем случае, потеряем клики или показы за секунду - не так уж и страшно.
Более того, для кликов не нужны полноценные транзакции, достаточно просто гарантированной durability, а это гораздо дешевле.

пропущено...

Ну, по хорошему, он это делает плохо и, все равно, внутри таки есть веб-приложение )
Но так делать не стоит, плохая это идея.

Потерять клик это значит терять по ~10р за каждую потерю... так за день можно "натерять" несколько тысяч)))

Почему он это плохо делает? пока вообще ничего плохого не замечал, работая с 8 000 000 обращений в сутки, может я чего-то не понял?
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879635
DPH3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZalmПотерять клик это значит терять по ~10р за каждую потерю... так за день можно "натерять" несколько тысяч)))

Потери при записи на диск происходят или при падении сервера или при отказе железа, т.е. далеко не каждую неделю - и только в этих сценариях будет разница между транзакциями в реляционке и простыми снэпшотами или логом сообщений в какой-нибудь NoSQL
А если железо умирает по нескольку раз в день - то стоит менять железо.
Если у тебя тысяча записей в секунду (а на меньшем думать про NoSQL не стоит, там любая бесплатная реляционка выдержит) по 10 рублей за каждую,
то можно нормальное железо купить, вполне.

Почему он это плохо делает? пока вообще ничего плохого не замечал, работая с 8 000 000 обращений в сутки, может я чего-то не понял?
Ну, когда нормальная нагрузка будет - тогда и увидешь плохое.
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879639
Зимаргл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"Привет всем!"

Дальше можно ТС не читать. Нет постановки задачи, равно как и нет понимания, что требуется для ее решения.

Видна только мантра "транзакционность", зачем, кому, хз
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879770
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зимаргл"Привет всем!"

Дальше можно ТС не читать. Нет постановки задачи, равно как и нет понимания, что требуется для ее решения.

Видна только мантра "транзакционность", зачем, кому, хз

Так и нет задачи никакой, хотел понять что из себя представляет NoSQL
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879779
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZalmЗимаргл"Привет всем!"

Дальше можно ТС не читать. Нет постановки задачи, равно как и нет понимания, что требуется для ее решения.

Видна только мантра "транзакционность", зачем, кому, хз

Так и нет задачи никакой, хотел понять что из себя представляет NoSQL NoSQL базы данных: понимаем суть
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879858
Zalm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAZalmпропущено...


Так и нет задачи никакой, хотел понять что из себя представляет NoSQL NoSQL базы данных: понимаем суть

Это читал, спасибо)
...
Рейтинг: 0 / 0
NoSQL объясните)
    #38879895
gandjustas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZalmПривет всем!)
Спустя нескольких дней чтения о том что же такое NoSQL базы, какие есть и какие преимущества дают, остается ряд вопросов на которые пока нет ответа.

1) Нет транзакций. Как происходит выполнение операцией над балансом например либо коллективные операции над одними и теми же данными?
2) Нет транзакций = не ясно как работает многоверсионность. Что будет видеть второй пользователь, если первый еще не завершил изменения?
3) Например в Oracle есть pl/SQL в нем можно легко заложить всю бизнес-логику внутри самого сервера, и все операции выполнять там, как это происходит в noSQL? той же касандре или монго. Есть ли там что-то подобное?
4) Снова же, если нет транзакций, нет и автономных транзакций значит, как выполнять безоткатный аудит?
5) Можно ли вообще какие либо вычисления делать внутри сервера, либо это все нужно делать на клиенте?
6) Есть ли триггеры и как работают?
7) Есть ли джобы?
8) поддерживают ли индексы возможность индексирования по возрастанию\убыванию?

Ты видимо про монгу читал, хотя монга и самая распространенная NoSQL база, но при этом сама слабая.
1) В большинстве NoSQL транзакции есть. В монге транзакционный только доступ к одному документу, можно саму транзакцию хранить как документ и реализовать локи поверх этого механизма. Тормозит ацки, как дедлоки разруливать - неясно, автоматического отката нет, не обеспечивает транзакционность при шардинге.
2) Тут все просто. доcтуп к отдельным документам\записям - транзакционный. Множественные операции - нет. Похоже на read commited snapshot в SQL Server.
3) В монге внтури базы выполняется JS. В касандре такого нет, только на клиенте.
4) Путем материализации самих транзакций в базе, но большинство апологетов монги хватит удар от фразы "безоткатный аудит".
5) Зависит от движка, в монге можно, в Cache тоже, а в касандре или redis - нет.
6) Обычно нет
7) Обычно нет
8) Обычно да
...
Рейтинг: 0 / 0
25 сообщений из 64, страница 1 из 3
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / NoSQL объясните)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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