@dba_ru

Страница 478 из 718
Google
Ilia
12.04.2018
09:32:30
народ как можно сделать, чтобы sql скрипт прошелся по всем файлам и создал таблицы по названию файлов
Никак. SQL не может ходить по файлам. Как минимум нужна клиентская программа какая-то (плюс к ней SQL)

Д
12.04.2018
09:33:19
а как sql узнает как назвать таблицу?

Rushan
12.04.2018
09:33:29
Тут вопрос в таймауте. Я просто боюсь соединение по таймауту может сдохнуть.

Ilia
12.04.2018
09:33:32
нужно собирать статистику по пользователям. в статистике можно выбирать за какой период нужна инфа. допустим, сколько пользователей зарегались с 1 января по 31 марта. раньше уже с таким сталкивался. решал так: каждую минуту (для актуальности) писал в таблицу статистики все счетчики count_users, count_users_age (в другом поле указывал возраст). ну и так далее. а в 00:00 удалял все счетчики за прошлый день, кроме 23:59. итого, за каждый прошедший день у меня была инфа. и все норм работало. теперь проблема в том, что текущая статистика имеет много фильтров. можно выбрать период, дату регистрации, возраст и еще 10+ полей. все можно между собой комбинировать. если я буду использовать старый способ, то мне придется записывать счетчики для каждой комбинации фильтров. это фейл. вариант со сбором статистики сразу по пользователям, а не по отдельной таблице статистики, не подойдет, т.к. если я захочу посмотреть инфу за прошедшее время, у некоторых юзеров могут уже поменяться данные, некоторые удалятся и т.п.
вариант со сбором статистики сразу по пользователям, а не по отдельной таблице статистики, не подойдет, т.к. если я захочу посмотреть инфу за прошедшее время, у некоторых юзеров могут уже поменяться данные, некоторые удалятся и т.п. - ну, храни историю изменений....

Rushan
12.04.2018
09:33:42
Но делать 2000 апдейтов это жесть

Samat
12.04.2018
09:34:14
Тебе надо создать базу данных регистраций. И писать потом на неё запросы. Всё.
у них есть определенные показатели. например, уровень. он меняется постоянно. и в статистике необходимо смотреть сколько с D.M.Y по D2.M2.Y2 было юзеров с уровнем 5, опытом >2500, имеющим то отношение, не имеющим то отношение, принадлежащим такой то роли и т.п.

Rushan
12.04.2018
09:34:27
лорагифм это не так уж и плохо

Ilia
12.04.2018
09:35:05
Тут вопрос в таймауте. Я просто боюсь соединение по таймауту может сдохнуть.
Ты хочешь спросить, сколько будет выполняться запрос типа update XXX set ... where field in ( 1,2 3 ,4 ... K) ?

Это соотв. от O(K log N) до O( K * N )
Что как бэ намекает, что выполнять запросы отдельно бессмысленно.

Rushan
12.04.2018
09:36:21
Ты хочешь спросить, сколько будет выполняться запрос типа update XXX set ... where field in ( 1,2 3 ,4 ... K) ?
понятно, что это зависит от колва записей. Тут скорее вопрос, оптимизирует ли БДшки (в моём случае MySQL) такие кейсы, и насколько хорошо

Ilia
12.04.2018
09:36:33
Да. Хорошо.

Но каждый раз надо проверять, естественно, EXPLAIN

Google
Anton
12.04.2018
10:30:26
как в касандре получить нулевой элемент листа? в доках только про инсерт и апдейт, по анлогии через индексы в духе select column_name[0] from... не работает

Anton
12.04.2018
17:26:56
Гуру БД. Какие последствия могут быть от очистки transaction log файла в SQL Sever, какая информация теряется при очистке и чем она может быть полезна?

lost
12.04.2018
17:53:53
рискну предположить, что она будет полезна при фейловере, чтобы докатить те транзакции, которые не доехали до диска, но оказались в редо

Al
12.04.2018
18:45:25
Можно базу откатить

