Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 24 25 26 27 28 [29] 30 31 32 33 34   вперед  Ctrl
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Лох Позорный

А я в аксесе один-в-один пример Алексея прогнал (ну, на VB конечно перевел )


На мой взгляд сравнивать FO с Access гораздо более разумно, чем с Oracle.
По крайней мере FO архитектурно ближе именно к Access, хотя мультиплатформенность и возможность работы в клиент-серверных конфигурациях и выводит его из класса типовых файл-серверных систем.
15 апр 05, 11:05    [1470795]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
[quot ASCRUS]
Ладно, пока я завтракал, набросал быстрый тестик для демонстрации скорости позаписной вставки:
небольшая структурка с 2-х табличек:
...

Трайс:
Start: 2005-04-15 07:23:24.609
Finish: 2005-04-15 07:54:23.796
Execution time: 1859.203 seconds

Сделаю то же на FO. Результаты представлю.

Замечу только, что в вашем тесте проблемы с быстродействием обсчета констрейнтов у СУБД возникают не сразу, а по мере накопления данных в основной таблице. Во-вторых, нормально работающий механизм кэширования должен значительно увеличить быстродействие вашего теста просто за счет того, что все операции вставки сгруппированы по соответствующим родительским записям (запись строки и десять одинаковых проверок существования этой строки подряд должны очень хорошо кэшироваться).

Поэтому я предлагаю немного доработать ваш тест:
1. Сначала полная заливка первой таблицы (время заливки можно даже не учитывать при тестировании). Потом уже запись в таблицу дочерних записей.

2. Main_id должно генерироваться случайным образом.
15 апр 05, 11:16    [1470832]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Значения настроек Oracle при тестировании

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY          boolean     FALSE
active_instance_count                integer
aq_tm_processes                      integer     1
archive_lag_target                   integer     0
audit_sys_operations                 boolean     FALSE
audit_trail                          string      NONE
background_core_dump                 string      partial
background_dump_dest                 string      C:\oracle\admin\AVIATEST\bdump
backup_tape_io_slaves                boolean     FALSE
bitmap_merge_area_size               integer     1048576
blank_trimming                       boolean     FALSE

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
buffer_pool_keep                     string
buffer_pool_recycle                  string
circuits                             integer     170
cluster_database                     boolean     FALSE
cluster_database_instances           integer     1
cluster_interconnects                string
commit_point_strength                integer     1
compatible                           string      9.2.0.0.0
control_file_record_keep_time        integer     7
control_files                        string      D:\oradata\AVIATEST\CONTROL01.
                                                 CTL, D:\oradata\AVIATEST\CONTR

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
                                                 OL02.CTL, D:\oradata\AVIATEST\
                                                 CONTROL03.CTL
core_dump_dest                       string      C:\oracle\admin\AVIATEST\cdump
cpu_count                            integer     1
create_bitmap_area_size              integer     8388608
cursor_sharing                       string      EXACT
cursor_space_for_time                boolean     FALSE
db_16k_cache_size                    big integer 0
db_2k_cache_size                     big integer 0
db_32k_cache_size                    big integer 0
db_4k_cache_size                     big integer 0

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_8k_cache_size                     big integer 0
db_block_buffers                     integer     0
db_block_checking                    boolean     FALSE
db_block_checksum                    boolean     TRUE
db_block_size                        integer     8192
db_cache_advice                      string      ON
db_cache_size                        big integer 16777216
db_create_file_dest                  string
db_create_online_log_dest_1          string
db_create_online_log_dest_2          string
db_create_online_log_dest_3          string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_online_log_dest_4          string
db_create_online_log_dest_5          string
db_domain                            string
db_file_multiblock_read_count        integer     32
db_file_name_convert                 string
db_files                             integer     200
db_keep_cache_size                   big integer 0
db_name                              string      AVIATEST
db_recycle_cache_size                big integer 0
db_writer_processes                  integer     1
dblink_encrypt_login                 boolean     FALSE

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
dbwr_io_slaves                       integer     0
dg_broker_config_file1               string      %ORACLE_HOME%\DATABASE\DR1%ORA
                                                 CLE_SID%.DAT
dg_broker_config_file2               string      %ORACLE_HOME%\DATABASE\DR2%ORA
                                                 CLE_SID%.DAT
dg_broker_start                      boolean     FALSE
disk_asynch_io                       boolean     TRUE
dispatchers                          string      (PROTOCOL=TCP) (SERVICE=AVIATE
                                                 STXDB)
distributed_lock_timeout             integer     60
dml_locks                            integer     748

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
drs_start                            boolean     FALSE
enqueue_resources                    integer     968
event                                string
fal_client                           string
fal_server                           string
fast_start_io_target                 integer     0
fast_start_mttr_target               integer     300
fast_start_parallel_rollback         string      LOW
file_mapping                         boolean     FALSE
filesystemio_options                 string
fixed_date                           string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
gc_files_to_locks                    string
global_context_pool_size             string
global_names                         boolean     FALSE
hash_area_size                       integer     1048576
hash_join_enabled                    boolean     TRUE
hi_shared_memory_address             integer     0
hs_autoregister                      boolean     TRUE
ifile                                file
instance_groups                      string
instance_name                        string      AVIATEST
instance_number                      integer     0

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
java_max_sessionspace_size           integer     0
java_pool_size                       big integer 33554432
java_soft_sessionspace_limit         integer     0
job_queue_processes                  integer     10
large_pool_size                      big integer 8388608
license_max_sessions                 integer     0
license_max_users                    integer     0
license_sessions_warning             integer     0
local_listener                       string
lock_name_space                      string
lock_sga                             boolean     FALSE

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest                     string
log_archive_dest_1                   string
log_archive_dest_10                  string
log_archive_dest_2                   string
log_archive_dest_3                   string
log_archive_dest_4                   string
log_archive_dest_5                   string
log_archive_dest_6                   string
log_archive_dest_7                   string
log_archive_dest_8                   string
log_archive_dest_9                   string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_1             string      enable
log_archive_dest_state_10            string      enable
log_archive_dest_state_2             string      enable
log_archive_dest_state_3             string      enable
log_archive_dest_state_4             string      enable
log_archive_dest_state_5             string      enable
log_archive_dest_state_6             string      enable
log_archive_dest_state_7             string      enable
log_archive_dest_state_8             string      enable
log_archive_dest_state_9             string      enable
log_archive_duplex_dest              string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_format                   string      ARC%S.%T
log_archive_max_processes            integer     2
log_archive_min_succeed_dest         integer     1
log_archive_start                    boolean     FALSE
log_archive_trace                    integer     0
log_buffer                           integer     524288
log_checkpoint_interval              integer     0
log_checkpoint_timeout               integer     1800
log_checkpoints_to_alert             boolean     FALSE
log_file_name_convert                string
log_parallelism                      integer     1

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
logmnr_max_persistent_sessions       integer     1
max_commit_propagation_delay         integer     700
max_dispatchers                      integer     5
max_dump_file_size                   string      UNLIMITED
max_enabled_roles                    integer     30
max_rollback_segments                integer     37
max_shared_servers                   integer     20
mts_circuits                         integer     170
mts_dispatchers                      string      (PROTOCOL=TCP) (SERVICE=AVIATE
                                                 STXDB)
mts_listener_address                 string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
mts_max_dispatchers                  integer     5
mts_max_servers                      integer     20
mts_multiple_listeners               boolean     FALSE
mts_servers                          integer     1
mts_service                          string      AVIATEST
mts_sessions                         integer     165
nls_calendar                         string
nls_comp                             string
nls_currency                         string
nls_date_format                      string
nls_date_language                    string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
nls_dual_currency                    string
nls_iso_currency                     string
nls_language                         string      AMERICAN
nls_length_semantics                 string      BYTE
nls_nchar_conv_excp                  string      FALSE
nls_numeric_characters               string
nls_sort                             string
nls_territory                        string      AMERICA
nls_time_format                      string
nls_time_tz_format                   string
nls_timestamp_format                 string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
nls_timestamp_tz_format              string
object_cache_max_size_percent        integer     10
object_cache_optimal_size            integer     102400
olap_page_pool_size                  integer     33554432
open_cursors                         integer     300
open_links                           integer     4
open_links_per_instance              integer     4
optimizer_dynamic_sampling           integer     1
optimizer_features_enable            string      9.2.0
optimizer_index_caching              integer     0
optimizer_index_cost_adj             integer     100

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
optimizer_max_permutations           integer     2000
optimizer_mode                       string      CHOOSE
oracle_trace_collection_name         string
oracle_trace_collection_path         string      %ORACLE_HOME%\OTRACE\ADMIN\CDF
                                                 \
oracle_trace_collection_size         integer     5242880
oracle_trace_enable                  boolean     FALSE
oracle_trace_facility_name           string      oracled
oracle_trace_facility_path           string      %ORACLE_HOME%\OTRACE\ADMIN\FDF
                                                 \
os_authent_prefix                    string      OPS$

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
os_roles                             boolean     FALSE
parallel_adaptive_multi_user         boolean     FALSE
parallel_automatic_tuning            boolean     FALSE
parallel_execution_message_size      integer     2148
parallel_instance_group              string
parallel_max_servers                 integer     5
parallel_min_percent                 integer     0
parallel_min_servers                 integer     0
parallel_server                      boolean     FALSE
parallel_server_instances            integer     1
parallel_threads_per_cpu             integer     2

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
partition_view_enabled               boolean     FALSE
pga_aggregate_target                 big integer 33554432
plsql_compiler_flags                 string      INTERPRETED
plsql_native_c_compiler              string
plsql_native_library_dir             string
plsql_native_library_subdir_count    integer     0
plsql_native_linker                  string
plsql_native_make_file_name          string
plsql_native_make_utility            string
plsql_v2_compatibility               boolean     FALSE
pre_page_sga                         boolean     FALSE

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
processes                            integer     150
query_rewrite_enabled                string      TRUE
query_rewrite_integrity              string      enforced
rdbms_server_dn                      string
read_only_open_delayed               boolean     FALSE
recovery_parallelism                 integer     0
remote_archive_enable                string      true
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string
remote_login_passwordfile            string      EXCLUSIVE
remote_os_authent                    boolean     FALSE

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
remote_os_roles                      boolean     FALSE
replication_dependency_tracking      boolean     TRUE
resource_limit                       boolean     FALSE
resource_manager_plan                string
rollback_segments                    string
row_locking                          string      always
serial_reuse                         string      DISABLE
serializable                         boolean     FALSE
service_names                        string      AVIATEST
session_cached_cursors               integer     0
session_max_open_files               integer     10

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sessions                             integer     170
sga_max_size                         big integer 126950220
shadow_core_dump                     string      partial
shared_memory_address                integer     0
shared_pool_reserved_size            big integer 2516582
shared_pool_size                     big integer 50331648
shared_server_sessions               integer     165
shared_servers                       integer     1
sort_area_retained_size              integer     0
sort_area_size                       integer     1048576
spfile                               string      %ORACLE_HOME%\DATABASE\SPFILE%

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
                                                 ORACLE_SID%.ORA
sql92_security                       boolean     FALSE
sql_trace                            boolean     FALSE
sql_version                          string      NATIVE
standby_archive_dest                 string      %ORACLE_HOME%\RDBMS
standby_file_management              string      MANUAL
star_transformation_enabled          string      TRUE
statistics_level                     string      TYPICAL
tape_asynch_io                       boolean     TRUE
thread                               integer     0
timed_os_statistics                  integer     0

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
timed_statistics                     boolean     TRUE
trace_enabled                        boolean     TRUE
tracefile_identifier                 string
transaction_auditing                 boolean     TRUE
transactions                         integer     187
transactions_per_rollback_segment    integer     5
undo_management                      string      AUTO
undo_retention                       integer     0
undo_suppress_errors                 boolean     FALSE
undo_tablespace                      string      UNDOTBS1
use_indirect_data_buffers            boolean     FALSE

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
user_dump_dest                       string      C:\oracle\admin\AVIATEST\udump
utl_file_dir                         string
workarea_size_policy                 string      AUTO
15 апр 05, 11:37    [1470927]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Alexey Rovdo
Поэтому я предлагаю немного доработать ваш тест:
1. Сначала полная заливка первой таблицы (время заливки можно даже не учитывать при тестировании). Потом уже запись в таблицу дочерних записей.

2. Main_id должно генерироваться случайным образом.

Подловить значится хотите ? ;) Ню ню. Вот скрипт теста:
BEGIN
  MESSAGE 'Start: ' || Now() TO CLIENT;

  // Цикл на вставку в главную таблицу 1 миллиона записей
  FOR lMain AS cMain NO SCROLL CURSOR FOR
    SELECT Row_Num AS @Main_id
    FROM sa_RowGenerator(1, 1000000)
  DO
    INSERT INTO MainTable (Id, Name)
    VALUES( @Main_id, 'Rec: ' || @Main_id);
  END FOR;
  COMMIT;
  MESSAGE 'Generate main complete: ' || Now() TO CLIENT;

  // Цикл на вставку в дочернюю таблицу 10 миллионов записей
  // по случайному ключу Main_id в пределах от 1 до 1000000

  // Включаем отложенную проверку FK до COMMIT
  SET TEMPORARY OPTION WAIT_FOR_COMMIT = 'ON';

  FOR lChild AS cChild NO SCROLL CURSOR FOR
    SELECT Row_Num AS @Child_id, GREATER(LESSER(TRUNCNUM(RAND() * 1000000, 0), 1000000), 1) AS @Main_id
     FROM sa_RowGenerator(1, 10000000)
  DO
    INSERT INTO ChildTable (Id, Name, Main_id)
    VALUES (@Child_id, 'Rec: ' || @Child_id, @Main_id);

    // Делаем COMMIT на каждый сто тысяч записей
    IF @Child_id / 100000 = @Child_id / 100000.00 
    THEN
      COMMIT;
      MESSAGE 'Child ' || @Child_id || ' rows complete: ' || Now() TO CLIENT;
    END IF;
  END FOR;
  COMMIT;

  SET TEMPORARY OPTION WAIT_FOR_COMMIT = 'OFF';

  MESSAGE 'Finish: ' || Now() TO CLIENT;
EXCEPTION
  WHEN OTHERS THEN
    MESSAGE ErrorMsg() TO CLIENT;
    SET TEMPORARY OPTION WAIT_FOR_COMMIT = 'OFF';
    ROLLBACK;
END;
Думаю он полностью делает то, что Вы имели ввиду.

В следующем посте его трейс ...
15 апр 05, 12:13    [1471091]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Start: 2005-04-15 11:52:46.812
Generate main complete: 2005-04-15 11:53:31.859
Child 100000 rows complete: 2005-04-15 11:53:41.140
Child 200000 rows complete: 2005-04-15 11:53:50.640
Child 300000 rows complete: 2005-04-15 11:54:00.484
Child 400000 rows complete: 2005-04-15 11:54:10.296
Child 500000 rows complete: 2005-04-15 11:54:19.812
Child 600000 rows complete: 2005-04-15 11:54:29.468
Child 700000 rows complete: 2005-04-15 11:54:39.328
Child 800000 rows complete: 2005-04-15 11:54:49.281
Child 900000 rows complete: 2005-04-15 11:54:59.656
Child 1000000 rows complete: 2005-04-15 11:55:10.046
Child 1100000 rows complete: 2005-04-15 11:55:19.890
Child 1200000 rows complete: 2005-04-15 11:55:29.687
Child 1300000 rows complete: 2005-04-15 11:55:39.796
Child 1400000 rows complete: 2005-04-15 11:55:49.984
Child 1500000 rows complete: 2005-04-15 11:55:59.734
Child 1600000 rows complete: 2005-04-15 11:56:09.906
Child 1700000 rows complete: 2005-04-15 11:56:19.906
Child 1800000 rows complete: 2005-04-15 11:56:29.828
Child 1900000 rows complete: 2005-04-15 11:56:39.828
Child 2000000 rows complete: 2005-04-15 11:56:50.281
Child 2100000 rows complete: 2005-04-15 11:57:01.000
Child 2200000 rows complete: 2005-04-15 11:57:11.437
Child 2300000 rows complete: 2005-04-15 11:57:21.875
Child 2400000 rows complete: 2005-04-15 11:57:32.781
Child 2500000 rows complete: 2005-04-15 11:57:43.359
Child 2600000 rows complete: 2005-04-15 11:57:54.109
Child 2700000 rows complete: 2005-04-15 11:58:04.687
Child 2800000 rows complete: 2005-04-15 11:58:15.421
Child 2900000 rows complete: 2005-04-15 11:58:26.046
Child 3000000 rows complete: 2005-04-15 11:58:36.906
Child 3100000 rows complete: 2005-04-15 11:58:47.687
Child 3200000 rows complete: 2005-04-15 11:58:58.171
Child 3300000 rows complete: 2005-04-15 11:59:08.546
Child 3400000 rows complete: 2005-04-15 11:59:18.890
Child 3500000 rows complete: 2005-04-15 11:59:29.203
Child 3600000 rows complete: 2005-04-15 11:59:39.718
Child 3700000 rows complete: 2005-04-15 11:59:50.625
Child 3800000 rows complete: 2005-04-15 12:00:01.140
Child 3900000 rows complete: 2005-04-15 12:00:11.671
Child 4000000 rows complete: 2005-04-15 12:00:22.437
Child 4100000 rows complete: 2005-04-15 12:00:32.859
Child 4200000 rows complete: 2005-04-15 12:00:43.187
Child 4300000 rows complete: 2005-04-15 12:00:53.546
Child 4400000 rows complete: 2005-04-15 12:01:04.562
Child 4500000 rows complete: 2005-04-15 12:01:15.437
Child 4600000 rows complete: 2005-04-15 12:01:26.687
Child 4700000 rows complete: 2005-04-15 12:01:37.500
Child 4800000 rows complete: 2005-04-15 12:01:47.937
Child 4900000 rows complete: 2005-04-15 12:01:58.562
Child 5000000 rows complete: 2005-04-15 12:02:09.140
Child 5100000 rows complete: 2005-04-15 12:02:19.625
Child 5200000 rows complete: 2005-04-15 12:02:29.968
Child 5300000 rows complete: 2005-04-15 12:02:40.281
Child 5400000 rows complete: 2005-04-15 12:02:50.703
Child 5500000 rows complete: 2005-04-15 12:03:01.187
Child 5600000 rows complete: 2005-04-15 12:03:12.062
Child 5700000 rows complete: 2005-04-15 12:03:23.046
Child 5800000 rows complete: 2005-04-15 12:03:33.968
Child 5900000 rows complete: 2005-04-15 12:03:45.890
Child 6000000 rows complete: 2005-04-15 12:03:56.328
Child 6100000 rows complete: 2005-04-15 12:04:06.984
Child 6200000 rows complete: 2005-04-15 12:04:17.828
Child 6300000 rows complete: 2005-04-15 12:04:29.093
Child 6400000 rows complete: 2005-04-15 12:04:39.859
Child 6500000 rows complete: 2005-04-15 12:04:50.562
Child 6600000 rows complete: 2005-04-15 12:05:01.375
Child 6700000 rows complete: 2005-04-15 12:05:12.312
Child 6800000 rows complete: 2005-04-15 12:05:22.828
Child 6900000 rows complete: 2005-04-15 12:05:33.671
Child 7000000 rows complete: 2005-04-15 12:05:44.453
Child 7100000 rows complete: 2005-04-15 12:05:55.031
Child 7200000 rows complete: 2005-04-15 12:06:05.765
Child 7300000 rows complete: 2005-04-15 12:06:16.828
Child 7400000 rows complete: 2005-04-15 12:06:27.984
Child 7500000 rows complete: 2005-04-15 12:06:39.093
Child 7600000 rows complete: 2005-04-15 12:06:49.953
Child 7700000 rows complete: 2005-04-15 12:07:00.937
Child 7800000 rows complete: 2005-04-15 12:07:11.953
Child 7900000 rows complete: 2005-04-15 12:07:23.062
Child 8000000 rows complete: 2005-04-15 12:07:33.734
Child 8100000 rows complete: 2005-04-15 12:07:44.343
Child 8200000 rows complete: 2005-04-15 12:07:55.140
Child 8300000 rows complete: 2005-04-15 12:08:06.546
Child 8400000 rows complete: 2005-04-15 12:08:18.156
Child 8500000 rows complete: 2005-04-15 12:08:30.000
Child 8600000 rows complete: 2005-04-15 12:08:41.109
Child 8700000 rows complete: 2005-04-15 12:08:52.921
Child 8800000 rows complete: 2005-04-15 12:09:03.718
Child 8900000 rows complete: 2005-04-15 12:09:14.500
Child 9000000 rows complete: 2005-04-15 12:09:25.312
Child 9100000 rows complete: 2005-04-15 12:09:36.468
Child 9200000 rows complete: 2005-04-15 12:09:47.171
Child 9300000 rows complete: 2005-04-15 12:09:57.968
Child 9400000 rows complete: 2005-04-15 12:10:08.734
Child 9500000 rows complete: 2005-04-15 12:10:24.406
Child 9600000 rows complete: 2005-04-15 12:10:39.796
Child 9700000 rows complete: 2005-04-15 12:10:50.437
Child 9800000 rows complete: 2005-04-15 12:11:01.515
Child 9900000 rows complete: 2005-04-15 12:11:12.171
Child 10000000 rows complete: 2005-04-15 12:11:23.062
Finish: 2005-04-15 12:11:23.078
Execution time: 1116.281 seconds
Чуть быстрее получилось, чем в первом тесте, потому что тот тест я проводил на домашней машинке, а она чуть послабее (Atlon). Из теста видно, что в независимости от Main_id каждый сто тысяч записей вставляются 10 сек, плюс минус секунда - я же все таки и работать на этой машине продолжаю.

