Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Хранение большого объема данных. ГДЕ?

Хранение большого объема данных. ГДЕ?
Я
   mzelensky
 
24.12.12 - 09:19
Доброго времени суток!
Сейчас встал забавный вопрос - имеется большой объем данных, который необходимо перенести в 1С-кую базу. Информация состоит из 30 миллионов записей (строк). Каждая запись содержит 100 полей (колонок).

Внимание вопрос - куда и как все это записать?!

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

Но на сколько я понимаю 1С-ка не расчитана на такие объемы однйо таблицы...
 
 
   Нуф-Нуф
 
1 - 24.12.12 - 09:20
Рассчитана
   YHVVH
 
2 - 24.12.12 - 09:20
регистр сведений
   YHVVH
 
3 - 24.12.12 - 09:22
ну вообще может лучше просто в SQL табличке, все зависит от задачи
   Aleksey
 
4 - 24.12.12 - 09:22
мы про файловую или скуль?
   tdm
 
5 - 24.12.12 - 09:22
1c должна потянуть,
(но накрайняк всегда можно создать скульную базу,если это просто таблица - и из базы 1с запросами получать данные)
   tdm
 
6 - 24.12.12 - 09:23
(3) +1)
   mzelensky
 
7 - 24.12.12 - 09:23
(2) в регистр не хотелось по причине того, что в справочнике это более наглядно бы выглядело:

" В табличной части будут храниться реквизиты, их значения и доп. информация по этой записи."
   mzelensky
 
8 - 24.12.12 - 09:23
(4) в идеале файловую. Если не потянет, то прейдется скульную
   Popkorm
 
9 - 24.12.12 - 09:24
(0) отдельнную базу на 1С+SQL,и туды конекшен по СОМ.........
   ДенисЧ
 
10 - 24.12.12 - 09:24
"на сколько я понимаю 1С-ка не расчитана на такие объемы однйо таблицы"

какой бред
 
 Рекламное место пустует
   mzelensky
 
11 - 24.12.12 - 09:24
(5) это усложняет процесс формирования отчетов в последующем :(
   ДенисЧ
 
12 - 24.12.12 - 09:24
но на файловой - не потянет
   ДенисЧ
 
13 - 24.12.12 - 09:25
(11) Внешние источники запретили?
   tdm
 
14 - 24.12.12 - 09:25
(11) не капли) тут главное структуру продумать
   mzelensky
 
15 - 24.12.12 - 09:25
(10) ну почему же бред. На этом же самом форуме были сообщения, что 1С-ка начинает тупить, если в одном справочнике хранить более 100 тысяч элементов. А тут 30 миллионов + он будет расширяться
   ДенисЧ
 
16 - 24.12.12 - 09:27
(15) на форуме может быть всё, что угодно...
   tdm
 
17 - 24.12.12 - 09:27
(15) от структуры данных зависит, еще на 8.1 справочник номенклатуры в одной из баз был под 400к элементов - всё ок было)
   pessok
 
18 - 24.12.12 - 09:29
(15) лол. наверное, почти у всех справочник Контрагенты содержит куда больше 1к элементов
   Sammo
 
19 - 24.12.12 - 09:29
(7) То как выглядит - настраиваемо.
Зависит от дальнейшего использования. Например - необходимость отбора по отдельному реквизиту.
В общем, имхо, посмотрите - где и как будет использоваться информация, какие нужны будут индексы, какие мозможно блокировки и отсюда выбирайте
   pessok
 
20 - 24.12.12 - 09:29
+(18) про номенклатуру молчу
   mzelensky
 
21 - 24.12.12 - 09:33
(19) я предполагал каждый параметр загнать в характеристику. Ну а ее значение будет значением характеристики.

В последующем можно будет строить отборы по всем возможным реквизитам и их значениям.
   Lexusss
 