Stanislav
12.04.2018
20:36:41
Поля User: chat_id, user_id, is_member Есть один человек в chat_id = 1, и куча людей в chat_id = 2. У этого человека в chat_id = 1 поле is_member = False При запросе: User.select().where(User.chat_id == chat_id and User.is_member == False).count() Выдает 1 При запросе: User.select().where(User.chat_id == chat_id and User.is_member == True).count() Выдает большое число всех пользователей минус один. То-есть если в базе 446 записей, то выдает число 445. Втф, что я делаю не правильно?

При этом SELECT count(*) FROM user WHERE chat_id = -1001292734436 AND is_member = 1 выдает 0

Лол, peewee делает запрос SELECT "t1"."id", "t1"."user_id", "t1"."chat_id", "t1"."is_member" FROM "user" AS "t1" WHERE "t1"."is_member"

Блядь я аутист

Кароче проблемы у меня были с условиями, я затупил. Вместо and надо было просто поставить запятую

Al
12.04.2018
20:53:29
Пхписты это как жабаскриптеры только старые. :)

Andrey
12.04.2018
20:54:25
Ilia
12.04.2018
20:54:40
Гуру БД. Какие последствия могут быть от очистки transaction log файла в SQL Sever, какая информация теряется при очистке и чем она может быть полезна?
Зачем спрашиваешь? Просто объяснят долго, а если частный случай, то может можно будет объяснить быстро

Al
12.04.2018
20:55:05
с перловиками то не путай)
Перловики те вообще еще Ленина помнят.. :)

Я тут недавно видел одного. Он на фокспро все еще фигачит. О.о

Andrey
12.04.2018
21:01:36
Рассказал ему что она уже мертва?)

Al
12.04.2018
21:21:38
Он походу прошаренный некромант

Д
13.04.2018
05:28:32
Люди добрые подскажите, можно ли в базу данных с одной структурой. Сделать импорт csv с другой структурой

и в тех местах где колонки другие поставить 0

допустим есть база данных BIN, Name_ru, CEO, date

а csv файл надо залить со структурой BIN, Name_ru, Name_kk, date, CEO

Google
Anton
13.04.2018
05:37:11
А не проще csv обработать перед заливкой?

Maxim
13.04.2018
05:39:52
Насколько я знаю структура бд должна совпадать со структурой csv файла

Anton
13.04.2018
05:51:32
Зачем спрашиваешь? Просто объяснят долго, а если частный случай, то может можно будет объяснить быстро
Спрашивал в первую очередь для саморазвития. Ну и есть пара серваков ещё где лог в несколько раз превышает размер базы и в обозримом будущем может выжрать все место диске, думал на что может повлиять очистка такого лога в дальнейшем. Под очисткой имею ввиду перевод на Recovery Mode - Simple, шринк логического файла с логами и обратно выставление Recovery Mose на Full

Al
13.04.2018
05:53:31
там 400000 строк
И что мешает написать побыстрому софтинку которая переделает тебе csv как нужно?

Stanislav
13.04.2018
05:54:03
Я даже скрипты готовые видел

Al
13.04.2018
05:54:26
Всего то 400к строк

Д
13.04.2018
05:54:39
Есть ссылки?

?

Stanislav
13.04.2018
05:55:26
Ну ты сказал что структура у тебя отличается, так что тут только кастомный скрипт написать

Д
13.04.2018
05:57:27
а можно выбирать в load locale in file только некоторые колонки из csv файла?

тоесть insert в таблицу

кастомную

Al
13.04.2018
06:01:40
кастомную
https://www.google.ca/search?q=remove+column+from+csv

Anton
13.04.2018
06:07:25
Он периодически обрезается.
Условия его обрезки как то настаивать можно? В конфиге я видел только размер максимальный и прирост файла, как правило при его заполнении просто вылетала ошибка что лог заполнен и никакого обрезания не происходило

Mikhail
13.04.2018
06:46:46
ETL
Некоторые бд имеют нативные тулзы для импорта csv с возможностью маппинга. Смотря что и куда месье пихать пытается.