Естественно я не сошел с ума, чтобы делать COMMIT один раз на все 10 миллионов записей, как я уже писал будут накладные расходы на лог-файл.

Комментарии еще нужны насчет проседания FK по мере набора данных ?
15 апр 05, 12:16    [1471111]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
pga_aggregate_target   33554432
db_cache_size             16777216
log_buffer                   524288
Не выглядят как параметры, расчитанные на большой объем и интенсивонсть и потому интерес к статистике еще больше усиливается.
Трассировка не включена, потому искать файл трассировки бесполезно. Но правда, это могло замедлить - надо было включать только для той сессии.
Выложите хотя бы alert.log - точнее его часть на тот период када заливали. Тока не вырезайте про ошибки.
15 апр 05, 12:34    [1471201]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
ASCRUS

Подловить значится хотите ? ;) Ню ню. ...
В следующем посте его трейс ...


Хочу разобраться.
А можно еще трейс для 5 млн. + 5 млн.
15 апр 05, 12:49    [1471304]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Alexey Rovdo
ASCRUS

Подловить значится хотите ? ;) Ню ню. ...
В следующем посте его трейс ...


Хочу разобраться.
А можно еще трейс для 5 млн. + 5 млн.

С нуля сделать или же дальше продолжить, т.е. оставить сейчас в таблицах 1 и 10 млн записей ?
15 апр 05, 12:51    [1471316]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
С нуля.

И еще. Каков у вас размер оперативки и каких размеров получается результирующий файл с данными?
15 апр 05, 13:00    [1471368]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Alexey Rovdo
С нуля.

И еще. Каков у вас размер оперативки и каких размеров получается результирующий файл с данными?

BEGIN
  MESSAGE 'Start: ' || Now() TO CLIENT;

  // Цикл на вставку в главную таблицу 5 миллионов записей
  FOR lMain AS cMain NO SCROLL CURSOR FOR
    SELECT Row_Num AS @Main_id
    FROM sa_RowGenerator(1, 5000000)
  DO
    INSERT INTO MainTable (Id, Name)
    VALUES( @Main_id, 'Rec: ' || @Main_id);

    IF @Main_id / 100000 = @Main_id / 100000.00 
    THEN
      COMMIT;
      MESSAGE 'Primary ' || @Main_id || ' rows complete: ' || Now() TO CLIENT;
    END IF;

  END FOR;
  COMMIT;
  MESSAGE 'Generate main complete: ' || Now() TO CLIENT;

  // Цикл на вставку в дочернюю таблицу 5 миллионов записей
  // по случайному ключу Main_id в пределах от 1 до 5000000

  // Включаем отложенную проверку FK до COMMIT
  SET TEMPORARY OPTION WAIT_FOR_COMMIT = 'ON';

  FOR lChild AS cChild NO SCROLL CURSOR FOR
    SELECT Row_Num AS @Child_id, GREATER(LESSER(TRUNCNUM(RAND() * 5000000, 0), 5000000), 1) AS @Main_id
     FROM sa_RowGenerator(1, 5000000)
  DO
    INSERT INTO ChildTable (Id, Name, Main_id)
    VALUES (@Child_id, 'Rec: ' || @Child_id, @Main_id);

    // Делаем COMMIT на каждый сто тысяч записей
    IF @Child_id / 100000 = @Child_id / 100000.00 
    THEN
      COMMIT;
      MESSAGE 'Child ' || @Child_id || ' rows complete: ' || Now() TO CLIENT;
    END IF;
  END FOR;
  COMMIT;

  SET TEMPORARY OPTION WAIT_FOR_COMMIT = 'OFF';

  MESSAGE 'Finish: ' || Now() TO CLIENT;
EXCEPTION
  WHEN OTHERS THEN
    MESSAGE ErrorMsg() TO CLIENT;
    SET TEMPORARY OPTION WAIT_FOR_COMMIT = 'OFF';
    ROLLBACK;
END;
Разбил вставку в MainTable тоже по 100 000 записей, чтобы не напрягать зазря сервер. Размер БД полчился 508 мб, лог-файла 212 мб. Параметры моей машины и используемым под СУБД размером кэша были указаны в тесте по билетам выше.

