0. comol 4321 05.06.18 11:45 Сейчас в теме

Если таблица совсем большая. Использование столбцовой СУБД (Yandex ClickHouse) для расширения возможностей 1С

В последнее время появилась хорошая тенденция использовать для решений 1С обширный стек смежных технологий. Это, несомненно, радует. В связи с этим я хочу рассказать про бесплатное OpenSource-решение от компании Яндекс – столбцовую базу данных ClickHouse, и то, как ее можно использовать совместно с 1С.
Для небольших 1С-систем ClickHouse, скорее всего, не пригодится. Но если мы говорим о HighLoad, тогда эта технология может оказаться очень полезной.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. Идальго 131 07.06.18 09:26 Сейчас в теме
Хм, добавлю, что CH - уже давненько используется в качестве аналитического инструмента во многих крупных конторах. Вроде CH подходит для сравнительно малого числа, но очень больших запросов (т.е. не нужно частить с мелкими запросиками). Да, эта штука лучше всего подходит для OLAP и когда данные хорошо структурированы.
cleaner_it; comol; +2 Ответить
2. vitkhv 07.06.18 09:44 Сейчас в теме
Сжатие, вернее все же будет компрессия, таблиц с 2016 сервера доступно с редакции Standart MSSQL Server.
3. pbabincev 115 07.06.18 12:04 Сейчас в теме
Автор, спасибо, статья очень крутая!
4. Dzenn 395 07.06.18 15:05 Сейчас в теме
Это революция. Охрененно.
5. PerlAmutor 101 07.06.18 15:16 Сейчас в теме
(0)
Сам парсинг журнала регистрации 1С у нас производится в стороннем приложении


Как производится поиск данных по ссылкам? Часто нужно получить события именно в разрезе конкретного объекта БД. 1С с этим не справляется от слова совсем, поэтому ищу альтернативные возможности отбора по текстовому журналу.
6. comol 4321 08.06.18 00:07 Сейчас в теме
(5) События в разрезе конкретного объекта - это всё-таки Elastic. Clickhouse - это когда "активность пользователя" "количество транзакций", "количество ошибок"... Ну и ЖР это больше как пример
7. Synoecium 693 08.06.18 06:26 Сейчас в теме
спасибо, ваша статья подтолкнуло начать разработку с использованием CH. Добавлю, что у CH есть большое и доброжелательное сообщество, которое помогало со всеми возникшими вопросами, что является весомым аргументом при выборе СУБД среди альтернатив.
10. Synoecium 693 08.06.18 09:09 Сейчас в теме
(7) точнее не статья, а доклад на Infostart Event
9. Rustig 1478 08.06.18 08:45 Сейчас в теме
(0) спасибо за доклад, за "знания - в массы!"
полезно, интересно!
хотелось бы узнать для чего или для кого требуется информация о динамике остатков за 5 лет по всем складам по всем категориям номенклатуры?
11. 1c-intelligence 10082 09.06.18 08:00 Сейчас в теме
Слушал доклад на конференции - интересно, полезно, со вкусом оформлено. Статья не передает впечатления полностью, но тут уж ничего не поделаешь.
12. rwf96 09.06.18 08:57 Сейчас в теме
А как данные из 1С попадают в CH для анализа?
13. rozer 268 09.06.18 11:47 Сейчас в теме
(12) картинку после "Чтение и запись" смотрели?
14. user828732 13.06.18 09:36 Сейчас в теме
Все таки не понял, за счет чего при переходе на колоночную СУБД объем данных уменьшился в 20 раз
15. LordKim 14.06.18 11:35 Сейчас в теме
(14)
Насколько я понял, формат хранения это не плоская таблица, а дерево
При простом развороте в сторону колонок чуда бы не произошло...

Итого мы получаем 22 миллиарда записей.

При развороте в колонке итого мы получаем 22 миллиарда колонок, давай, покажи мне запрос в MS SQL который это быстро обработает...) (это риторика, no offence)

