|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
SY Как ты думаешь какая производительность будет у Код: plsql 1.
SY RBMS_RLS в разы быстрее И, кстати, как там у RLS с маскированием, а не тупым обнулением данных? P.S. Это бессмысленный спор. Разработчик не поймёт местами замшелого админа. У каждого свои тараканы и болото для кулика. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.03.2021, 23:20 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
Elic И, кстати, как там у RLS с маскированием, а не тупым обнулением данных? Все зависит от задачи. В моем случае - дать данные кроме sensitive третьему лицу. И RLS прекрасно с этим справляется. Для "максимально похожей на пром по производительности" конечно RLS не подходит. Тут надо пробовать DBMS_REDACT или REMAP_DATA хотя с "набор колонок (несколько тысяч)" это будет еще та портянка и далеко неясно какой предел размера parfile. Есть еще одна возможность export view as a table - пользовался несколько раз, работает нормально. Просто создаем view маскируя нужные поля и в expdp VIEWS_AS_TABLES но теряются физические свойства исходной таблицы, constraints, indexes, etc. так что для "максимально похожей на пром по производительности" не пойдет. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2021, 01:10 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
SY "набор колонок (несколько тысяч)". Я опять что-то пропустил? A.3 Logical Database Limits ItemType of LimitLimit ValueColumnsPer table 1000 columns maximum ColumnsPer index (or clustered index)32 columns maximumColumnsPer bitmapped index30 columns maximum ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2021, 12:47 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
andrey_anonymous SY "набор колонок (несколько тысяч)". Я опять что-то пропустил? A.3 Logical Database Limits ItemType of LimitLimit ValueColumnsPer table 1000 columns maximum ColumnsPer index (or clustered index)32 columns maximumColumnsPer bitmapped index30 columns maximum А кто сказал что весь "набор колонок (несколько тысяч)" это одна таблица? SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2021, 13:40 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
SY А кто сказал что весь "набор колонок (несколько тысяч)" это одна таблица? Ну "набор колонок" по сути и является частью определения таблицы, в единственном числе => таблица одна, как-то так... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2021, 13:43 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
andrey_anonymous Ну "набор колонок" по сути и является частью определения таблицы, в единственном числе => таблица одна, как-то так... Выдираешь из контекста - Есть набор колонок (несколько тысяч), которые надо почистить . SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2021, 13:47 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
oragraf shurka22, Ну очистите вы колонки, дальше что? Статистика изменится, запросы по пустышкам будут работать по-другому. Очищаться будут только поля в больших таблицах (более 100млн записей). По этим полям нет индексов, их не жалко. oragraf Ваша задача называется - data masking. Есть покупные тулзовины(дорого), есть(где-то) самописные. Например, вместо реальных номеров карт можно генерировать фейковые, вместо реальных ИНН - фейковые. Тогда статистически данные будут подобны данным на проде, но при этом не будут персональными. ФИО тоже можно перемешивать. Ну и т.д. update на некий мусор - нам бы уже сгодился. Но он выполняется непозволительно долго (неделю). ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2021, 11:17 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
SY Выдираешь из контекста - Есть набор колонок (несколько тысяч), которые надо почистить . Всё верно: секретные данные содержатся в нескольких тысячах колонок, которые содержатся в (примерно) тысячи таблицах. Всего таблиц и колонок - десятки-сотни тысяч. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2021, 11:22 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
Elic Ну да. Но после этого это будет уже совсем другая таблица. Не говоря уже о проблемах с FBI и виртуальными колонками. Хм. А почему таблица будет другой? В каком смысле? Логически? Вот мой вопрос в том и состоит - как сделать точно такую же колонку, как была? С той же логикой: индексами, констрейнтами итд. Или физически? То есть другие сегменты-экстенты итд? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2021, 11:39 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
shurka22 Хм. А почему таблица будет другой? В каком смысле? shurka22 Вот мой вопрос в том и состоит - как сделать точно такую же колонку, как была? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2021, 12:16 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
Elic Отбрось страхи и домыслы. DataPump Я правильно понимаю, это более долгая операция, нежели update? Нас уже update не устраивает своей скоростью. Хотя и полностью решает остальные проблемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2021, 06:28 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
shurka22 Я правильно понимаю, это более долгая операция, нежели update? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2021, 10:11 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
shurka22 update на некий мусор - нам бы уже сгодился. На NULL сгодится? Если да, то создаем RLS ф-цию и политики на нужные поля для маскировки от пользователя U1: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Теперь: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53.
Далее выполняем data pump export из-под U1 и вручаем заказчику - все "секретные" поля обнулены. Это куда быстрее чем expdp параметр REMAP_DATA который будет вызывать REMAP_DATA ф-ции N * M раз где N число "секретных" полей а M число строк в таблице. SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2021, 14:21 |
|
Как скриптом пересоздать колонки в таблицах?
|
|||
---|---|---|---|
#18+
SY Это куда быстрее чем expdp параметр REMAP_DATA который будет вызывать REMAP_DATA ф-ции N * M раз где N число "секретных" полей а M число строк в таблице Он не рассматривает DataPump как вариант. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2021, 16:08 |
|
|
start [/forum/topic.php?fid=52&gotonew=1&tid=1880356]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
143ms |
get topic data: |
11ms |
get first new msg: |
7ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
others: | 285ms |
total: | 538ms |
0 / 0 |