Трейс ниже ...
15 апр 05, 13:53    [1471623]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Start: 2005-04-15 13:26:36.234
Primary 100000 rows complete: 2005-04-15 13:26:42.546
Primary 200000 rows complete: 2005-04-15 13:26:48.906
Primary 300000 rows complete: 2005-04-15 13:26:55.296
Primary 400000 rows complete: 2005-04-15 13:27:01.687
Primary 500000 rows complete: 2005-04-15 13:27:08.140
Primary 600000 rows complete: 2005-04-15 13:27:14.609
Primary 700000 rows complete: 2005-04-15 13:27:21.078
Primary 800000 rows complete: 2005-04-15 13:27:27.671
Primary 900000 rows complete: 2005-04-15 13:27:34.171
Primary 1000000 rows complete: 2005-04-15 13:27:40.703
Primary 1100000 rows complete: 2005-04-15 13:27:47.125
Primary 1200000 rows complete: 2005-04-15 13:27:53.734
Primary 1300000 rows complete: 2005-04-15 13:28:00.437
Primary 1400000 rows complete: 2005-04-15 13:28:07.109
Primary 1500000 rows complete: 2005-04-15 13:28:13.828
Primary 1600000 rows complete: 2005-04-15 13:28:20.703
Primary 1700000 rows complete: 2005-04-15 13:28:27.468
Primary 1800000 rows complete: 2005-04-15 13:28:34.390
Primary 1900000 rows complete: 2005-04-15 13:28:41.125
Primary 2000000 rows complete: 2005-04-15 13:28:47.890
Primary 2100000 rows complete: 2005-04-15 13:28:54.671
Primary 2200000 rows complete: 2005-04-15 13:29:01.421
Primary 2300000 rows complete: 2005-04-15 13:29:08.125
Primary 2400000 rows complete: 2005-04-15 13:29:14.765
Primary 2500000 rows complete: 2005-04-15 13:29:21.453
Primary 2600000 rows complete: 2005-04-15 13:29:28.093
Primary 2700000 rows complete: 2005-04-15 13:29:35.015
Primary 2800000 rows complete: 2005-04-15 13:29:41.843
Primary 2900000 rows complete: 2005-04-15 13:29:48.953
Primary 3000000 rows complete: 2005-04-15 13:29:55.625
Primary 3100000 rows complete: 2005-04-15 13:30:02.328
Primary 3200000 rows complete: 2005-04-15 13:30:08.984
Primary 3300000 rows complete: 2005-04-15 13:30:16.203
Primary 3400000 rows complete: 2005-04-15 13:30:22.906
Primary 3500000 rows complete: 2005-04-15 13:30:29.843
Primary 3600000 rows complete: 2005-04-15 13:30:36.546
Primary 3700000 rows complete: 2005-04-15 13:30:43.218
Primary 3800000 rows complete: 2005-04-15 13:30:49.906
Primary 3900000 rows complete: 2005-04-15 13:30:57.562
Primary 4000000 rows complete: 2005-04-15 13:31:04.437
Primary 4100000 rows complete: 2005-04-15 13:31:11.078
Primary 4200000 rows complete: 2005-04-15 13:31:17.890
Primary 4300000 rows complete: 2005-04-15 13:31:24.640
Primary 4400000 rows complete: 2005-04-15 13:31:31.375
Primary 4500000 rows complete: 2005-04-15 13:31:38.093
Primary 4600000 rows complete: 2005-04-15 13:31:45.062
Primary 4700000 rows complete: 2005-04-15 13:31:52.359
Primary 4800000 rows complete: 2005-04-15 13:31:59.140
Primary 4900000 rows complete: 2005-04-15 13:32:06.093
Primary 5000000 rows complete: 2005-04-15 13:32:13.375
Generate main complete: 2005-04-15 13:32:13.375
Child 100000 rows complete: 2005-04-15 13:32:24.843
Child 200000 rows complete: 2005-04-15 13:32:35.125
Child 300000 rows complete: 2005-04-15 13:32:44.625
Child 400000 rows complete: 2005-04-15 13:32:54.265
Child 500000 rows complete: 2005-04-15 13:33:03.906
Child 600000 rows complete: 2005-04-15 13:33:13.484
Child 700000 rows complete: 2005-04-15 13:33:23.140
Child 800000 rows complete: 2005-04-15 13:33:32.843
Child 900000 rows complete: 2005-04-15 13:33:42.437
Child 1000000 rows complete: 2005-04-15 13:33:52.390
Child 1100000 rows complete: 2005-04-15 13:34:03.484
Child 1200000 rows complete: 2005-04-15 13:34:16.656
Child 1300000 rows complete: 2005-04-15 13:34:27.578
Child 1400000 rows complete: 2005-04-15 13:34:40.906
Child 1500000 rows complete: 2005-04-15 13:34:54.187
Child 1600000 rows complete: 2005-04-15 13:35:04.656
Child 1700000 rows complete: 2005-04-15 13:35:15.578
Child 1800000 rows complete: 2005-04-15 13:35:26.953
Child 1900000 rows complete: 2005-04-15 13:35:38.843
Child 2000000 rows complete: 2005-04-15 13:37:42.578 !!!!!
Child 2100000 rows complete: 2005-04-15 13:37:52.281
Child 2200000 rows complete: 2005-04-15 13:38:02.468
Child 2300000 rows complete: 2005-04-15 13:38:12.562
Child 2400000 rows complete: 2005-04-15 13:38:22.718
Child 2500000 rows complete: 2005-04-15 13:38:36.437
Child 2600000 rows complete: 2005-04-15 13:38:50.421
Child 2700000 rows complete: 2005-04-15 13:39:50.140
Child 2800000 rows complete: 2005-04-15 13:40:08.578
Child 2900000 rows complete: 2005-04-15 13:40:42.734
Child 3000000 rows complete: 2005-04-15 13:41:50.968 !!!!!
Child 3100000 rows complete: 2005-04-15 13:42:03.875
Child 3200000 rows complete: 2005-04-15 13:42:16.718
Child 3300000 rows complete: 2005-04-15 13:42:26.671
Child 3400000 rows complete: 2005-04-15 13:42:49.890
Child 3500000 rows complete: 2005-04-15 13:44:05.156
Child 3600000 rows complete: 2005-04-15 13:44:45.906
Child 3700000 rows complete: 2005-04-15 13:46:08.765
Child 3800000 rows complete: 2005-04-15 13:46:20.078
Child 3900000 rows complete: 2005-04-15 13:46:30.953
Child 4000000 rows complete: 2005-04-15 13:46:41.734
Child 4100000 rows complete: 2005-04-15 13:46:52.484
Child 4200000 rows complete: 2005-04-15 13:47:03.953
Child 4300000 rows complete: 2005-04-15 13:47:14.531
Child 4400000 rows complete: 2005-04-15 13:47:24.781
Child 4500000 rows complete: 2005-04-15 13:47:34.781
Child 4600000 rows complete: 2005-04-15 13:47:45.265
Child 4700000 rows complete: 2005-04-15 13:47:57.703
Child 4800000 rows complete: 2005-04-15 13:48:10.437
Child 4900000 rows complete: 2005-04-15 13:48:25.484
Child 5000000 rows complete: 2005-04-15 13:48:36.625
Finish: 2005-04-15 13:48:36.640
Execution time: 1320,406 seconds
Восклицательными знаками я пометил ручками места, где сервер проседал из за потери размера кэша, так как другой инстанс СУБД в это время сильно напрягал машину.