22 - 24.12.12 - 09:42
Справочник - если нужны уникальные GUID для ссылки на запись таблицы. Регистр сведений - если есть очевидный уникальный набор небольшого количества реквизитов, чтобы поддерживать небольшой размер записи кластеризованного индекса.
В иных случаях - справочник.
Файловая база ограничена в 2 Гб на 1 таблицу. 30 млн записей по 100 колонок уже получается 3 млрд ячеек. Так что - только SQL.
Для хранения 1С такой объем потянет ВЛЕГКУЮ. Проблемы будут, если нужны будут составные индексы. Смысла выносить данные вне базы 1С - вообще никакого смысла
ПЫСЫ: Длину кода и длину наименования справочника выставить равные 0, без владельцев и иехрархии. Так останется единственный кластеризованный индекс по GUID.
   Lexusss
 
23 - 24.12.12 - 09:45
(17) Номенклатура более 100к элементов создает только одну проблему - документ изменения цен не записывается. В документе возможно не более 99 999 строк. А при наличии, скажем, 5 типов цен в нашей базе с порядка 700 000 номенклатурных записей, в перестановке цен получалось 3,5 млн строк. Приходится  переразбивать документы :(
   mzelensky
 
24 - 24.12.12 - 11:27
(22) спасибо за инфу!
   Sammo
 
25 - 24.12.12 - 11:31
(23) Один из вариантов - отказаться от хранения данных и делать псевдо табличную часть на регистре сведений
   acsent
 
26 - 24.12.12 - 11:33
реквизиты конечно лучше реквизитами делать а не в тч
   Гений 1С
 
27 - 24.12.12 - 11:34
я такого рода данные храню во внешних файлах. Разбил по папкам и - вуаля.
   vmv
 
28 - 24.12.12 - 11:36
(0) соблазн впихнуть все это в справочник может дорого стоить впоследствии - я бы не спешил. Все-таки справочник это ссылочный тип с проверкой целостности и тыры-пыры, а данные по описанию просто лог - сведения
   Гений 1С
 
29 - 24.12.12 - 11:36
и хоть миллиард записей. ибо объемные данные перегружают базу. бэкапы потом начинаются проблематичные и т.п.

сейчас у меня есть задача фрилансеру по интеграции 1с и файер берд. Как сделаю, поделюсь, можете юзать.
   acsent
 
30 - 24.12.12 - 11:37
(29) а че там интеграировать? FB понимает адо.
   Lexusss
 
31 - 24.12.12 - 11:41
(23) Переписывать код типовой УТ, зачем? Гораздо проще заполнялку переделать.
(27) Транзакции? Не, не слышал...
(28) Какой такой проверка целостности? СправочникОбъект.Удалить - и никакой целостности :D
Для хранения лога использование справочник - это конечно жесть. Никакая БД для этого не подходит, только текстовый файлик.
(29) Вроде внешние источники данных чудесно понимают FB.
   Гений 1С
 
32 - 24.12.12 - 11:46
(30) хз, счас уточню...
   mistеr
 
33 - 24.12.12 - 11:47
Отлично, 30+ и ни слова ни вопроса, что за данные и что с ними будут делать.
 
 
   mzelensky
 
34 - 24.12.12 - 11:47
(28) (31) это не лог. Это именно справочные данные.

В последующем еще и отчет должен работать с отборами и группировками.
   mzelensky
 
35 - 24.12.12 - 11:50
(26) 101 реквизит?!
   Deon
 
36 - 24.12.12 - 12:03
(35) И всё булево )
   Гений 1С
 
37 - 24.12.12 - 12:04
(34) вот, изучай.

http://infostart.ru/public/152847/
   Гений 1С
 
38 - 24.12.12 - 12:06
в файловой у тебя будет попа, если надумаешь.
один chkdbfl, а он запускается раз в две недели, будет висеть мертвым грузом.

К тому же есть ограничение на 4 Гб на одну таблицу.

У меня в PIM в базе 500 000 сообщений (отправтель + получатель + текст) и то я вешаюсь. При первом запуске 1с минут 10 раскочегаривается, осваивая в памяти базу на 5 Гб, только потом начинает запросы пускать нормально... Потому и думаю о фиреберде.
   badboychik
 
39 - 24.12.12 - 12:08
Можно хранить во внешней MongoDB и прописать алгоритмы записи/чтения
   Sorm
 
40 - 24.12.12 - 12:09
(0) Внешняя база на SQL, запросы по ADO.
   badboychik
 
41 - 24.12.12 - 12:09
Что за справочник такой, на 30 миллионов записей? Больше похоже на биллинг какой то
   Гений 1С
 
42 - 24.12.12 - 12:09
(40) ксати да, как вариант
   Гений 1С
 
43 - 24.12.12 - 12:10
(40) токо у чела нет SQL-сервера, раз он хочет юзать файловую
   Гений 1С
 
44 - 24.12.12 - 12:10
пусть ковыряет фаерберд, она портабельная
   H A D G E H O G s
 
45 - 24.12.12 - 12:10
Гений, как всегда, бред Питит.
(22) - все годно и все по теме.
   Sorm
 
46 - 24.12.12 - 12:11
(43) Странный человек. Ну пускай ФБ, пускай MySQL...разница в строке подключения.
   H A D G E H O G s
 
47 - 24.12.12 - 12:11
(43) Откуда инфа?
   H A D G E H O G s
 
48 - 24.12.12 - 12:12
Чо за данные храняться?
   badboychik
 
49 - 24.12.12 - 12:12
со скулем надо париться со структурой, таблицами и запросами, а с монгой - нет. Подчиненные объекты прямо с родительским получаются одним запросом
 
 Рекламное место пустует
   Sorm
 
50 - 24.12.12 - 12:12
(49) Одна таблица!:):)
   mzelensky
 
51 - 24.12.12 - 12:16
Я лучше Скуль разверну.
Это не проблема
   badboychik
 
52 - 24.12.12 - 12:17
>>> В идеале это должен быть справочник с табличной частью. Каждый элемент справочника будет представлять собой одну запись. В табличной части будут храниться реквизиты, их значения и доп. информация по этой записи.

Если есть табличная часть, то уже одна подчиненная таблица
   H A D G E H O G s
 
53 - 24.12.12 - 12:19
(51) Что за тип данных будет храниться?
   kauksi
 
54 - 24.12.12 - 12:28
(53) Ждите 1С: Социальная сеть
   rs_trade
 
55 - 24.12.12 - 12:30
(54) ВКонфигураторе!
   mzelensky
 
56 - 24.12.12 - 12:36
(53) Параметр (реквизит) - справочник или характеристика
Значение ппараметра - пока строка. Позже, возможно, будет составной тип (строка, справочник, перечисление).

Т.е. в принципе классическая схема - характеристика и ее значения.
   mzelensky
 
57 - 24.12.12 - 12:38
(54) могу еще испугать. 30 миллионов это информация ток за текущий год. А еще есть 2009,2010 и 2011 года :)

Итого, за 4 года получаем примерно 100 миллионов записей.
   i-rek
 
58 - 24.12.12 - 12:44
я за отдельностоящую базочку и ADO
совершенно не обязательно MSSQL, что под руку попадётся
MySQL
   badboychik
 
59 - 24.12.12 - 12:46
>>> примерно 100 миллионов записей.

Тем более нужна внешняя база.
   Гений 1С
 
60 - 24.12.12 - 13:02
(51) проблема в бабках, MS SQL денег стоит.
   badboychik
 
61 - 24.12.12 - 13:03
(60) на бесплатном можно до 10ГБ базу создавать
   Lexusss
 
62 - 24.12.12 - 15:21
(0) Ты справочник СЕКУНД в году заводишь что ли? Это 31 536 000 записей! Генерация 30 000 000 записей в год при режиме 7х24 - это практически 1 запись в секунду. Если не наблюдается равномерности заливки данных, а имеют место пиковые нагрузки (например, в 19:00 люди приехали домой и зашли В контакт), весьма вероятны проблемы с производительностью потока записи.
Опиши, что и с какой целью ты собираешься заливать в 1С.
ПЫСЫ: Концепцию динамической табчасти забудь, как страшный сон. Это непроворотливый монстр.
   mzelensky
 
