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 99 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 1476 08.06.18 08:45 Сейчас в теме
(0) спасибо за доклад, за "знания - в массы!"
полезно, интересно!
хотелось бы узнать для чего или для кого требуется информация о динамике остатков за 5 лет по всем складам по всем категориям номенклатуры?
11. 1c-intelligence 10075 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С и бухучета
Санкт-Петербург
По совместительству

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

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

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

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