Vladislav
13.04.2018
06:48:12
Уже предвкушаю вопрос, почему у меня данные не в тех колонках

Al
13.04.2018
07:22:00
Кстати у mouser хорошо сделан импорт csv. Открывается такой опросник и он пишет какие колонки ему нужны и какие он нашел в файле. Указываешь ему соотвествие и он все это дело всасывает.

Google
Vladislav
13.04.2018
07:57:52
все это всасывается, пока csv корректный

но такое бывает только пока одни циферки льешь

Mikhail
13.04.2018
07:58:59
но такое бывает только пока одни циферки льешь
либо если сначала экспортишь откуда-то и знаешь что там вообще может быть

Vladislav
13.04.2018
08:01:05
любой варчар с точкой запятой или запятой или даже с табом все испортит

знание никак не спасет, нужна проверка, очистка и т.д.

Ilia
13.04.2018
10:53:49
Условия его обрезки как то настаивать можно? В конфиге я видел только размер максимальный и прирост файла, как правило при его заполнении просто вылетала ошибка что лог заполнен и никакого обрезания не происходило
Ну вот как раз режим логирования за это отвечает плюс есть такой параметр recovery interval, он задаёт примерное время восстановления БД после падения сервера, на его основе рассчитывается частота выполнения checkpoint.

ко?TEXHIK
13.04.2018
11:17:10
Товарищи, что может быть причиной MultiXactId 14077623 прекратил существование: видимо, произошло наложение И как это сообщение должно выглядеть в оригинале, ато у даунов-заказчиков русский пг, блеат

lost
13.04.2018
11:19:51
видимо базар за wraparound и vacuum

если это то конечно...

ну да... в пг же каунтер транзакций конечный, видимо давно не делали vacuum таблиц, и он переполнился...

Д
13.04.2018
14:41:31
ВОПРОСИК: нужно создать колонку update_date и вписать там определенную дату. Но это должно быть автоматизировано, тоесть скрипт должен брать дату из названия папки (папка наз. "19.06.17"

и так каждую неделю

как это можно сделать?

и дату не сегодняшнюю надо писать а пройтись по прошлогодним и залить в ДБ

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

Ilia
13.04.2018
19:35:13
Тут про базы данных... Никаких папок нет...

Google
Ilia
13.04.2018
19:47:03
Почему бы и нет?

Но я так понял, именно этого автор и не понимает...

Al
13.04.2018
19:51:12
Почему бы и нет?
Пятница. Вечер. Семья. Друзья?

aster
13.04.2018
20:17:28
Пятница. Вечер. Семья. Друзья?
да, шумно отмечаем блокировку телеграма в колонии

Алексей
13.04.2018
20:29:26
Да насчет блокировки - это еще бабушка надвое сказала. Подождем понедельника - вдруг кому по шапке прилетит за излишнюю инициативу.

Al
13.04.2018
20:44:30
да, шумно отмечаем блокировку телеграма в колонии
Вы там это. Больше трех не собирайтесь на всякий случай. А то и в реале забанят. Гы гы

За митинг без санкции.

Vitalii
14.04.2018
10:53:20
Mysql, innodb Привет, если я явно создаю такой же BTREE индекс на foreign column уже после создания таблицы. То он именно создаться новый и заменится? или грубо говоря просто переменуется. Меня беспокоит насколько дорогая операция получится

Anton
14.04.2018
11:03:16
Привет. А можно вопрос, зачем?))))

Vitalii
14.04.2018
11:08:27
Один продукт работает и c mysql и c postgres. Причем подавляющее большинство использует именно mysql. Я же использую постгрес, и обнаружил что не хватает индексов там, где mysql их создает автоматически. Хочу им фикс прислать, вот думаю, нужно ли извращаться и проверять, что если база mysql, то индекс не создавать.

Anton
14.04.2018
11:09:31
А можно назвать индекс по названию ФК и мускуль просто отлуп даст))))

Страница 478 из 718