63 - 24.12.12 - 16:08
(62) а как тогда предлагаешь писать реквизиты, если не в табчасть? Создавать все эти реквизиты ???
   marija532
 
64 - 24.12.12 - 16:12
(1) Ты бы лучше написал еще что из себя представляют эти данные. Может быть эту твою таблицу можно нормализовать
   marija532
 
65 - 24.12.12 - 16:13
В смысле (0)
   Lexusss
 
66 - 24.12.12 - 16:15
(63) Опиши предметную область и суть объектов, которые ты собираешься поместить в таблицу
   mzelensky
 
67 - 24.12.12 - 16:16
(64) там нечего нормализовать. Уже и так все структурированно и ужато до предела.
   Александр_Тверь
 
68 - 24.12.12 - 16:19
(66) да что не понятно.
фейсбук наняло программист 1С, для перехода на прогрессивную платформу.
   Lexusss
 
69 - 24.12.12 - 16:21
(68) 1 млрд лицензий 1С!!!!!!! Возьмите меня хотя бы полы мыть в компанию, которая будет делать фейсбук на 1С.
   shamashs
 
70 - 24.12.12 - 16:24
(69) Это будет 77, неограниченая
   Diversus
 
71 - 24.12.12 - 16:26
(0) Учти, что в табличной части не может быть больше 99999(!) строк! Это ограничение платформы, которое везде замалчивается.
   shamashs
 
72 - 24.12.12 - 16:29
по идее, можно если не заморачиватся сделать 1совские базы с 1м регистром, для хранения и простейшего синтаксиса, цеплятся к ним через com или прямыми запросами, но при этом всегда можно будет слить базы или забэкапить не загружая основную базу.

по сути реализация кладра и бик для 7.7 мне кажется оптимальной. Если конечно не надо insert делать, для инсерта делаем регламентное задание/сеанс/робота.
   mzelensky
 
73 - 24.12.12 - 16:33
(71) количество строк в ТЧ будет небольшое. 100-200 строчек.
   Diversus
 
74 - 24.12.12 - 16:35
(73) Тогда приступай смело, 1С справится :)
   Biker
 
75 - 24.12.12 - 16:35
(0) Решали подобную задачку для ценных бумаг , хранили все в регистре сведений
off: Чо за мот? Драга?
   DimG
 
76 - 24.12.12 - 16:36
(71) Чойта не может.
   Diversus
 
77 - 24.12.12 - 16:38
(76) А попробуй)))
   DimG
 
78 - 24.12.12 - 16:40
(77) Может нумеровать не может? В 7ке тоже было, но органичение на нумератор, а не на количество строк. А это какбэ разные вещи.
   Diversus
 
79 - 24.12.12 - 16:49
   Diversus
 
80 - 24.12.12 - 16:50
Вот, что получается при добавлении в табличную часть большого количества строк.
   ERWINS
 
81 - 24.12.12 - 16:50
хорошо бы 1с для этого сделала механизм
   NcSteel
 
82 - 24.12.12 - 17:03
(0) Внешние источники данных?
   NcSteel
 
83 - 24.12.12 - 17:05
(82) Еще вариант: можно на 1С накатать такую маленькую конфу и работать с ней через ком. И не парит основную.
   GANR
 
84 - 24.12.12 - 17:08
ИБ 1С файловая не работает если хотя-бы одна из её таблиц превысила 4 ГБ. Можно 1С в MS SQL Server и лучше пусть MS SQL поновее будет (от 2005 и выше).
   GANR
 
85 - 24.12.12 - 17:11
Хранить данные лучше в справочнике, так как при записи в регистр сведений проводится контроль уникальности в разрезе измерений и периода. К чему это приведет при 30 млн записей понятно?
   Struk
 
86 - 24.12.12 - 17:39
(0) Создай вьюху на скл


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует