Мерль
не скажу про болт =) не знаю его. Лучше поддержать переписывание sqlite на Go =)
+ Вроде что-то такое было, но в зачаточном состоянии
Мерль
https://github.com/cznic/ql/blob/master/README.md
engelbart
Т.е. если вот смотреть на какие нибудь редисы и монги , то им нужен сервер же, поставить настроить, то сё. А хочется как sqlite , файлик и вперед. Даже конкуретный доступ не парит, будет один процесс. Но вот нужно выбирать по внутренностям документов. Можете что нибудь посоветовать?
engelbart
Выше скинул - qldb
Я видел спасибо. Но оно опять relation, мне за годы надоело, хочу документное что то. Понимаю всю так сказать эфемерность различий, и можент вообще непонятного хочу, но вот хочется новизны. Какой то inprocess монги скорее, чем sqlite
Daniel
я бы хотел заметить, что это очень странное желание
Daniel
"я не хочу умное и гибкое, я хочу тупое и деревянное, но новое"
Daniel
в многонодовой системе это тупое и деревянное имеет смысл - эта тупость и деревянность позволяет строить кластерные базы
Daniel
но встраиваемое?..
Мерль
Я видел спасибо. Но оно опять relation, мне за годы надоело, хочу документное что то. Понимаю всю так сказать эфемерность различий, и можент вообще непонятного хочу, но вот хочется новизны. Какой то inprocess монги скорее, чем sqlite
Можно вот это попробовать https://github.com/tidwall/buntdb Но вообще, если цель не в том, чтобы писать продукт, а хочется поизвращаться, то почему бы самому не написать простенькую СУБД поверх болта? С индексацией и репликами?ъ
engelbart
Ну да, можно и так сформулировать. а я бы сформулировал например так - готов поступится рядом плюсов как то единовременный доступ, транзакции, если смог бы получить - отсутствие сервера бд, отсутствие схемы.
Daniel
отсутствие схемы - это проклятие же. иди тогда на перле пиши, че
engelbart
и я на перле пишу, чо мне
Мерль
Ещё вотъ, но я не пробовал и оно in-memory https://github.com/hashicorp/go-memdb
Daniel
и я на перле пишу, чо мне
да ниче :) просто у нас тут язык со строгой статической типизацией, и понятно - зачем он такой. в этом смысле db тоже хорошо иметь со строгой статической, да еще и с другими средствами контроля целостности, вроде foreign keys
engelbart
Помойму первое, подходит db.CreateIndex("age", "*", buntdb.IndexJSON("age")) , покрывает 90% потребностей моих
engelbart
да ниче :) просто у нас тут язык со строгой статической типизацией, и понятно - зачем он такой. в этом смысле db тоже хорошо иметь со строгой статической, да еще и с другими средствами контроля целостности, вроде foreign keys
Да это понятно, да. Ну вот у меня за годы просто уже надоело эти реляции строить, а сами данные довольно беспорядочные. И в конце концов хочется же хипстером побыть. похранить данные в json без схемы. Пусть даже жизнь меня накажет, зато будет опыт.
Daniel
хипстеры будут гореть в аду
Daniel
некоторые - прижизненно
Daniel
особенно те, которые schemaless базы тянут в прод
Daniel
не в смысле, что боженька накажет
Daniel
а в смысле, что это реально ад, поддерживать эту всю херню
engelbart
Тем лучше обжечься на мелком проекте где я один девелопер. Будут мысли и аргументы в последующем. Но вообще я верю что обойдется.
Daniel
а на мелком ты можешь и не обжечься
engelbart
Просто ну вот выбор или сразу постгрес, или сначала поразвлекаться для саморазвития, первое ну очень скучно и обыденно.
🏳️ Phil
в многонодовой системе это тупое и деревянное имеет смысл - эта тупость и деревянность позволяет строить кластерные базы
С другой стороны, много ли мы знаем хороших кластерных решений поверх этой тупости. Примерно одно
Daniel
два
Daniel
аэроспайк и кассандра
🏳️ Phil
Ok. Два
Daniel
говорят, последняя монга перестала терять данные
Daniel
и, говорят, пора смотреть на тарантул
Daniel
ага
🏳️ Phil
Daniel
да
Daniel
но есть еще вопрос вторичных индексов
Daniel
и тут они все сосут разнообразно, но все с заглотом
Мерль
Да светится, Google, имя твоё Да придёт царствие NewSQL и на земле и на небеси Смузи наш насущный дай нам днесь И подверни джинсы наши Как подворачиваем мы сыновьям нашим И прости нам eventual consistency Как мы прощаем остальным базам И не введи нас в искушение, но избави нас от Oracle Раминь
Мерль
извините
нет
engelbart
ну а монга то?
Daniel
что - монга?
Bald
монго это плохо
An7on
Без монги тяжело штанишки подворачивать
мы с монгой, но без подвёрнутых штанишек, что не так?
An7on
Вы это чем-то компенсируете
An7on
Смузи мб? Признавайтесь!
вэйп компенсирует подворот?
An7on
Определенно
но у нас вэйпят лишь двое
Daniel
а вот скажите - почему монга?
Daniel
почему именно такой выбор?
онаняшная
Daniel
онаняшная
если это все - я не верю про подвороты и вейпы. просто вы шифруетесь..
нам нужна была носкьюл база, вот и всё
Daniel
и что?
Daniel
кроме монги вы не знали ни одной?
и взяли монгу
предложи что лучше
Daniel
под какую задачу?
Мерль
а вот скажите - почему монга?
Она популярна ис большим комьюнити, проста в настройке Можно наговнякать, вообще не думая
Daniel
ну вот это подворотно-вейперская аргументация
🏳️ Phil
нам нужна была носкьюл база, вот и всё
что ттакое "ноускьюл база" и чем она лучше "скьюл базы"?
engelbart
ну там нет sql
🏳️ Phil
ну там нет sql
Так это плохо же
Мерль
в смысле, может где-то и существуют люди, которые составляют табличку плюсов и минусов, принимают взвешенное решение и т.д. Но в большинстве случаев, согласитесь, там где взяли монгу, можно было взять MySQL или постгрес
engelbart
Там где взяли sqlite можно было обойтись grep
engelbart
Ну я вот выше писал, что меня задолбало разнотипные документы в схему засовывать. по 10 джойнов на каджый запрос утомило.
под какую задачу?
изменяющаяся схема без мучений с миграциями
engelbart
Я к тому что какая аргументация бывает
Мерль
Так это плохо же
NO-SQL - not only sql Вообще правильнее было бы назвать нереляционные базы данных. РСУБД - данные организованы в таблички. НеРСУБД - данные организованы по-разному (начиная от kv, заканчивая всякими сложными конструкциями)