Скорее всего "ENGINE=MergeTree" при помещении данных сразу их агрегирует, типа если в строках было 10 значений Иванов, то в столбцовой будет 1 колонка Иванов и у нее 10 подчиненных колонок с ИД строки, наверное как-то так

Для оперучета наф не надо, а вот для консолидированной отчетности должно быть очень годно
16. nicxxx 237 17.06.18 03:33 Сейчас в теме
Не совсем понятно насчет BULK INSERT. В документации такой команды нет, поэтому делаю вывод, что это описание процесса загрузки данных из CSV-файла, например. И работать с этими файлами можно только из командной строки, об этом говорится здесь: https://clickhouse.yandex/docs/ru/interfaces/cli/
Но мы же все понимаем, что передача файла из 1С на linux-машину и запуск команды (однозначно через ssh) - это не самая простая задача. И вообще может быть нереализуемой, например, на сервер с 1С нельзя устанавливать ничего, в том числе ssh-клиент.
Какие еще есть способы импортнуть в кликхаус CSV?
17. nicxxx 237 20.06.18 13:15 Сейчас в теме
Ок, интересно, полезно, но хотелось бы практических примеров. В частности, хочется понять, как закинуть файл на сервер с кликхаусом через http, если он будет весить 100-200 и более мегабайт.
18. trantor77 21.06.18 12:33 Сейчас в теме
Добрый день.

А можете выложить обработки по выгрузке информации из 1С в ClickHouse и обработку по обращению из 1С в ClickHouse для вывода в отчет?
Интересует в первую очередь с точки зрения, чтобы не изобретать велосипед по взаимодействию.

--Брали журнал регистрации из 1С;Загружали его в ClickHouse;
--И потом из 1С обращались уже к ClickHouse, и выводили его данные в отчеты.
19. Plastignac 21.06.18 14:43 Сейчас в теме
"Третий параметр очень специфичен, нигде в документации по ClickHouse я не нашел, что он значит, и его лучше не менять."
Знакомое число. Скорее всего - это размер блока данных для таблицы, как в БД Oracle, там данные читаются и записываются такими блоками.
20. yaxinr 52 15.08.18 18:59 Сейчас в теме
Выгрузил из таблицы ТоварыНаСкладах размером 2гб, в clickhouse, размер сократился до 100мб, т.е. в 20 раз сжалось. Также написал синхронизацию таблиц.
21. nvv1970 16.08.18 00:17 Сейчас в теме
(20) ну если бы просто компрессию включил (page), то раз в 5-10 тоже получил бы... Без синхронизации, в своей же базе... Но это конечно не колоночное хранение (
22. yaxinr 52 16.08.18 07:35 Сейчас в теме
(21) Я ошибся, в clickhouse данные 1с весят 40 мб, т.е. в 50 раз сжалось.
я просто туда еще других складских систем данные загрузил и получилось 100 мб.
23. yaxinr 52 16.08.18 07:41 Сейчас в теме
Было бы круто если бы clickhouse хранил все в памяти, тогда колоночное хранение и скорость оперативки дали бы наверное супербыструю систему. Есть ли такие opensource решения?
24. nvv1970 16.08.18 23:04 Сейчас в теме
Статья впечатлила.
А что же с колоночным хранением в других БД?
Всем близкие MS или PG... Что с ними не так? Неужто вообще никакое решение по CCI ?

Уж больно волшебные цифры на картинках у яндекса (((
25. Casey1984 3 14.10.18 21:32 Сейчас в теме
Плюсану и добавлю, что на текущий момент ClickHouse поддерживает пакетный UPDATE/DELETE.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Санкт-Петербург
зарплата до 150 000 руб.
Полный день

Программист 1С
Екатеринбург
зарплата от 80 000 руб. до 130 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Ведущий программист 1С
Москва
зарплата от 150 000 руб.
Полный день

Ведущий программист 1С (УТ 11)
Москва
зарплата до 200 000 руб.
Полный день