А это трейс выданный самой ASA (оттуда я убрал уведомления о прохождении контрольных точек):
ASA
Выполняется на Windows XP Build 2600 Service Pack 2
307200K памяти использовано для кэширования
Минимальный размер кэша: 307200К, максимальный размер кэша: 716800К
Использование страницы максимального размера 4096 байт
Запуск базы данных "Test_Ins" (F:\Garbage\Test_FO\Test_Ins.db) в Пт 15 Апр 2005 г. 13:22
Системное предупреждение: файл базы данных "F:\Garbage\Test_FO\Test_Ins.db" состоит из 10 дисковых фрагментов
Журнал транзакций: Test_Ins.log
База данных "Test_Ins" (Test_Ins.db) запущена в Пт 15 Апр 2005 г. 13:22
Сервер базы данных запущен Пт 15 Апр 2005 г. 13:22
Попытка запустить канал связи SharedMemory ...
канал связи SharedMemory запущен успешно
Попытка запустить канал связи NamedPipes ...
канал связи NamedPipes запущен успешно
Попытка запустить канал связи TDS (TCPIP) ...
Запуск в порте 2638
канал связи TDS (TCPIP) запущен успешно

Сейчас принимаются запросы
Размер кэша установлен на 345892K
Размер кэша установлен на 381752K
Размер кэша установлен на 395412K
Размер кэша установлен на 407288K
Размер кэша установлен на 420500K
Размер кэша установлен на 427732K
Размер кэша установлен на 432492K
Размер кэша установлен на 438404K
Размер кэша установлен на 441852K
Размер кэша установлен на 444484K
Размер кэша установлен на 447308K
Размер кэша установлен на 449780K
Размер кэша установлен на 452572K
Размер кэша установлен на 455236K
Размер кэша установлен на 458068K
Размер кэша установлен на 481248K
Размер кэша установлен на 495500K
Размер кэша установлен на 508316K
15 апр 05, 13:59    [1471649]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Если я правильно понимаю - вся база засосалась в кэш и уже непосредственно в памяти все проверки и проводились.

Меня скорее удивляет, что Oracle почему-то не поступил аналогично. Возможно все дело в настройках и vadimfo нам подскажет что нужно поправить, чтобы и Oracle заработал быстро. А возможно механизмы кэширования у Sybase более эффективны, чем у Oracle ?

Боюсь, что сегодня нормальный тест по FO я сделать не смогу - комп занят другой задачей. Да и справедливо будет делать этот тест на C++, а не на Java, что тоже отнимет больше времени. Так что продолжим на следующей неделе .
15 апр 05, 14:12    [1471715]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Чтобы хотелось добавить. Естественно никто в здравом уме и твердой памяти не будет напрямую огромным непрерывным регистрировать данные в РСУБД, да еще в таблицы с CONSTRAINTS. Обычно в таких случаях данные пишутся в бинарный формат/CSV или таблицы без CONSTRAINT и индексов. Потом по мере накомпления они периодически переливаются уже в рабочие таблицы. Так что все тесты, которые тут проводились показывают только, что РСУБД не так уж медленно проводят вставку данных и этой скорости вполне хватает, чтобы обслуживать множество конкурирующих сессий, вводящих и изменяющих данные. Причем для FK в РСУБД реализован достаточно адекватный и граммотный механизм, контролирующий целостную ссылочность, используя для этого индексы, а так же обеспечивающий политику контроля за ссылками - в блокировочниках например, это означает, что на родительские записи во время вставки дочерних вешались SHARE-блокировки, гарантирующие, что другая сессия не сможет изменить PK родительских записей, пока не пройдут по COMMIT ссылающиеся на них дочерние записи.

Ну а в общем я понял, итак понятно, что хотел сказать Алексей - в РСУБД FK всегда приводят к тому, что необходимо их найти по индексу, а в ООСУБД ссылка и есть прямой адрес родительского обьекта, что означает минимальные затраты при обращении к нему, без поиска. Однако я бы хотел заметить, что случаи хаотического (случайного) поднятия по ссылкам минимальны при работе с множествами данных, так как в любом случае при выполнении запроса в дело вступает оптимизатор запросов, который все это дело приводит к порядку, имея в наличие множество алгоритмов для этого и умеющий по статистике проводить анализ наиболее быстрого и менее ресурсоемкого способома поиска и связи FK-PK. Это основное преимущество РСУБД, которое при обработке большого кол-ва данных даст очевидный выигрыш по сравнению с кодом на той же Java хотя бы из за того, что на Java алгоритм обработки данных будет статичен, а на РСУБД алгоритмы поиска, соединения и выбора данных будут динамически выбиратся в зависимости от текущей ситуации.

Так что я думаю, если мы закончим заниматься садомазохизмом по подливу хаотичных данных и перейдем к обработке множеств, то Алексею придется изрядно постараться, пописать и пооптимизировать код там, где специалисты различных РСУБД будут обходится примитивными и короткими запросами.
15 апр 05, 14:17    [1471738]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
Alexey Rovdo

Возможно все дело в настройках и vadimfo нам подскажет что нужно поправить, чтобы и Oracle заработал быстро.

Вы что собираетесь мне дать удаленный доступ к Вашему серверу БД с Ораклом?
Или как я получу всю инфу по статистике?
Конечно, када я получу JDeveloper я поробую посмотреть, что в принципе делает сервак с таким кодом якобы по чистой закачке.


Alexey Rovdo

А возможно механизмы кэширования у Sybase более эффективны, чем у Oracle ?

Как Oracle вообще ухитряется участвовать в мировых тестах, и путаться там еще среди первых?
15 апр 05, 15:01    [1471919]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
vadiminfo

Как Oracle вообще ухитряется участвовать в мировых тестах, и путаться там еще среди первых?


Элементарно! Он их учреждает и финансирует ...
15 апр 05, 16:14    [1472278]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Alexey Rovdo
vadiminfo

Как Oracle вообще ухитряется участвовать в мировых тестах, и путаться там еще среди первых?


Элементарно! Он их учреждает и финансирует ...


Бравоооо !!! Но это уже перебор
15 апр 05, 16:15    [1472292]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Да ладно вам ...
Я вовсе не хочу сказать, что Oracle плох.
Но я и не соглашусь с тем, что он хорош во всем.
15 апр 05, 16:19    [1472316]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Genady
Member

Откуда: Москва
Сообщений: 2005
Alexey Rovdo
vadiminfo

Как Oracle вообще ухитряется участвовать в мировых тестах, и путаться там еще среди первых?


Элементарно! Он их учреждает и финансирует ...


Вместе с IBM и Microsoft, просто заговор какой-то, совсем гады прогрессивных разработчиков зажали.
15 апр 05, 16:47    [1472458]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
Alexey Rovdo

Но я и не соглашусь с тем, что он хорош во всем.

По крайней мере, в том чем он хорош, Вы явно не пользовались при эксперименте, если не наоборот. Статистики нет. Заставили его читать по ходу запросы с соединениями и группировкой. Выделили подозрительно мало место под структуры памяти для таких операций. Не провели никаких исследованеий. У него несколько разделов кэша, можно прописать блоки хранить по максимому для отдельных табл, есть кластерные таблы - записи нескольких таблов в одном блоке. Все это надо было проверять. Он не боится коммитов, потому что, к момету коммита уже практически вся работа сделана, хотя конечно, они и тормозят когда их много. Возможно, он медленне откатывает, но мы же транзакции создаем не для откатов. Неизвестны планы запросов.
Многие замечания игнорировали.
И после этого не побрезговали поставить под сомнение официальные тесты, хотя там могут присутствовать, на сколько, я знаю и независимые эксперты, в отличии от Ваших, где, судя по всему, свсем никаких экпертов не присутствовало.
Им Оракл платит? А Вам может кто-то тоже платит. Ни в одном суде такие Ваши тесты бы не признали, в олтчии от тех. Ни в одной приличной книге на Ваши не сошлются.
Получается, что теперь никаким Вашим выводам доверять не стоит, поскольку они могли быть получены таким же, незадачливым способом. Возможно, и про Версант нужно относиться с осторожностью, к тому, что Вы говорите.
15 апр 05, 19:15    [1472964]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Su  [new]
c127
Guest
2 Alexey Rovdo

>FastObjects t7 фактически и есть система реального времени (Windows, Windows CE, Linux, Solaris, HP-UX, AIX, WxWorks ... ).

Да уж, реал тайм "FastObjects t7" на не реал тайм ОС. Круто. Хотя может все основные реал тайм системы там, где многоточие. Кстати не WxWorks, а VxWorks - единственная из списка, кроме многоточия, разумеется, которая попадает в число реал тайм, ибо ни "Windows CE" ни Linux в реал тайм не попадают, а попадают туда "Windows CE.NET" и Embedded Linux, да и то с очень большими оговорками. Мелочь, а отличается от перечисленного.

>Как я уже говорил, эта ООСУБД применяется как встраиваемая в составе разнообразного телекоммуникационного оборудования.

Как я уже говорил, интербейз стоит на танках абрамс, поскольку только он может выдержать перезагрузку после каждого выстрела из пулемета. Это мы проходили неоднократно.

При копировании из рекламных проспектов рекомендуется все-таки хотя бы бегло ознакамливаться с содержанием копируемого.



2 ASCRUS

Сильно. Уважаю.
16 апр 05, 02:42    [1473397]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
vadiminfo
Alexey Rovdo

Но я и не соглашусь с тем, что он хорош во всем.

По крайней мере, в том чем он хорош, Вы явно не пользовались при эксперименте, если не наоборот. Статистики нет. Заставили его читать по ходу запросы с соединениями и группировкой. Выделили подозрительно мало место под структуры памяти для таких операций. Не провели никаких исследованеий. У него несколько разделов кэша, можно прописать блоки хранить по максимому для отдельных табл, есть кластерные таблы - записи нескольких таблов в одном блоке. Все это надо было проверять. Он не боится коммитов, потому что, к момету коммита уже практически вся работа сделана, хотя конечно, они и тормозят когда их много. Возможно, он медленне откатывает, но мы же транзакции создаем не для откатов. Неизвестны планы запросов.
Многие замечания игнорировали.
И после этого не побрезговали поставить под сомнение официальные тесты, хотя там могут присутствовать, на сколько, я знаю и независимые эксперты, в отличии от Ваших, где, судя по всему, свсем никаких экпертов не присутствовало.
Им Оракл платит? А Вам может кто-то тоже платит. Ни в одном суде такие Ваши тесты бы не признали, в олтчии от тех. Ни в одной приличной книге на Ваши не сошлются.
Получается, что теперь никаким Вашим выводам доверять не стоит, поскольку они могли быть получены таким же, незадачливым способом. Возможно, и про Версант нужно относиться с осторожностью, к тому, что Вы говорите.


А еще у меня может быть бородавка прямо на носу, бррр ...
16 апр 05, 09:24    [1473487]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Базылевич Станислав
Member

Откуда:
Сообщений: 1
На усмотрение модераторов:

29 апреля 2005 г. Компания Ленвендо проводит семинар "Современные технологии сохраняемости Java и .NET объектов"

Дата проведения семинара: 29 апреля 2005 г.
План семинара:

- Обзор современных технологий сохраняемости
- Обзор существующих решений
- ООСУБД – прозрачная сохраняемость объектов
- Системы масштаба предприятия, построенные с использованием технологий ООСУБД
- Инструментарий объектно-реляционного отображения (O/R Mapping Tools)
- Versant Open Access JDO
- Versant Open Access .NET
- Системы масштаба предприятия, построенные с использованием технологий объектно-реляционного отображения

Место проведения:
Санкт-Петербург, Измайловский пр., дом 14 (вход с 7-ой Красноармейской)

Участие:
Участие в семинаре бесплатное

Регистрация:
Зарегистрироваться

Подробнее
20 апр 05, 18:44    [1484058]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
BaZa
Guest
нет желания рассмотреть на практике все то, о чем тут спор идет?
(семинар проводится не маркетологами, а техническими специалистами)
22 апр 05, 19:08    [1491275]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Su  [new]
c127
Guest
2 Alexey Rovdo

>Боюсь, что сегодня нормальный тест по FO я сделать не смогу - комп занят другой задачей. Да и справедливо будет делать этот тест на C++, а не на Java, что тоже отнимет больше времени. Так что продолжим на следующей неделе (15 апр 05, 14:12)

Ну и? Обещанное продолжение где?
18 май 05, 23:38    [1553360]     Ответить | Цитировать Сообщить модератору
 Re: Объектные СУБД от Versant Corporation (FastObjects .NET, FastObjects t7, Developer Suite)  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Ну как-то работа нахлынула, да еще и комп. заглючил. Пришлось со всем этим разгребаться. Но чтобы вы меня уж совсем не ругали. Вот прогнал у себя тест ASCRUS для Sybase (последний вариант теста).

Start: 2005-05-11 19:53:09.694
Primary 100000 rows complete: 2005-05-11 19:53:20.397
Primary 200000 rows complete: 2005-05-11 19:53:25.616
Primary 300000 rows complete: 2005-05-11 19:53:30.991
Primary 400000 rows complete: 2005-05-11 19:53:36.319
Primary 500000 rows complete: 2005-05-11 19:53:41.100
Primary 600000 rows complete: 2005-05-11 19:53:46.709
Primary 700000 rows complete: 2005-05-11 19:53:51.834
Primary 800000 rows complete: 2005-05-11 19:53:57.537
Primary 900000 rows complete: 2005-05-11 19:54:02.802
Primary 1000000 rows complete: 2005-05-11 19:54:07.849
Primary 1100000 rows complete: 2005-05-11 19:54:12.989
Primary 1200000 rows complete: 2005-05-11 19:54:18.177
Primary 1300000 rows complete: 2005-05-11 19:54:23.364
Primary 1400000 rows complete: 2005-05-11 19:54:28.582
Primary 1500000 rows complete: 2005-05-11 19:54:33.817
Primary 1600000 rows complete: 2005-05-11 19:54:39.551
Primary 1700000 rows complete: 2005-05-11 19:54:45.176
Primary 1800000 rows complete: 2005-05-11 19:54:50.722
Primary 1900000 rows complete: 2005-05-11 19:54:55.847
Primary 2000000 rows complete: 2005-05-11 19:55:01.144
Primary 2100000 rows complete: 2005-05-11 19:55:06.691
Primary 2200000 rows complete: 2005-05-11 19:55:12.237
Primary 2300000 rows complete: 2005-05-11 19:55:18.284
Primary 2400000 rows complete: 2005-05-11 19:55:23.565
Primary 2500000 rows complete: 2005-05-11 19:55:28.877
Primary 2600000 rows complete: 2005-05-11 19:55:34.237
Primary 2700000 rows complete: 2005-05-11 19:55:39.408
Primary 2800000 rows complete: 2005-05-11 19:55:44.314
Primary 2900000 rows complete: 2005-05-11 19:55:50.080
Primary 3000000 rows complete: 2005-05-11 19:55:55.470
Primary 3100000 rows complete: 2005-05-11 19:56:00.939
Primary 3200000 rows complete: 2005-05-11 19:56:06.236
Primary 3300000 rows complete: 2005-05-11 19:56:11.798
Primary 3400000 rows complete: 2005-05-11 19:56:17.142
Primary 3500000 rows complete: 2005-05-11 19:56:22.719
Primary 3600000 rows complete: 2005-05-11 19:56:28.547
Primary 3700000 rows complete: 2005-05-11 19:56:34.266
Primary 3800000 rows complete: 2005-05-11 19:56:39.656
Primary 3900000 rows complete: 2005-05-11 19:56:45.000
Primary 4000000 rows complete: 2005-05-11 19:56:50.453
Primary 4100000 rows complete: 2005-05-11 19:56:55.797
Primary 4200000 rows complete: 2005-05-11 19:57:01.156
Primary 4300000 rows complete: 2005-05-11 19:57:06.749
Primary 4400000 rows complete: 2005-05-11 19:57:12.280
Primary 4500000 rows complete: 2005-05-11 19:57:18.796
Primary 4600000 rows complete: 2005-05-11 19:57:24.280
Primary 4700000 rows complete: 2005-05-11 19:57:29.717
Primary 4800000 rows complete: 2005-05-11 19:57:35.577
Primary 4900000 rows complete: 2005-05-11 19:57:40.592
Primary 5000000 rows complete: 2005-05-11 19:57:46.232
Generate main complete: 2005-05-11 19:57:46.248
Child 100000 rows complete: 2005-05-11 19:58:17.263
Child 200000 rows complete: 2005-05-11 19:58:35.309
Child 300000 rows complete: 2005-05-11 19:59:41.447
Child 400000 rows complete: 2005-05-11 19:59:55.322
Child 500000 rows complete: 2005-05-11 20:01:42.772      !!!
Child 600000 rows complete: 2005-05-11 20:03:39.659
Child 700000 rows complete: 2005-05-11 20:04:31.516
Child 800000 rows complete: 2005-05-11 20:05:46.623
Child 900000 rows complete: 2005-05-11 20:07:44.323
Child 1000000 rows complete: 2005-05-11 20:09:43.647
Child 1100000 rows complete: 2005-05-11 20:11:36.893
Child 1200000 rows complete: 2005-05-11 20:12:59.609
Child 1300000 rows complete: 2005-05-11 20:14:05.670
Child 1400000 rows complete: 2005-05-11 20:15:50.291
Child 1500000 rows complete: 2005-05-11 20:17:50.741
Child 1600000 rows complete: 2005-05-11 20:19:29.831
Child 1700000 rows complete: 2005-05-11 20:21:20.890
Child 1800000 rows complete: 2005-05-11 20:22:22.013
Child 1900000 rows complete: 2005-05-11 20:23:56.057
Child 2000000 rows complete: 2005-05-11 20:25:56.506
Child 2100000 rows complete: 2005-05-11 20:27:20.535
Child 2200000 rows complete: 2005-05-11 20:28:26.142
Child 2300000 rows complete: 2005-05-11 20:30:13.717
Child 2400000 rows complete: 2005-05-11 20:32:13.963
Child 2500000 rows complete: 2005-05-11 20:34:11.694
Child 2600000 rows complete: 2005-05-11 20:36:19.362
Child 2700000 rows complete: 2005-05-11 20:38:21.639
Child 2800000 rows complete: 2005-05-11 20:40:25.229
Child 2900000 rows complete: 2005-05-11 20:42:32.678
Child 3000000 rows complete: 2005-05-11 20:45:27.797
Child 3100000 rows complete: 2005-05-11 20:47:58.886
Child 3200000 rows complete: 2005-05-11 20:50:44.646
Child 3300000 rows complete: 2005-05-11 20:52:50.783
Child 3400000 rows complete: 2005-05-11 20:55:58.527
Child 3500000 rows complete: 2005-05-11 20:58:55.006
Child 3600000 rows complete: 2005-05-11 21:02:11.702
Child 3700000 rows complete: 2005-05-11 21:05:05.416
Child 3800000 rows complete: 2005-05-11 21:09:06.564
Child 3900000 rows complete: 2005-05-11 21:11:22.404
Child 4000000 rows complete: 2005-05-11 21:15:25.552
Child 4100000 rows complete: 2005-05-11 21:19:27.482
Child 4200000 rows complete: 2005-05-11 21:23:30.474
Child 4300000 rows complete: 2005-05-11 21:27:21.498
Child 4400000 rows complete: 2005-05-11 21:31:38.896
Child 4500000 rows complete: 2005-05-11 21:35:00.718
Child 4600000 rows complete: 2005-05-11 21:38:18.977
Child 4700000 rows complete: 2005-05-11 21:42:22.110
Child 4800000 rows complete: 2005-05-11 21:46:10.571
Child 4900000 rows complete: 2005-05-11 21:50:15.391
Child 5000000 rows complete: 2005-05-11 21:54:49.586
Finish: 2005-05-11 21:54:50.867
Execution time: 7303.157 seconds


!!! - на компе у меня 512 Мб мозгов. Поэтому кэша не хватает чтобы загрузить всю базу. Очень хорошо видно где кэш заканчивается. Думаю и ASCRUS это увидит, если поставит по 10 млн. записей в каждую таблицу.

В принципе, это не камень в чей-то огород, просто подтверждение моих ранних высказываний о замедлении при проверке констрейнтов (впрочем эффективный механизм кэширования и большой объем кэша могут такое замедление существенно сократить).

Как и ранее я считаю, что более интересным является сравнение быстродействия запросов на БОЛЬШИХ (Гигабайты) объемах данных. Но из-за проблем с занятостью, компом и ораклом (мне до сих пор так и не удалось нормально сгенерить тестовую базу со всеми индексами - в основном из-за регулярных перебоев в електроснабжении, а упса нет :( ) вынужден пока отмалчиваться.
19 май 05, 11:29    [1554411]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 24 25 26 27 28 [29] 30 31 32 33 34   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить