Перейти к содержимому

arthur1981

Присоединился: 31 авг 2014
Оффлайн Последний вход: сен 25 2014 19:46
-----

Созданные мной темы

Mongodb, Mongoid как ускорить запись данных в Mongodb

23 сентября 2014 - 18:28

Добрый вечер всем! Мне нужно записать в Mongodb 2.000.000  рядов информации, по очереди, один за одним, перед записью програма проверяет или такой ряд уже существует в базе данных, если существует програма соединяет новый ряд с существующим тоесть делает update, если ряд не существует тогда програма создает этот ряд в базе данных (create). Но когда количество рядов в базе данных доходит до 300.000 этот процесс сильно замедляется и информация записывается в базу очень медленно. Кто небудь знает как ускорить этот процесс? Благодарю за помощь!


Как упорядочить array of hashes в порядке другого масива

16 сентября 2014 - 17:53

Добрый день! У меня есть два масива один с хашами a другой с ключами этих хашей, как сделать что бы масив с хашами стал в таком же порядке как масив с ключами?

header = ["header1", "header2", "header3", "header4", "header5"]
record = [{"header4" =>"value4"}, {"header3" =>"value3"}, {"header5"=>"value5"}, {"header1"=>"value1"}, {"header2"=>"value2"}]

мне нужно что бы масив record был в таком же порядке как масив header

record = [{"header1" =>"value1"}, {"header2" =>"value2"}, {"header3"=>"value3"}, {"header4"=>"value4"}, {"header5"=>"value5"}]

Благодарю за помощь!


Ruby on Rails generate CSV file form Mongoid data

15 сентября 2014 - 23:11

 Добрый день всем! Кто знает подскажите пожалуйста как правильно записать в csv фаил информацию с Mongoid.


Уменя модель Record в ней сохранены ряды данных мне нужно каждый ряд записать в CSV фаил с хидерами. Как это правильно сделать?
Вот мой код
Код Rails
1
2
3
4
5
6
7 @all_rows = Record.all
CSV.open(Rails.root.join('public', 'downloads', "file_for_download.csv"),  "w") do |csv|
    csv <<my_headers
    @all_rows.each  do |record|
  csv <<record
     end
end
Но этот код не работает, получаю ошибку
Код Rails
1 undefined method `map' for #<Record:0x007f9cb436cee8>
Если добавляю record.to_a, тогда получаю фаил с вот такими штуками: 
#<Record:0x007f801ac2bd10>
#<Record:0x007f801ac2bcc0>
#<Record:0x007f801ac2bc48>
#<Record:0x007f801ac2bbd0>
#<Record:0x007f801ac2bb30>
#<Record:0x007f801ac2ba68>
#<Record:0x007f801ac2b9f0>
#<Record:0x007f801ac2b950>
#<Record:0x007f801ac2b888>
#<Record:0x007f801ac2b798>

Подскажите пожалуйста как это исправить! Большое спасибо за помощь!

 


Ruby on Rails merging data before save in Mongoid

15 сентября 2014 - 23:08

Добрый вечер всем! Уменя такой вопрос как сделать что бы перед сохранением данных Mongoid проверяла или такие данные в базе данных уже есть если есть то что бы база данных соединяля имеющиеся данные с новыми (merge). Но если новые данные и уже существующие данные на 100% однинаковые тогда тогда база данных догда база данных должна оставлять только одну копию.
 

 
1
2
3
4
5
6
7
8
9
10
11
12 @all_models = Model.all
data_to_database.each do |line|
    keys_for_database = line["My_Key"]
   
if @all_models.(keys_for_database => line).exists?
   
 Вот здесь я не знаю как сделать что бы Mongoid делала merge {keys_for_database => line}.merge with existing {keys_for_database => line}
 
else
    Model.create!(keys_for_database => line)
end
end

Пожалуйста кто знает подскажите как правильно это сделать! Благодарю за помощь!


Ruby on Rails перенос данных из CSV в Mongodb

07 сентября 2014 - 20:51

Добрый день всем! Хочу поинтересоватся может кто знает как в Ruby on Rails перенести данные из файла CSV в базу данных Mongodb или Mongoid таким способом чтобы таблицы CSV стали таблицами базы данных Mongodb!
Благодарю за помощь!