The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Первый релиз NoSQL БД OrientDB, opennews (ok), 15-Май-12, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


61. "Первый релиз NoSQL БД OrientDB"  +/
Сообщение от JD (ok), 17-Май-12, 13:02 
"...на обычном оборудовании позволяя сохранять до 150 000 записей в секунду" мягко говоря это неправда, ибо физически невозможно, а по сути наглый пизде$$$...
Ответить | Правка | Наверх | Cообщить модератору

62. "Первый релиз NoSQL БД OrientDB"  +/
Сообщение от Yarick (?), 18-Май-12, 11:44 
Интересное утверждение.
Физически невозможно - это записать за секунду на диск данных больше, чем позволяет пропускная способность диска.

Где вы видите информацию о размере записи ???
Современные HDD даже на ноутбуке позволяют записывать порядка 100 Мб/сек. SSD так ещё больше.

В данном случае размер данных не важен, ибо это будет тест дисковой подсистемы. Количество сохранённых мелких записей позволяет судить об эффективности алгоритма. При этом утилизировать даже всего 100 Мб/сек обычного диска представляется весьма сложной задачей.  Достаточно чтобы размер был менее килобайта.

RB+Tree позволяет быстро читать и при этом быстро записывать.

Ответить | Правка | Наверх | Cообщить модератору

63. "Первый релиз NoSQL БД OrientDB"  –2 +/
Сообщение от JD (ok), 19-Май-12, 08:39 
>[оверквотинг удален]
> Физически невозможно - это записать за секунду на диск данных больше, чем
> позволяет пропускная способность диска.
> Где вы видите информацию о размере записи ???
> Современные HDD даже на ноутбуке позволяют записывать порядка 100 Мб/сек. SSD так
> ещё больше.
> В данном случае размер данных не важен, ибо это будет тест дисковой
> подсистемы. Количество сохранённых мелких записей позволяет судить об эффективности алгоритма.
> При этом утилизировать даже всего 100 Мб/сек обычного диска представляется весьма
> сложной задачей.  Достаточно чтобы размер был менее килобайта.
> RB+Tree позволяет быстро читать и при этом быстро записывать.

Что же вы ерундой то болтаете???
Запустите скрипт на генерацию 150000 файлов объем каждого ~20 байт.
И скажите сколько МИНУТ он выполняется на обычном железе?

#!/bin/bash

mkdir data

COUNTER=0
START=`date +%s`

while [  $COUNTER -lt 150000 ]; do
   echo The counter is $COUNTER > data/$COUNTER.txt
   let COUNTER=COUNTER+1
done

END=`date +%s`

RES=0;

let RES=END-START
echo $RES

Ответить | Правка | Наверх | Cообщить модератору

64. "Первый релиз NoSQL БД OrientDB"  +/
Сообщение от nvkz2007 (?), 20-Май-12, 02:14 
Ты забыл про файловую систему, которая мало того что пишет файлы блоками большего размера чем сам файл, так еще и таблицу с индексами создает.
Ответить | Правка | Наверх | Cообщить модератору

68. "Первый релиз NoSQL БД OrientDB"  +/
Сообщение от Yarick (?), 21-Май-12, 11:13 
Обязательно попробую.

В OrientDB есть понятие кластера. Кластер - это, грубо говоря, предварительно созданный файл обычно небольшого размера. Когда пишутся новые записи, то они редко требуют выделения нового места на ФС. Также для каждого кластера есть другой специальный кластер для удалённых записей. В него заносятся пометка о том, что такая-то запись удалена. Т.о. непосредственное добавление или удаление одной записи не приводит в выделению места на ФС.
А вот хороший алгоритм нужен для быстрого нахождения требуемого адреса внутри кластера. И такой алгоритм есть и он работает.

Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

69. "Первый релиз NoSQL БД OrientDB"  +/
Сообщение от anton0xfemail (?), 02-Июн-12, 12:10 
$ cat write-test.c
#include <stdio.h>

#define RECORDS_COUNT 150000
int main(){
    FILE *fp;
    if((fp = fopen("records", "w")) != NULL){
        unsigned char c = 0;
        long int i;
        for(i=0; i < RECORDS_COUNT; i++){ //пишем 150 000 записей в файл
            fputc(c++, fp); //пишем запись из одного символа
        }
        fclose(fp);
        return 0;
    }else{
        printf("Can't open file");
        return 1;
    }
}
$ cc -o write-test write-test.c
$ time ./write-test
./write-test  0.00s user 0.00s system 82% cpu 0.006 total

УМВР. ЧЯДНТ?

Ответить | Правка | К родителю #61 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру