|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
|
Объединение баз больше 2 Гб05.10.2016, 16:46. Показов 11223. Ответов 35
Метки нет (Все метки)
Аналогичные темы на форуме прочла, но решения проблемы с объемом баз не нашла.
Имеем: 6 таблиц csv по 1.9 ГБ каждая. Структура таблиц одинаковая Access их импортировать отказывается - ругается на общий объем базы больше 2 Гб (по одной таблице на каждую базу тоже), поэтому в Access они связаны. Нужно: все 6 таблиц объединить в одном файле. Что пробовала: Создавать новую связанную таблицу - запросом добавлять в нее строки из таблиц с данными. 1 раз прокатило, создалась таблица на 4Гб (таблицу, в которую добавляла строки, создала копированием одного из csv файлов, т.е. 2 таблицы объединить получилось). Дальше ругается - говорит, либо база больше 2ГБ, либо у тебя на диске нет места. На диске террабайт. Хелп плз: может ли Access в принципе оперировать с таблицами больше 2 Гб? Объединять, добавлять строки, брать из них данные. С программированием не дружу, запросы sql минимально редактирую в Access, но все остальные sql-программы мне не дались. На курсы записалась, но решать задачу нужно сейчас ((
0
|
|
| 05.10.2016, 16:46 | |
|
Ответы с готовыми решениями:
35
Объединение 2-х баз Объединение двух баз Запрос на объединение баз |
|
Модератор
|
|
| 05.10.2016, 17:05 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
|
| 05.10.2016, 17:13 [ТС] | |
|
вытаскивать из него данные по критериям, пересекать его с другими базами (т.е., например, найти все строки, которые есть в "монстре" и в базе "клиенты", составить сводную таблицу с данными из монстра и с данными о клиентах.
В общем я с этими базами бьюсь уже давно, и каждый процесс (inner join, например) повторяю по 6 раз - вытаскивая данные из каждой таблицы. Поэтому есть желание объединить их в одну. Добавлено через 2 минуты UPD: попыталась файлы объединить через командную строку через copy /b *.csv all.csv . Cmd утверждает, что все объединила, файл на 10 гигов лежит, но acces с ним связывать базу отказывается - говорит bad filename or number.
0
|
|
|
9131 / 6143 / 593
Регистрация: 27.03.2013
Сообщений: 20,012
|
|
| 05.10.2016, 18:12 | |
|
Скорее всего БД не нормализована и вместо кодов - текст, плюс наверное и картинки, вот и весят так много, а так бы раз 10-20 наверное все ужалось бы и еще столько можно было бы впихнуть в одну БД.
0
|
|
|
13181 / 5879 / 1506
Регистрация: 05.10.2016
Сообщений: 16,506
|
|
| 05.10.2016, 19:19 | |
|
У MS Access ограничение на размер БД = 2GB (к сожалению)
см: Спецификации Access 2010 На практике он начинает "спотыкаться" уже на размерах в районе 1,8GB. Как вариант: - разбить данные по определённому признаку и хранить в разных файлах динамически между ними переключаясь. - использовать иную БД (MS SQL Express, MySQL ... и пр.) - попробовать нормализовать данные - возможно не так всё страшно.
0
|
|
|
Модератор
|
||
| 05.10.2016, 19:35 | ||
|
у меня база была разделена по году если мне был нужен 2005 год --открывала базу бд2005 --это был основной режим работы если требовалось несколько лет(например итоги) --применяла временную таблицу для накопления итогов и VBA
0
|
||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
||
| 06.10.2016, 05:16 | ||
|
0
|
||
|
13181 / 5879 / 1506
Регистрация: 05.10.2016
Сообщений: 16,506
|
|
| 06.10.2016, 05:40 | |
|
Так... я и имел ввиду "для хранения больших данных использовать иную БД подключая ея к MSA".
И ысшо (я забыл выше написать), при обработке больших данных лучше выставлять в запросах на изменение свойство: Use Transaction = No (Использовать Транзакцию = Нет) - будет побыстрее и размер расти не так будет, но без отката выполнения.
0
|
|
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
|||
| 06.10.2016, 13:35 [ТС] | |||
Добавлено через 2 минуты
0
|
|||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 06.10.2016, 13:36 | |
|
текст или мемо?
0
|
|
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
||
| 06.10.2016, 13:40 [ТС] | ||
Да, циклические запросы писать я еще не научилась. Это решило бы проблему.
0
|
||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 06.10.2016, 13:43 | |
|
в любом случае всё нужно переводить на MS SQL Server
0
|
|
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
||
| 06.10.2016, 13:45 [ТС] | ||
у исходных таблиц (которые в csv) какие-то приколы с кодировками - при импорте Access их воспринимает то как вьетнамскую, то как турецкую кодировку. Возможно, из-за этого, когда я их все в одну таблицу слила, он захлебнулся при попытке импорта. Добавлено через 2 минуты С MS SQL Server у меня не сложилось. Поставила его, потупила на него несколько дней, научилась импортировать в него таблицы, но на этапе составления запросов поняла, что мне это не дано. С Access бьюсь только из-за конструктора запросов. На данном уровне знаний о языках запросов это предел моего понимания.
0
|
||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 06.10.2016, 14:56 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
|
| 06.10.2016, 15:09 [ТС] | |
|
спасиб, попробую. Для меня пока даже свою базу MS SQL найти - уже задача на минут 30 раздумий. Я обычно софт легко осваиваю, cms, парсеры, верстаю на html, в php могу хотя бы понять код.... Но этот уже где-то за пределами зоны ближайшего развития.
0
|
|
|
9131 / 6143 / 593
Регистрация: 27.03.2013
Сообщений: 20,012
|
|
| 06.10.2016, 16:13 | |
|
compin, Вы бы хоть урезаный примерчик с 5-10 записями своей огромной таблички выложили, дабы иметь представление о чем уже больше суток все рассуждают, но пришли к выводу, что послать вас в туда, где вы почти не ориентируетесь.
0
|
|
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
|
| 06.10.2016, 17:27 [ТС] | |
|
0
|
|
|
9131 / 6143 / 593
Регистрация: 27.03.2013
Сообщений: 20,012
|
||
| 06.10.2016, 17:36 | ||
|
Похоже на самом деле тут нужно что то более мощное чем - Access.
0
|
||
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 27
|
||
| 06.10.2016, 17:46 [ТС] | ||
|
Основные задачи, которые я с этими базами решаю:
- выборки из всех 6 частей базы по критериям. Например, по вхождению ключевого слова в поле "название" (like *...*) - фильтрация по условиям: число в столбце Подписчики больше N, отобрать все "ID пользователя", которым соответствует больше X значений в столбце "url группы" (данные в каждом столбце не уникальны: одному ID пользователя может соответствовать несколько десятков строк в разных кусочках базы, с разными ID группы и остальными данными. Рекордсмены там - по 1200 строк на одного ID пользователя.) - отобрать все строки из всех 6 кусочков базы, в которых значение "ID пользователя" соответствует (inner join) значению в десятках других моих баз. Т.е., конечно, мне было бы проще, если бы это все было в одной связанной базе, с которой я уже дальше смогу работать. Добавлено через 2 минуты В принципе, я могу 2-3 столбца из всех баз удалить, если это облегчит мою проблему. Там есть столбцы, которые частично дублируют друг друга и для моего анализа решающего значения не имеют. В конце концов их всегда можно будет подтянуть из исходников баз, если они мне потребуются. Столбцы сильно повлияют на вес базы? или больше влияют строки? Добавлено через 6 минут ЗЫ. Статус и Название группы - там не одинаковые значения. Они могут казаться одинаковыми, но всегда хоть чем-то да отличаются. Полностью идентичных значений там будет не больше 5-10 копий на 1 значение справочника, а абсолютно уникальных будут миллионы.
0
|
||
|
9131 / 6143 / 593
Регистрация: 27.03.2013
Сообщений: 20,012
|
||
| 06.10.2016, 18:05 | ||
|
- Реклама и - Реклама. (с точкой) обозначают одно и тоже, но написаны по идее по разному, типа это уже не одно, а два разных значения. Если нормализовать БД, то этого не будет, т. к. сможете в поле со списком выбрать только то или иное значение (Какое введете в справочник - Статусы) В основную таблицу будут вводиться только коды (Чиселки), соответствующие определенному тексту. Как вы думаете что по байтам больше весит Число из справочника в 2-3 цыферки или несколько слов (имеется в виду многократное повторение в миллионе записей) А есть еще и второе поле - название группы Где названия судя по всему так же повторяются. Что меньше в байтах весит -Число или-Текст? На малом количестве записей это не сильно заметно, но уже после 500, разница существенная (На сколько я знаю), а у вас миллионы. Если акцесс, по любому наверное стоит попробовать нормализовать, тем более поля индексировываются, что в десятки, а то и сотни раз уменьшает скорость обработки. Я конечно любитель и мог бы попробовать помочь. но я тягомотный тугодум и у меня это займет крайне много времени. Возможно кто то из профессионалов быстрее поможет.
0
|
||
| 06.10.2016, 18:05 | |
|
Помогаю со студенческими работами здесь
20
Объединение баз данных в Access Объединение двух баз со связанными таблицами Объединение баз Какие платформы баз данных больше подходят под быстрый C++? Объединение баз данных , разделение баз. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|