esgyndb manager user guide€¦ · • monitor runtime status of esgyndb nodes • time-series...

95
EsgynDB Manager User Guide Version 2.4.0

Upload: others

Post on 21-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

EsgynDB Manager User GuideVersion 2.4.0

Page 2: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Table of Contents

1. Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2

1.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2

1.2. Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2

2. Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

3. Install and Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

3.1. Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

3.2. Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

3.2.1. Configuration Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

3.2.2. Sample configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  10

3.3. Start EsgynDB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12

3.3.1. When installed using Cloudera Parcels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12

3.3.2. When installed using Python installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12

3.3.3. Manual Start of DB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12

3.4. Stop EsgynDB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12

3.4.1. When installed using Cloudera Parcels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  12

3.4.2. When installed using Python installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13

3.4.3. Manual Stop of DB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13

3.5. Persistence and Fault-tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13

3.5.1. Persistence for DB Manager and Bosun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13

When installed using Cloudera Parcels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13

When installed using Python installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  13

3.5.2. Persistence for OpenTSDB TSD and TCollector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14

3.6. Log settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  15

3.7. Check Status of EsgynDB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  15

3.8. Display EsgynDB Manager Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  16

4. Using EsgynDB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  17

4.1. Connecting to EsgynDB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  17

4.2. Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  17

4.3. Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  17

4.4. Notifications Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  18

4.5. EsgynDB Manager User Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  18

4.6. About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  18

4.7. Log Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  19

4.8. EsgynDB Time-Series Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  19

Page 3: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

5. Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  21

5.1. Service Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  21

5.2. Node Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  22

5.3. Active Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  22

5.4. Transaction Counts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  22

5.5. Canary Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

5.6. CPU Busy % . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

5.7. IO Waits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

5.8. Free Memory % . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

5.9. Disk Space Used % . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

5.10. Network IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

5.11. Regionserver Memory Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

5.12. GC Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

5.13. Memstore Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

5.14. Drill-down details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  25

6. Workloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  27

6.1. Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  27

6.1.1. Active Workloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  27

6.1.2. Active Query Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  28

6.1.3. Historical Workloads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  29

6.1.4. Historical Query Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30

6.1.5. Query Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30

6.1.6. Cancel Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30

6.2. Workload Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  31

6.2.1. Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  31

6.2.2. View Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  32

6.2.3. Add Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  33

6.2.4. Alter Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  35

6.2.5. Delete Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  35

6.2.6. SLAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  35

6.2.7. View SLAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  36

6.2.8. Add SLA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  36

6.2.9. Alter SLA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  38

6.2.10. Delete SLA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  38

6.2.11. Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  38

6.2.12. View Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  39

6.2.13. Add Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  40

Page 4: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

6.2.14. Alter Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  42

6.2.15. Delete Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  42

6.2.16. Profile/SLA/Mapping at Runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  42

6.2.17. Debugging mapping issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  43

7. Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  44

7.1. Log Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  44

7.2. Log Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  45

8. Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  47

8.1. Schemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  47

8.2. Schema Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  47

8.2.1. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  47

8.2.2. DDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  47

8.2.3. Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  48

8.3. Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  48

8.4. Table Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  49

8.4.1. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  49

8.4.2. Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  49

8.4.3. Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  49

8.4.4. Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  49

8.4.5. DDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  50

8.4.6. Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  50

8.4.7. Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  50

8.4.8. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  50

8.5. Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  50

8.6. View Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  51

8.6.1. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  51

8.6.2. Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  51

8.6.3. DDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  51

8.6.4. Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  51

8.6.5. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  52

8.7. Indexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  52

8.8. Index Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  53

8.8.1. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  53

8.8.2. Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  53

8.8.3. DDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  53

8.9. Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  53

8.9.1. Create Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  54

Page 5: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

8.10. Library Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  54

8.10.1. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  54

8.10.2. DDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  55

8.10.3. Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  55

8.10.4. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  55

8.11. Alter Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  55

8.12. Drop Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  56

8.13. Download Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  56

8.14. Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  56

8.15. Procedure Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

8.15.1. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

8.15.2. DDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

8.15.3. Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

8.15.4. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

8.16. Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

8.17. Function Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  58

8.17.1. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  58

8.17.2. DDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  58

8.17.3. Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  58

8.17.4. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  59

9. Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  60

9.1. Service Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  60

9.2. Master Executor summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  60

9.3. Master Executor Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  61

9.4. Process Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  61

10. Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

10.1. Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

10.1.1. Roles Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

10.1.2. Role Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

Grantees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

Component Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63

10.1.3. Delete Role . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63

10.2. Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63

10.2.1. Users Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63

10.2.2. Add User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63

10.2.3. User Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64

Page 6: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64

Edit User Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64

Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64

Component Privileges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64

10.2.4. Delete User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64

10.3. User Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

10.3.1. Add User Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

10.3.2. User Group Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

Edit User Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

Grant/Revoke Role to User Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

10.3.3. Delete User Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

10.4. Roles based Authorization for DB Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  66

11. Tenants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  69

11.1. Tenants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  69

11.1.1. Key Terminologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  69

11.1.2. Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  70

Add Tenant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  70

11.1.3. Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  72

11.1.4. Alter Tenant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  72

11.1.5. Granting Privileges to Tenant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  73

12. Query Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  74

12.1. Execute Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  75

12.2. Explain Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  75

12.3. Control Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

12.4. Export Workbench Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

12.5. Import Workbench Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

12.6. Clear Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

13. Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  77

13.1. Alerts Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  77

13.2. Alert Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  78

14. Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79

14.1. Backup/Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79

14.1.1. Authorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79

14.1.2. Backup/Restore Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79

14.1.3. New Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  80

14.1.4. Backup Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  81

View Scheduled Backup jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  81

Page 7: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Modify Schedule of Backup jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  81

Delete Scheduled Backup jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  82

14.1.5. Restore Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  82

14.1.6. Export Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  82

14.1.7. Import Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  83

14.1.8. Delete Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  83

14.1.9. Backup/Restore Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  83

14.1.10. Additional Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  83

14.2. Create Library Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  83

14.3. SQL Converter Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  84

Converting SQL statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  84

14.4. Execute SQL Script Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  85

Executing SQL script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  86

15. Troubleshooting and Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  87

15.1. Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  87

15.2. Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  88

Page 8: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

© Copyright 2015-2018 Esgyn Corporation

The information contained herein is subject to change without notice. This documentation

is distributed on an "AS IS" basis, without warranties or conditions of any kind, either

express or implied. Nothing herein should be construed as constituting an additional

warranty. Esgyn Corporation shall not be liable for technical or editorial errors or omissions

contained herein.

Revision History2.4.0 14Apr2018

EsgynDB Manager User Guide

Preface | 1

Page 9: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 1. Getting Started

1.1. Introduction

EsgynDB Manager is a web based enterprise management tool for monitoring and managing

EsgynDB platform and workloads.

1.2. Features

• Dashboard

• Monitor runtime status of EsgynDB services

• Monitor runtime status of EsgynDB Nodes

• Time-series charts for monitoring key system and EsgynDB metrics

• Workloads

• Monitoring

• Monitor queries that are currently active on the system

• Drill-down to view runtime statistics for each query

• View queries that completed in the past

• View Top 5 workloads based on CPU Time, Memory Usage, Disk IOs and Elapsed Time

• Drill-down into detailed query metrics

• View visual and textual explain plans for queries

• Cancel active queries that are impacting the system

• Configuration

• Setup workload profiles to allow queries to be run on specific nodes with required runtime

SQL profiles

• Define Service Level Agreement (SLA) thresholds

• Map end user queries to specific SLAs and workload profiles

• Database

EsgynDB Manager User Guide

2 | Chapter 1. Getting Started

Page 10: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• Browse Schemas, Tables, Views, Indexes, Libraries, Procedures and UDFs

• View Object attributes, columns, privileges, DDL text, object dependencies

• View Table histogram statistics and region statistics

• Create/Alter/Drop Library tool to easily deploy library code files and create/alter/drop library

• Logs

• View EsgynDB logs via logs TMUDF

• Connectivity

• View status of EsgynDB connectivity services and master executors

• View currently active application sessions

• Security

• Add/Alter/Delete database roles

• Add/Alter/Delete database users

• Grant roles to database users

• Add/Alter/Delete user groups *1

• Grant roles to user groups *1

• Grant component privileges to users and roles

• Tenants *2

• Add/Alter/Delete tenants

• View resource usage per tenant

• Query Workbench

• Execute ad-hoc queries

• Generate visual and textual explain plans

• Apply CQDs to change execute plans

• Cancel query execute or explain

• Export query results, explain plans to JSON text file

• Import query results and/or explain plans from JSON file

EsgynDB Manager User Guide

Chapter 1. Getting Started | 3

Page 11: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• Alerts *3

• View Alert notifications

• Acknowledge and update alerts

• Tools

• Backup/Restore *1*3

• SQL Converter tool to convert SQL DDL and DML statements from Teradata syntax to

EsgynDB

• Script Execution tool to execute mutli-statement SQL Script

*1 New feature in EsgynDB Manager 2.4.0

*2 Requires a license with multi-tenancy add-on

*3 Only in EsgynDB Advanced Edition

EsgynDB Manager User Guide

4 | Chapter 1. Getting Started

Page 12: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 2. Architecture

EsgynDB Manager is a web management console to monitor and manage an EsgynDB instance.

• DB Manager runs as an embedded jetty webserver.

• The web client layer uses HTML5/JavaScript/CSS.

• The web client to DB Manager webserver communication uses HTTPS encryption.

• The web client session is authenticated using JDBC.

• Communication with EsgynDB core is through JDBC and HTTP requests.

• The system health and performance metrics as well the health and performance of EsgynDB

services are periodically collected as time-series data and published into OpenTSDB.

• TCollector provides several scripts to measure system health and performance and also an

extensible infrastructure to launch scripts at pre-defined intervals. The metrics are published into

OpenTSDB.

• DB Manager provides real-time alerting using the Bosun alerting and notification engine.

• EsgynDB Manager has been tested with Chrome, IE11, Firefox and Microsoft Edge browsers.

• DB Manager also executes local scripts on the webserver for some of the management functions

EsgynDB Manager User Guide

Chapter 2. Architecture | 5

Page 13: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Figure 1. EsgynDB Manager Architecture

EsgynDB Manager User Guide

6 | Chapter 2. Architecture

Page 14: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 3. Install and Configuration

3.1. Installation

DB Manager is pre-installed and configured along with the core EsgynDB components. No additional

install steps are required.

EsgynDB Manager is installed in $TRAF_HOME/dbmgr-2.4.0 folder.

3.2. Configuration

When you install EsgynDB using the standalone python installer or though the Cloudera EsgynDB

Parcels, the configuration for EsgynDB Manager will be automatically generated in the

$TRAF_HOME/dbmgr-2.4.0/conf/config.xml file.

You can edit the configuration file to make any changes and then restart DB Manager.

3.2.1. Configuration Properties

jdbcUrl

The JDBC url for EsgynDB

<entry key="jdbcUrl">jdbc:t4jdbc://my.esgyndb.server:23400/:</entry>

minPoolSize

DB Manager uses connection pooling for its internal queries. This parameter sets the initial and

minimum pool size. Default value is 2.

<entry key="minPoolSize">2</entry>

maxPoolSize

DB Manager uses connection pooling for its internal queries. This parameter sets the maximum

pool size. Default value is 8.

<entry key="maxPoolSize">8</entry>

EsgynDB Manager User Guide

Chapter 3. Install and Configuration | 7

Page 15: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

adminUserID

The database user ID used for the jdbc connections to run the internal system queries.

<entry key="adminUserID">DB__ADMIN</entry>

adminPassword

Password of the database user ID used for the jdbc connections to run the internal system

queries. The password is obfuscated by the installer.

<entry key="adminPassword">OBF:1sov1sov</entry>

connectionTimeout

The Connection Timeout in seconds. Used for the JDBC connections from EsgynDB Manager

to EsgynDB. Default value is 60 seconds (1 minute).

<entry key="connectionTimeout">60</entry>

sessionTimeoutMinutes

The Session Timeout in minutes. The EsgynDB Manager browser client session to the server

will be timed out after this interval and the client will be prompted to login again. Default value is

120 minutes (2 hours).

<entry key="sessionTimeoutMinutes">120</entry>

timeZoneName

The TimeZone name of the EsgynDB server. Specified in canonical time zone format like

America/New_York

<entry key="timeZoneName">America/New_York</entry>

trafodionRestServerUri

The http url for the EsgynDB REST server.

<entry key="trafodionRestServerUri">http://my.esgyndb.server:4200</entry>

EsgynDB Manager User Guide

8 | Chapter 3. Install and Configuration

Page 16: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

openTSDBUri

The HTTP url for fetching the timeseries metrics from TSD (OpenTSDB) process.

<entry key="openTSDBUri">http://my.esgyndb.server:5242</entry>

alertsUri

The HTTP url for viewing and managing Bosun alerts.

<entry key="alertsUri">http://my.esgyndb.server:8070</entry>

httpReadTimeOutSeconds

The HTTP read timeout in seconds for any HTTP requests initiated by DB Manager. For

example, the HTTP calls to EsgynDB REST server or the OpenTSDB TSD server.

<entry key="httpReadTimeOutSeconds">120</entry>

enableHTTPS

A flag to enable or disable HTTPS. Default value is true.

If the value is set to true, DB Manager will listen on both HTTP and HTTPS ports. Requests to

HTTP port will automatically get redirected to the HTTPS port.

If the value is set to false, DB Manager will only listen on HTTP port.

<entry key="enableHTTPS">true</entry>

httpPort

The HTTP Port for the DB Manager embedded jetty server. Default value is 4205.

<entry key="httpPort">4205</entry>

httpsPort

The HTTPS Port for the DB Manager embedded jetty server. Default value is 4206

<entry key="httpsPort">4206</entry>

EsgynDB Manager User Guide

Chapter 3. Install and Configuration | 9

Page 17: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

keyStoreFile

The SSL Keystore file for HTTPS connections

<entry key="keyStoreFile">/opt/trafodion/sqcert/server.keystore</entry>

securePassword

The EsgynDB installer generates a self-signed certificate and stores it in a SSL keystore with

this obfuscated password.

<entry key="securePassword">OBF:1iup1igf1x8a1tvj1x8k1idr1irx</entry>

requestHeaderSize

The HTTP request header size in bytes for the embedded jetty server.

<entry key="requestHeaderSize">98304</entry>

3.2.2. Sample configuration file

A sample $TRAF_HOME/dbmgr-2.4.0/conf/config.xml is as shown below.

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">

<properties>

<!-- The JDBC url for the Trafodion/EsgynDB instance that you areconnecting to --><entry key="jdbcUrl">jdbc:t4jdbc://my.esgyndb.server:23400/:</entry>

<!-- The JDBC driver class name for the Trafodion/EsgynDB JDBC driver --><entry key="jdbcDriverClass">org.trafodion.jdbc.t4.T4Driver</entry>

<!-- Minimum number of connections for jdbc connection pool --><entry key="minPoolSize">2</entry>

<!-- Max number of connections for jdbc connection pool --><entry key="maxPoolSize">8</entry>

<!-- Connection timeout in seconds for jdbc connections --><entry key="connectionTimeout">60</entry>

<!-- maxIdleTime in seconds for jdbc connection pool --><entry key="maxIdleTime">1200</entry>

EsgynDB Manager User Guide

10 | Chapter 3. Install and Configuration

Page 18: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

<!-- Max number of statements for jdbc statement caching --><entry key="maxStatementsCache">100</entry>

<!-- The Admin User ID used by DBManager for its internal queries--><entry key="adminUserID">DB__ADMIN</entry>

<!-- The Admin User's password--><entry key="adminPassword">OBF:1sov1sov</entry>

<!-- Session Timeout in minutes. Your DB Manager client browser sessionto the DB Manager server will be timed out after this interval andyou will be asked to login again --><entry key="sessionTimeoutMinutes">120</entry>

<!-- The TimeZone name of the EsgynDB server. Enter in canonical time zoneformat like Etc/UTC or America/New_York --><entry key="timeZoneName">America/New_York</entry>

<!-- The Trafodion REST Server URI --><entry key="trafodionRestServerUri">http://my.esgyndb.server:4200</entry>

<!-- The openTSDB HTTP URI--><entry key="openTSDBUri">http://my.esgyndb.server:5242</entry>

<!-- The Bosun Alerts HTTP URI--><entry key="alertsUri">http://my.esgyndb.server:8070</entry>

<!--HTTP read timeout in seconds for external REST calls issued byDB Manager Server --><entry key="httpReadTimeOutSeconds">120</entry>

<!-- The following properties are only required and used by the embeddedjetty server -->

<!--Enable/Disable HTTPS--><entry key="enableHTTPS">true</entry>

<!-- The HTTP Port for the DB Manager embedded jetty server --><entry key="httpPort">4205</entry>

<!-- The HTTPS Port for the DB Manager embedded jetty server --><entry key="httpsPort">4206</entry>

<!-- The SSL keystore file for the EsgynDB Manager embedded jetty server --><entry key="keyStoreFile">/opt/trafodion/sqcert/server.keystore</entry>

<!-- The SSL keystore password for the DB Manager embedded jetty server --><entry key="securePassword">OBF:1iup1igf1x8a1tvj1x8k1idr1irx</entry>

<!-- The HTTP request header size for DB Manager embedded jetty server --><entry key="requestHeaderSize">98304</entry>

</properties>

EsgynDB Manager User Guide

Chapter 3. Install and Configuration | 11

Page 19: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

3.3. Start EsgynDB Manager

3.3.1. When installed using Cloudera Parcels

DB Manager is configured as separate role for the EsgynDB service. When you start EsgynDB

service, DB Manager would also be started. You can also select the instances of the service and

start/restart DB Manager role alone.

3.3.2. When installed using Python installer

When you start EsgynDB using sqstart or trafstart script, DB Manager will be started automatically.

3.3.3. Manual Start of DB Manager

If you make changes to DB Manager configuration, you will need to stop and restart EsgynDB

Manager. You can use the dbmgr.sh script.

$ cd dbmgr-2.4.0/bin./dbmgr.sh start

If the EsgynDB Manager starts successfully, you should see a prompt like below:

2017-11-06_17:17:58: EsgynDB Manager is up and running with pid (17122)

If the start fails, you see a message like this. Check the dbmgr.log for errors.

2017-11-06_17:23:36: Failed to start EsgynDB Manager. Please check the dbmgr log.

3.4. Stop EsgynDB Manager

3.4.1. When installed using Cloudera Parcels

DB Manager is configured as separate role for the EsgynDB service.

Using Cloudera Manager GUI, navigate to the instances of roles for EsgynDB Service, select DB

Manager role and stop.

EsgynDB Manager User Guide

12 | Chapter 3. Install and Configuration

Page 20: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

3.4.2. When installed using Python installer

When you stop EsgynDB using sqstop or trafstop scripts, DB Manager will also be stopped. You can

also use the dbmgr.sh script to stop DB Manager.

3.4.3. Manual Stop of DB Manager

$ cd dbmgr-2.4.0/bin$ ./dbmgr.sh stop2017-11-06_17:23:01: Stopping EsgynDB Manager pid (17122)2017-11-06_17:23:05: Stopped EsgynDB Manager

3.5. Persistence and Fault-tolerance

DB Manager and the manageability tools (OpenTSDB, TCollector and Bosun) are persistent and

fault-tolerant.

Persistence

If the process were to exit for some reason it would be started right back up.

Fault-tolerant

If a node fails, the processes are started on another node.

3.5.1. Persistence for DB Manager and Bosun

When installed using Cloudera Parcels

The DB Manager role within the EsgynDB Service can be marked to be auto-restarted by enabling

the Automatically Restart Process option through Cloudera Manager. If DB Manager process were

to exit abnormally for some reason, the Cloudera supervisord process would automatically restart DB

Manager.

When installed using Python installer

This section only applies when using an instance that was installed using the python

installer. Ignore this section if you are using cloudera parcels.

EsgynDB Manager User Guide

Chapter 3. Install and Configuration | 13

Page 21: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• If EsgynDB is installed via python installer, DB Manager ONLY runs on the primary node in the

cluster. If the node fails, DB Manager is started on a secondary node which then becomes the

primary node.

• Bosun ONLY runs on the primary node in the cluster. If the node fails, Bosun is started on a

secondary node which then becomes the primary node.

• The fault-tolerance and persistence for DB Manager and Bosun is provided by CMON (Cluster

Monitor). CMON only runs on the primary node. It is started and managed by the EsgynDB

monitor process, so CMON is inherently persistent.

CMON reads a list of commands from $TRAF_HOME/sql/scripts/cluster_monitor.cmd file and

executes them every 1 minute.

• The cluster_monitor.cmd file has a command to check and start DB Manager.

$DBMGR_INSTALL_DIR/bin/dbmgr.sh watch

With the watch option, the dbmgr.sh script first checks if DB Manager is running. If DB

Manager is running then the script exits normally, otherwise it starts DB Manager.

• Similarly, the cluster_monitor.cmd file has a command to check and start Bosun.

$MGBLTY_INSTALL_DIR/bosun/bin/runbosun.sh watch

With the watch option, the runbosun.sh script first checks if Bosun is running. If Bosun is

running then the script exits, otherwise it starts Bosun. So by calling this watch command every

1 minute, we are able to keep Bosun persistent.

• If the primary node were to fail, the CMON process would fail over to a secondary node and

that node will become the primary and all the commands from the cluster_monitor.cmd are

executed to start the defined processes on the new primary node.

3.5.2. Persistence for OpenTSDB TSD and TCollector

• OpenTSDB TSD process runs on every node.

• TCollector runs on every node and collects metrics for that node, and the collected metrics are

sent to the TSD running on that local node.

EsgynDB Manager User Guide

14 | Chapter 3. Install and Configuration

Page 22: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• The fault-tolerance and persistence for TSD and TCollector is provided by NMON (Node Monitor).

NMON runs on every node. It is started and managed by the EsgynDB monitor process, so NMON

is inherently persistent.

NMON reads a list of commands from $TRAF_HOME/sql/scripts/node_monitor.cmd file and

executes them every 1 minute.

• The node_monitor.cmd file has a command to check and start TSD (OpenTSDB).

$MGBLTY_INSTALL_DIR/opentsdb/bin/tsd.sh watch

With the watch option, the tsd.sh script first checks if TSD is running. If TSD is running then

the script exits, otherwise it starts TSD.

• Similarly, the node_monitor.cmd file has a command to check and start TCollector.

$MGBLTY_INSTALL_DIR/tcollector/startstop watch

With the watch option, the startstop script first checks if TCollector is running. If TCollector is

running then the script exits, otherwise it starts TCollector.

3.6. Log settings

DB Manager uses logback for its logging.

You can edit the dbmgr-2.4.0/conf/logback.xml to change the log file rollover settings or the default

LOG level.

The EsgynDB Manager runtime logs are written to the dbmgr-2.4.0/logs directory.

3.7. Check Status of EsgynDB Manager

To check the state of EsgynDB Manager, run the following command from the bin directory.

$ ./dbmgr.sh status2016-11-06_17:26:26: EsgynDB Manager process is running with pid (21913)

EsgynDB Manager User Guide

Chapter 3. Install and Configuration | 15

Page 23: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

3.8. Display EsgynDB Manager Version

To display the version of EsgynDB Manager, run the following command from the bin directory. (You

can also view the version using the DB Manager GUI)

$ ./dbmgr.sh versionEsgynDB Manager Release 2.4.0 (Branch 0ea1970, Date 12DEC2017)

EsgynDB Manager User Guide

16 | Chapter 3. Install and Configuration

Page 24: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 4. Using EsgynDB Manager

This chapter describes how to connect to EsgynDB Manager and use its features.

4.1. Connecting to EsgynDB Manager

Open a web browser and point to the host name and HTTP port on which EsgynDB Manager is

listening.

http://my.esgyndb.server:4205

If HTTPS is enabled (the default), then the HTTP request is automatically redirected to the HTTPS

port.

https://my.esgyndb.server:4206

4.2. Login

In the Login page, enter a valid EsgynDB database user name and password and click on the Login

button. EsgynDB Manager relies on database authentication and makes a JDBC connection to

EsgynDB engine to authenticate the user.

If multi-tenancy is enabled, you’ll also have an option to enter the tenant name.

4.3. Navigation

To Navigate the UI and access the different features, use the navigation menus at the top of the

screen.

Figure 2. Navigation Menus

EsgynDB Manager User Guide

Chapter 4. Using EsgynDB Manager | 17

Page 25: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

4.4. Notifications Panel

In the top-right corner of the page, you will see a bell icon and whenever there is an asynchronous DB

Manager notification, you’ll see a yellow exclamation mark on it indicating there is a new notification.

When you click on the bell icon, you’ll be shown a list of available notifications with details.

The notifications panel is used to notify that an asynchronous DB Manager operation is complete and

the results are available. The results are added to the notifications panel, only if you have navigated

away from the page where the operation was initiated.

For example: In the Query Workbench page, you run a SQL query and if you stay in that page until

the operation completes, then the success or failure of the execution is displayed in the page. But if

you navigate away from the Query workbench page before the execution is complete, then the

success or failure message is also added to the notification panel.

You can click on the notifications panel anytime to view the results. Clicking on the x mark on the

notification message will remove the message from the notification panel.

These asynchronous notifications are available for the following functions:

• Execute, Explain and Cancel operations in Query Workbench

• Script execution in the Execute SQL Script page

• Cancel Query from the workload pages

4.5. EsgynDB Manager User Guide

You can access an online version of this user guide using the Help -> User Guide navigation menu.

4.6. About

Use the Help -> About navigation menu to view the version of DB Manager and your EsgynDB

server. The page displays the version and license details of the EsgynDB instance you are currently

connected to. When you contact Esgyn for DB Manager technical support, provide the information in

the About page.

EsgynDB Manager User Guide

18 | Chapter 4. Using EsgynDB Manager

Page 26: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

4.7. Log Out

You can click on the user icon at the top right corner of the application and select the Logout option.

4.8. EsgynDB Time-Series Metrics

EsgynDB leverages the Tcollector infrastructure and publishes the following metrics as time series

data points into OpenTSDB.

These metrics can then be queried and graphed as time series charts or used in alert rule templates

for notifications.

Metric Name Description

esgyn.hbase.regionserver Number of region servers in running state.

esgyn.hbase.running Indicates if HBase is up. A value of 1 means upand 0 means down.

esgyn.nodes.up Number of nodes that are up

esgyn.nodes.down Number of nodes that are down

esgyndb.canary.sqlconnect.time Time in milliseconds to open a JDBC connection

esgyndb.canary.sqlread.time Time in milliseconds to execute a select on thecanary table

esgyndb.dtm.configure Number of DTM processes that are down

esgyndb.dtm.running Number of DTM processes that are up

esgyndb.dtm.down Number of DTM processes that are down

esgyndb.dtm.txnaborts Number of transaction aborts. This is a cumulativecounter since the last sqstart. The delta can becomputed in the TSD query.

esgyndb.dtm.txnbegins Number of transaction begins. This is acumulative counter since the last sqstart. Thedelta can be computed in the TSD query.

esgyndb.dtm.txncommits Number of transaction committed. This is acumulative counter since the last sqstart. Thedelta can be computed in the TSD query.

esgyndb.mxosrvr.configure Number of configured master executor processes

esgyndb.mxosrvr.running Number of master executor processes that are up

esgyndb.mxosrvr.down Number of master executor processes that aredown

esgyndb.dcsmaster.configure Number of configured DCS master processes

esgyndb.dcsmaster.running Number of DCS master processes that are up

esgyndb.dcsmaster.down Number of DCS master processes that are down

EsgynDB Manager User Guide

Chapter 4. Using EsgynDB Manager | 19

Page 27: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Metric Name Description

esgyndb.mxosrvr.aggrstat.total_selects Total number of completed select statements

esgyndb.dcsserver.configure Number of configured DCS server processes

esgyndb.dcsserver.running Number of DCS server processes that are up

esgyndb.dcsserver.down Number of DCS server processes that are down

esgyndb.rms.configure Number of configured RMS processes

esgyndb.rms.running Number of RMS processes that are up

esgyndb.rms.down Number of RMS processes that are down

esgyndb.mxosrvr.aggrstat.total_completed_stmts Total number of completed statements

esgyndb.mxosrvr.aggrstat.total_rows_retrieved Total number of rows retrieved

esgyndb.mxosrvr.aggrstat.total_num_rows_iud Total number of rows inserted/updated/deleted

esgyndb.mxosrvr.aggrstat.total_inserts Total number of completed insert statements

sgyndb.mxosrvr.aggrstat.total_updates Total number of completed update statements

esgyndb.mxosrvr.aggrstat.total_deletes Total number of completed delete statements

esgyndb.mxosrvr.aggrstat.total_ddl_stmts Total number of completed DDL statements

esgyndb.mxosrvr.aggrstat.total_util_stmts Total number of completed SQL util statements

esgyndb.mxosrvr.aggrstat.total_catalog_stmts Total number of completed catalog statements

EsgynDB Manager User Guide

20 | Chapter 4. Using EsgynDB Manager

Page 28: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 5. Dashboard

The dashboard page displays the status of the EsgynDB services, nodes, active sessions and system

performance as time-series charts for key system and HBase metrics.

The dashboard page by default auto-refreshes every 30 seconds and displays the more current

status. You can change the time window or turn OFF auto-refresh using the Auto Refresh drop-down

control. You can also use the Actions > Refresh menu to force a refresh anytime.

If you select a different time range using the Custom option, then you see the system metrics as of

that end time.

Figure 3. Dashboard

5.1. Service Status

The service status displays the status of the core EsgynDB services.

For each service, you can see the number of configured processes, the number of actual running

processes, the number of down processes if any.

• The status icon is green if all configured servers are up.

• The status icon is Yellow (Warning) if the number of actual servers is not equal to the configured

EsgynDB Manager User Guide

Chapter 5. Dashboard | 21

Page 29: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

servers.

• The status icon is RED (Error) if actual server count is 0 or if the actual servers are < 30% of the

configured servers.

A tooltip on the status icon displays down process information if there are any. You can also export

the data to a spreadsheet or clipboard. The service status information is provided by the EsgynDB

REST Server which invokes the trafcheck script.

Click on the zoom-in icon to open a drill-down page and view the service status in a larger window.

5.2. Node Status

The node status reports a summary of the number of EsgynDB nodes that are UP and/or DOWN.

This information is provided by the EsgynDB REST Server which invokes the trafnodestatus script.

Click on the zoom-in icon to open a drill-down page and view the status of individual nodes. You can

use the search filter or column level filter to quickly search for specific nodes.

5.3. Active Sessions

The active sessions widget reports the number of active connections/sessions to EsgynDB.

If you click on the zoom-in icon or on the active session count hyperlink, you’ll be taken to the

Connectivity page that displays the details of the active sessions. You can see which application/user

is currently connected.

5.4. Transaction Counts

A time series chart to show the number of EsgynDB transaction begins, commits and aborts across

all nodes.

The chart uses the OpenTSDB metrics esgyndb.dtm.txnaborts, esgyndb.dtm.txnbegins,

esgyndb.dtm.txncommits. These metrics are collected and published every 5 minutes.

Click on the zoom-in icon to open a drill-down page and view the time-series data for each of the

transaction metrics.

EsgynDB Manager User Guide

22 | Chapter 5. Dashboard

Page 30: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

5.5. Canary Response

The response times from an EsgynDB database canary check. The metrics displayed are the time

taken to open a JDBC connection, and time taken to read (select) from the canary table.

The chart uses the OpenTSDB metrics esgyndb.canary.sqlconnect.time and

esgyndb.canary.sqlread.time. These metrics are collected and published every 5 minutes.

Click on the zoom-in icon to open a drill-down page and view the time-series data for the individual

canary metric.

5.6. CPU Busy %

The average/min/max CPU Busy % across all nodes. It is easy to spot skews if there is big variations

between avg/min/max.

The chart uses OpenTSDB metric proc.stat.cpu_percent.

Click on the zoom-in icon to open a drill-down page and view the % CPU Busy on each node. Each

line in the drill-down graph represents a node.

5.7. IO Waits

The average/min/max IO Wait time across all nodes.

The chart uses OpenTSDB metric proc.stat.cpu{type=iowait}.

Click on the zoom-in icon to open a drill-down page and view the IO Wait time for each node. Each

line in the drill-down graph represents a node.

5.8. Free Memory %

The average/min/max free memory % across all nodes.

The chart uses OpenTSDB metric proc.meminfo.free_percent.

Click on the zoom-in icon to open a drill-down page and view the % free memory on each node.

Each line in the drill-down graph represents a node.

EsgynDB Manager User Guide

Chapter 5. Dashboard | 23

Page 31: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

5.9. Disk Space Used %

The average/min/max disk space used percentage across all nodes.

The chart uses OpenTSDB metric df.bytes.percentused.

Click on the zoom-in icon to open a drill-down page and view the disk usage % for each node. Each

line in the drill-down graph represents a node.

5.10. Network IO

The average/min/max network IO (In/Out) measured in MB.

The chart uses OpenTSDB metric proc.net.bytes.

Click on the zoom-in icon to open a drill-down page and view the average network IO on each node.

Each line in the drill-down graph represents a node.

5.11. Regionserver Memory Use

The average/min/max memory (MB) used by the regionservers in the cluster.

The chart uses OpenTSDB metric hbase.regionserver.jvmmetrics.MemHeapUsedM.

Click on the zoom-in icon to open a drill-down page and view the average memory used by each

regionserver/node. Each line in the drill-down graph represents a node.

5.12. GC Time

The average/min/max JVM garbage collection time in milliseconds.

The chart uses OpenTSDB metric hbase.regionserver.jvmmetrics.GcTimeMillis.

Click on the zoom-in icon to open a drill-down page and view the average GC time for each node.

Each line in the drill-down graph represents a node.

5.13. Memstore Size

The total memstore size (MB) of the different regions in the cluster.

EsgynDB Manager User Guide

24 | Chapter 5. Dashboard

Page 32: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

The chart uses OpenTSDB metric hbase.regionserver.regions.memStoreSize.

Click on the zoom-in icon to open a drill-down page and view the total memstore file size in each

node. Each line in the drill-down graph represents a node.

5.14. Drill-down details

All the panels in the dashboard page support drill-downs. The drill-downs help you view the dataset

better and for the system metric graphs, you can view the time series data on a per node basis.

In each of the dashboard panels, you should see this double arrow icon as highlighted here.

Figure 4. Dashboard Drilldown Menu

• In the drill-down page, you can view the time-series data on a per node basis.

• You can include or exclude individual nodes from the display by using the checkboxes on the node

names.

• If the graph is a multi-metric graph, like shown in the example below, you can use the Metric Name

selector to switch between metrics.

• As you move the mouse over the graphs, you’ll see a red spline line follow the graph and metric

values for the corresponding data point are displayed next to the node names.

EsgynDB Manager User Guide

Chapter 5. Dashboard | 25

Page 33: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Figure 5. Dashboard Drilldown Graph

EsgynDB Manager User Guide

26 | Chapter 5. Dashboard

Page 34: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 6. Workloads

This chapter describes how to monitor workloads (queries) that are currently active and also how to

analyze queries that completed in the past. These workloads include all EsgynDB queries including

both user and system queries.

6.1. Monitoring

6.1.1. Active Workloads

The active workloads page displays the list of EsgynDB queries that are currently active. This

includes queries that are currently executing and queries that completed within the last 30 seconds.

The information is obtained from the EsgynDB Runtime Manageability Service.

You can access the Active Workloads page using the Workloads >Active navigation menu.

The list of active queries is displayed with the following information:

Last Activity Seconds

A positive number shows how long the query has been active and is still executing. A negative

number shows how long since the query completed execution. Queries remain in RMS memory

for 30 seconds after completion.

Query ID

The unique identifier for the query. The Query ID is displayed as a hyper-link that will let you

drill-down to view the detailed runtime statistics for the query.

Execution State

The current state of the query. Valid values are OPEN, EXECUTE, FETCH, DEALLOCATED or

CLOSE.

Query Text (preview)

The first 255 characters of the SQL statement of the query.

Full Text Length

The length of the full query text.

EsgynDB Manager User Guide

Chapter 6. Workloads | 27

Page 35: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Node ID

The Node where the master executor processing the query is running.

Process ID

The Process ID of the master executor processing the query.

User

The User who initiated the query.

Tenant

The user has logged as this tenant to run the query. This column is only displayed when multi-

tenancy feature is enabled.

Profile

The workload profile assigned to the session in which the query is executing. See Profiles for

details.

SLA

The workload SLA mapped to the session in which the query is executing. See SLAs for details.

You can click on the Query ID hyper-link to drill-down into the details of that specific query.

The page by default refreshes every 30 seconds and displays the current active queries. Use the

Action > Refresh menu to manually refresh the list of active queries.

6.1.2. Active Query Details

The active query details page displays a summary of the runtime metrics as well the operator level

statistics for the selected query. The metrics are obtained from the EsgynDB Runtime Manageability

Service.

The metrics that have changed since the last refresh for this query, are highlighted in blue color, so

you can observe how the query is progressing. For example, if the CPU time is increasing, you know

the query is progressing. If the CPU time does not increase, it indicates a query expression operator

is waiting for some other resource.

The page is set to auto-refresh every 30 seconds by default. You can also use the Action > Refresh

menu to refresh the page and reload the latest metrics for the query.

EsgynDB Manager User Guide

28 | Chapter 6. Workloads

Page 36: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Click on the Explain Plan button to view the explain plan for this query.

Use the Action > Cancel menu to cancel the executing query.

6.1.3. Historical Workloads

You can use the historical workloads page to view analyze queries that completed in the past.

This includes queries that completed in the past and currently active queries that have run longer than

a pre-configured threshold.

The threshold is defined by the dcs.server.user.program.statistics.limit.time property in dcs-

site.xml. If this property is not explicitly set, then the default value of 60 seconds applies.

Queries that exceed this run threshold are recorded in the EsgynDB manageability repository tables

in the "_REPOS_" schema. The historical workloads page fetches the query summary from the

"_REPOS_".METRIC_QUERY_TABLE.

You can access the Historical Workloads page using the Workloads >Historical navigation menu.

• By default, the page displays the queries that either started or completed in the last 1 hour or is

still executing.

• You can use the Filters option to change your search parameters. In the filter dialog, you can

specify different time range or use additional filters like specific application names or user names

or queries that match a particular query text. All the filter predicates are applied using AND

operator, meaning that only queries that match all the filter predicates are returned.

• Additionally, you can use the search bar above the grid to filter rows displayed in the grid. The

search string will match against all columns in the grid. For example, the query signature column

is a numeric hash of the query text after filtering out the literal values. So the query signature

should compute to the same value every time the query runs. Use the query signature id filter, you

can easily see all past runs of the query and compare the performance of each run.

• You’ll also see graphs for Top 5 queries that have the longest run times, most memory usage,

most CPU usage and most disk IOs.

• If you click on the data points on the Top 5 Graphs, the corresponding query is selected in the grid

and you can see the query details.

• Also when you click on the Top 5 graphs, the grid is sorted by the corresponding column in the

grid. For example if you click on the Top 5 Memory graph, the list of workloads are sorted by the

EsgynDB Manager User Guide

Chapter 6. Workloads | 29

Page 37: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Memory Used column in descending order such the queries using the most memory are displayed

first.

Use the Action > Refresh action menu to refresh the page.

You can click on the Query ID hyper-link to drill-down into the details of a particular query.

6.1.4. Historical Query Detail

The historical query details page displays the details for the selected query. The details are grouped

together as summary, connection metrics, compile time metrics and run time metrics. The compile

metrics includes estimates from the compiler. The runtime metrics are the actuals reported by the

Runtime Manageability Service. You can compare the compile time metrics to the run time metrics

and analyze the query behavior.

Click on the Explain button to view the explain plan for this query.

Use the Action > Cancel menu to cancel the query, if the query is a long running query and is still

executing.

6.1.5. Query Plan

The Query Plan page displays the Query ID, the query text, a visual explain plan and a textual explain

plan.

The tables used by the query are displayed with hyper-links. This links will navigate you to the

Database area where you can view the table details like column information or the histogram stats on

the table.

Use the Action > Refresh menu to refresh the page and reload the visual and textual plans.

If you double-click on a specific node in the explain tree, you will see the metrics for that specific

operator in a pop-up dialog.

You can use the Action > Cancel menu to cancel the query if the query is still executing.

6.1.6. Cancel Query

You can invoke the cancel action from any of the workload pages.

EsgynDB Manager User Guide

30 | Chapter 6. Workloads

Page 38: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

If you are in the Active Workloads page, you can use the check box for each row to multi-select one or

more queries to be canceled.

If the query is in EXECUTING state, a cancel request will be submitted to EsgynDB engine. If the

user has the necessary SQL privileges to cancel the query, the engine would schedule a cancel of the

query.

The cancel is done asynchronously. If you are in the same page, you’ll see a success or failure

message once the action completes. If you moved away from that page and navigated to a different

page, then the cancellation results are shown via the notifications panel. See Notifications Panel for

details.

6.2. Workload Configuration

Workload Configuration lets you define different runtime profiles and thresholds for application

queries.

This can also help with multi-tenancy by allowing the administrators to define different profiles for

different applications or users.

You can access the configuration page using the Workloads > Configuration navigation menu.

6.2.1. Profiles

A Workload profile defines the connection or session attributes and all the queries that execute within

that session inherit the same runtime profile.

The Workload profile lets you :

• Specify some SET statements that can influence the session runtime behavior.

• Specify control statements that can provide hints to the compiler and executor to influence the

query plan and execution. For example, you can control the degree of parallelism.

• If you are running EsgynDB without multi-tenancy feature, then these next options are available.

• Specify the list of nodes to which the connection has to be made.

• You can also specify how the node selection should be enforced.

• If you choose the Preferred option, then the DCS Master will first try to find an available

MXOSRVR from the specified list of nodes. If the all the mxosrvrs are occupied, then DCS

EsgynDB Manager User Guide

Chapter 6. Workloads | 31

Page 39: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Master will continue to look for an available mxosrvr on the remaining nodes.

• If you choose the Restrict option, the DCS Master will ONLY allow a mxosrvr from the

specified list of nodes. If there are no more mxosrvrs available in the specified list of nodes,

then the connection request is rejected with an error that no more servers are available to

connect.

• If you running EsgynDB with multi-tenancy feature, the node selection properties cannot be set

and are not displayed. The node selection is done implicitly based on the compute units allocated

for the tenant.

6.2.2. View Profiles

To view the list of defined profiles, use the Workloads > Configuration navigation menu and select

the Profiles tab.

The list of profiles is displayed with the following information:

Name

The profile name. The profile name is a displayed as an hyper-link. Clicking on the hyper-link

allows you to edit the profile attributes.

CQDs

The control query defaults defined if any.

SETs

Any defined SET statements.

Hosts

The list of node names where session connections should be made. This is only displayed if

multi-tenancy is NOT enabled.

Selection Mode

Preferred or Restrict mode of mxosrvr selection from the list of nodes. This is only displayed if

multi-tenancy is NOT enabled.

Last Update Time

When the profile was last modified.

EsgynDB Manager User Guide

32 | Chapter 6. Workloads

Page 40: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Use the Add Profile button to add a new workload profile definition.

Use the Action > Refresh menu to refresh the list of profiles.

6.2.3. Add Profile

When you click on the Add Profile button, you will see a pop-up dialog that lets you create a new

workload profile.

EsgynDB Manager User Guide

Chapter 6. Workloads | 33

Page 41: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Figure 6. Profile Details

• Enter the profile name

• As needed, specify a list of control query statements, each separated by a semi-colon.

• As needed, specify a list of SET statements, each separate by a semi-colon.

EsgynDB Manager User Guide

34 | Chapter 6. Workloads

Page 42: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• If multi-tenancy is not enabled, you can optionally specify a list of nodes to which the session

connection needs to be made. If multi-tenancy is enabled, the host selection controls are not

available and node selection is implicitly done based on the compute unit allocations.

• If multi-tenancy is not enabled, you can also select how the mxosrvr selection from the list of

nodes should be enforced.

• Click on Apply button to create the workload profile.

6.2.4. Alter Profile

Click on the profile name hyper-link in the list of profiles to alter the profile attributes. Except for the

profile name, you can modify the remaining attributes and click on Apply button to persist the

changes.

You cannot alter the system created profile defaultProfile.

Any changes to profile settings are picked up the next time a new connection is

mapped to the profile. Existing connections that are mapped to that profile continue

to use the old attributes of the profile.

6.2.5. Delete Profile

In the grid that lists all profiles, the last column displays an delete icon. To delete a profile, just click on

its corresponding delete icon. Click Yes in the confirmation dialog to delete the profile.

You cannot delete the system created profile defaultProfile.

You cannot delete a profile that is used by a SLA.

6.2.6. SLAs

Service Level Agreements (SLAs) allow you to define expected thresholds from an application or

tenant perspective. For example you can define the level of concurrency. SLAs also serve the

purpose of mapping user sessions to specific workload profiles to enforce the runtime attributes

defined in the profile.

EsgynDB Manager User Guide

Chapter 6. Workloads | 35

Page 43: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

6.2.7. View SLAs

To view the list of defined SLAs, use the Workloads > Configuration navigation menu and select the

SLAs tab.

The list of SLAs is displayed with the following information:

Name

The SLA name. The SLA name is a displayed as an hyper-link. Clicking on the hyper-link allows

you to edit the SLA attributes.

Is Active

Indicates if the SLA is currently active or disabled. Inactive SLAs will be ignored when trying to

map connection requests to workload profiles.

OnConnect Profile

When the assigned mxosrvr goes from available to connecting state, the CQDs and SETs in the

OnConnect profile are applied.

OnDisconnect Profile

When the mxosrvr session disconnects, the CQDs and SETs in the OnDisconnect profile are

applied.

Max. Concurrent Sessions

The maximum concurrent active sessions allowed for any connections mapped to this SLA.

Last Update Time

When the SLA was last modified.

Use the Add SLA button to add a new workload SLA definition.

Use the Action > Refresh menu to refresh the list of SLAs.

6.2.8. Add SLA

When you click on the Add SLA button, you will see a pop-up dialog that lets you create a new

workload SLA.

EsgynDB Manager User Guide

36 | Chapter 6. Workloads

Page 44: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Figure 7. SLA

• Enter the SLA name

• Set the Is Active to Yes or No based on whether you want the SLA to be active immediately.

• Select a OnConnect profile from the drop-down list. When the assigned mxosrvr goes from

available to connecting state, the CQDs and SETs in this profile are applied in the session.

• Select a OnDisconnect profile drop-down list. When the mxosrvr session disconnects, the CQDs

and SETs in the OnDisconnect profile are applied.

• Optionally specify a maximum session count. If this value is not specified, then there is no session

EsgynDB Manager User Guide

Chapter 6. Workloads | 37

Page 45: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

limit. If you set it to 0, no sessions will be allowed for this SLA. Any positive number sets the max

session count.

• Click on Apply button to create the SLA.

6.2.9. Alter SLA

Click on the SLA name hyper-link in the list of SLAs to alter the SLA attributes. Except for the SLA

name, you can modify the remaining attributes and click on Apply button to persist the changes.

You cannot delete the system created mapping defaultSLA.

Any changes to SLA settings are picked up the next time a new connection is

mapped to the SLA. Existing connections that are mapped to that SLA continue to

use the old attributes of the SLA.

6.2.10. Delete SLA

In the grid that lists all SLAs, the last column displays an delete icon. To delete a SLA, just click on the

corresponding delete icon. Click Yes on the confirmation dialog to delete the SLA.

You cannot delete the system created profile defaultSLA.

You cannot delete a SLA that is used by in a mapping.

6.2.11. Mappings

Maps database connections to specific SLAs and profiles through mapping rules based on the

connection attributes.

You can use the connection attributes like application name, user name, client IP address and host

name and define different mappings for different applications and/or users. You can also specify an

unique mapping order number between 1 and 99. If multiple mappings match the connection request,

the DCS Master uses this mapping order number to return the first match.

If multiple mapping attributes are used then all attributes have to match in the

connection request.

Mappings can be also deactivated and re-activated. DCS Master will only consider the active

EsgynDB Manager User Guide

38 | Chapter 6. Workloads

Page 46: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

mappings.

6.2.12. View Mappings

To view the list of defined mappings, use the Workloads > Configuration navigation menu and

select the Mappings tab.

The list of mappings is displayed with the following information:

Name

The Mapping name. The Mapping name is a displayed as an hyper-link. Clicking on the hyper-

link allows you to edit the mapping attributes.

Tenant Name

The tenant name to match in the DCS connection request. This is only displayed if multi-

tenancy feature is enabled in EsgynDB.

User Name

The user name to match in the DCS connection request.

Application Name

The application name to match in the DCS connection request.

Session Name

The session name to match in the DCS connection request.

Client IP Address

The client IP address as detected by the DCS Master in the DCS connection request.

Client Host Name

The client workstation name to match in the DCS connection request.

SLA

The SLA name to which this mapping is mapped to.

Is Active

Indicates if the mapping is currently active or disabled.

EsgynDB Manager User Guide

Chapter 6. Workloads | 39

Page 47: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Order Number

The order number in which DCS Master tries to match the mappings. Starting from 1 to 99, the

first mapping that matches the connection request attributes is selected by DCS Master.

Last Update Time

When the mapping was last modified.

Use the Add Mapping button to add a new workload Mapping definition.

Use the Action > Refresh menu to refresh the list of mappings.

6.2.13. Add Mapping

When you click on the Add Mapping button, you will see a pop-up dialog that lets you create a new

workload Mapping.

EsgynDB Manager User Guide

40 | Chapter 6. Workloads

Page 48: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Figure 8. Mapping

• Enter the Mapping name

• Select a SLA from the drop-down list. If DCS Master selects this mapping, the OnConnectProfile

of this SLA is applied to the session.

• Select if the Mapping should be created in an active state or disabled state.

• Enter a unique order number as the search order.

• Enter one or more mapping criteria to match against the DCS connection request. The Tenant

Name property is available only when multi-tenancy is enabled and it will display a list of tenants

configured in the system.

• Click on Apply button to create the mapping.

EsgynDB Manager User Guide

Chapter 6. Workloads | 41

Page 49: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Note that all specified mapping criteria have to match against the connection

request for this mapping to get selected.

6.2.14. Alter Mapping

Click on the mapping name hyper-link in the list of mappings to alter the mapping attributes. Except

for the Mapping name, you can modify the remaining attributes and click on Apply button to persist

the changes.

Any changes to the mapping settings are picked up the next time a new connection

is received.

You cannot alter the system created mapping defaultMapping.

6.2.15. Delete Mapping

In the grid that lists all mappings, the last column displays an delete icon. To delete a mapping, just

click on the corresponding delete icon. Click Yes on the confirmation dialog to delete the mapping.

You cannot delete the system created mapping defaultMapping.

6.2.16. Profile/SLA/Mapping at Runtime

This section explains how the workload profile, SLA and mappings all come together at runtime.

• When a client connection request comes to DCS Master, it will use the attributes in the connection

request and try to find a matching mapping definition that is currently active, starting with the

mapping with order number 1 all the way to 99.

• Once a mapping is matched, then DCS Master looks at the SLA defined in the mapping. If the

SLA is marked as inactive, it is ignored and DCS will try to look for the next available mapping that

matches that has an active SLA.

• DCS Master maintains a HashMap of previously used mxosrvrs for specific user and sla. If the

mapped SLA has previously used mxosrvrs from the nodes defined in the mapped profile, that

are now in available state, a mxosrvr is selected randomly from that list to serve the connection

request.

EsgynDB Manager User Guide

42 | Chapter 6. Workloads

Page 50: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• If the mapped SLA has no previously used mxosrvrs or if none of the previously used mxosrvrs

are in an available state, DCS Master then picks an available mxosrvr from the list of hosts

specified in the mapped profile.

• Once a mxosrvr is assigned to the connection, CQDs and SETs in the mapped profile are

executed on the mxosrvr session

• If no mapping is matched, the connections will use the defaultSLA and defaultProfile and any

available mxosrvr is assigned to serve the connection request.

6.2.17. Debugging mapping issues

If you are seeing that the mapping you defined is not being triggered and connections are being

mapped to incorrect sla and profile, you can set DEBUG level logging for DCS.

If the dcs-2.4.0/conf/log4j.properties file, uncomment the 2 lines below and enable DEBUG logging

for the 2 class files.

# Uncomment this line to enable tracing of DcsMasterlog4j.logger.org.trafodion.dcs.master.DcsMaster=DEBUGlog4j.logger.org.trafodion.dcs.master.mapping=DEBUG

Save the file and restart DCS. Now when you make a connection, the DCS Master log will contain

debug messages that show the incoming connection request attributes and how DCS Master

attempted to match a mapping. These log entries will give a clue why the mapping is not getting

triggered.

EsgynDB Manager User Guide

Chapter 6. Workloads | 43

Page 51: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 7. Logs

The Logs page displays the log and event messages from the various EsgynDB processes. The logs

are fetched using the logs Table Mapping Function which scans and filters the log entries from all the

EsgynDB log files on all nodes and provides a single consolidated time sequenced view.

Figure 9. Logs

7.1. Log Summary

The Log details include the following:

Time

The time when the log event occurred

Severity

The event severity (FATAL/ERROR/WARN/INFO/DEBUG)

Node

The Node on which the event was logged

Component

The EsgynDB component name reporting the event

EsgynDB Manager User Guide

44 | Chapter 7. Logs

Page 52: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Process

The component process name reporting the event

Error Code

Error code if applicable. SQL Errors have error codes.

Message

The event message text

The logs page by default auto-refreshes every 5 minutes. You can change this refresh time window or

turn OFF auto-refresh using the Auto Refresh drop-down menu.

You can use the Logs filter to look for log entries from specific times or processes. You can also use

the column level filter in the grid to filter entries based on search filters on multiple columns.

7.2. Log Filter

By default, the logs page displays the log events with severity levels Fatal, Error, Warning in the last

1 hour.

You can use the Filters button to change this and specify custom filters for your search. The available

filters are:

Time Range

Select one of the pre-define time ranges or use the custom time range and provide a start and

end time. Only the log entries that are within this time range are fetched and displayed.

Severity

By default only Fatal, Error, Warning severity log messages are displayed. You can select the

severity levels by selecting the required checkboxes.

Component Names(s)

If are you only interested in specific components, check those component name checkboxes.

The table below describes the component names:

Component Name Description

MXOSRVR Master Executor

DCS Connectivity Servers

EsgynDB Manager User Guide

Chapter 7. Logs | 45

Page 53: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Component Name Description

REST REST Server

SQL SQL

SQL.COMP Compiler

SQL.ESP Executor Server Process

SQL.EXE Master Executor SQL

SQL.LOB SQL Large Objects

SQL.SSCP Runtime Manageability Service

SQL.SSMP Runtime Manageability Service

SQL.UDR User Defined Routines

MON Monitor

MON-SNMP Monitor SNMP

TM Transaction Monitor

WDG Watchdog

WDG-SNMP Watchdog SNMP

PSD Process Startup Daemon

BACKUP_RESTORE Backup Restore

DBSECURITY Database Security

KERBEROS Kerberos

Process Name(s)

You can also filter on specific process names by entering the process name as comma

separated list.

Node Name

You can also filter on specific nodes by selecting the node name from the drop-down list.

Error Code(s)

You can also filter on specific error codes by entering the error code as comma separated list.

You can only enter non-zero integer values.

Message

You can also provide a partial message text and all event messages that contain this text will be

selected.

Max Fetch Rows

By default, only the first 5000 rows that match the filter criteria is returned. You can increase this

row count by using the drop-down values.

EsgynDB Manager User Guide

46 | Chapter 7. Logs

Page 54: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 8. Database

The Database page allows you browse the EsgynDB schemas and the schema objects and their

attributes.

You can use the hyperlinks on the object names or the bread crumbs at the top of the page to

navigate between the different sub-pages displaying database objects and their attributes.

8.1. Schemas

The schemas list displays all the EsgynDB schemas and their attributes.

Name

The name of the schema. The schema name is displayed as a hyperlink and allows you

drilldown into the schema details.

Owner

The database user that owns the schema.

CreateTime

The time the schema was created.

ModifiedTime

The time the schema was last modified.

8.2. Schema Details

From the Schemas page, you can click on the hyperlink on a specific schema to view the details.

8.2.1. Attributes

The attributes tab displays the schema attributes like the name, the owner, create time and modified

time.

8.2.2. DDL

The DDL tab displays the CREATE SCHEMA statement used to create this schema. This output is

EsgynDB Manager User Guide

Chapter 8. Database | 47

Page 55: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

obtained using the SHOWDDL statement.

8.2.3. Privileges

The Privileges tab displays all the SQL privilege information for the schema. It shows the grantee and

grantor names and the list of privileges for the grantee.

8.3. Tables

In the schema details page, you can click on the Tables link to view all the tables in that schema.

Table Name

The name of the table. The table name is displayed as a hyperlink and allows you drilldown into

the table details.

Owner

The database user that owns the table.

CreateTime

The time the table was created.

ModifiedTime

The time the table was last modified.

KeyLength

The length of the key columns.

RowTotalLength

The total length of the table row. Indicates how wide the table is.

Number Salt Partitions

For a partitioned table, it shows the number of salt partitions. For non-partitioned tables, this

value is 0.

Region Count

The total number of HBase regions for the table. This value can be higher than the number of

salt partitions because of region splits.

EsgynDB Manager User Guide

48 | Chapter 8. Database

Page 56: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Store File Size

The size of the store files in MB.

MemStore Size

The size of the memstore in MB.

Read Requests Count

The cumulative count of read requests or scans since the last region flush or HBase restart.

Write Requests Count

The cumulative count of write requests or puts since the last region flush or HBase restart.

8.4. Table Details

From the Tables page, you can click on the hyperlink on a specific table to view the details.

8.4.1. Attributes

The attributes tab displays the table attributes.

8.4.2. Columns

The Columns tab displays the details about the table columns including column name, data type, size

and default values.

8.4.3. Regions

The Regions tab displays the HBase region details for all the HBase regions that make up this table.

8.4.4. Statistics

The Statistics tab displays the histogram statistics for the table, if update statistics have been run on

the table. You can use the last update stats timestamp column to see how outdated the table statistics

are and choose to update the statistics for the table.

EsgynDB Manager User Guide

Chapter 8. Database | 49

Page 57: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

8.4.5. DDL

The DDL tab displays the CREATE TABLE statement used to create this table. This output is obtained

using the SHOWDDL statement.

8.4.6. Privileges

The Privileges tab displays all the SQL privilege information for the table. It shows the grantee and

grantor names and the list of privileges for the grantee.

8.4.7. Indexes

The Indexes tab displays all the indexes defined on the table.

8.4.8. Usage

The Usage tab displays all the SQL objects that use this table. For example, you can see all the SQL

Views that use this table.

8.5. Views

In the schema details page, you can click on the Views link to view all the views in that schema.

View Name

The name of the schema. The view name is displayed as a hyperlink and allows you drilldown

into the view details.

Owner

The database user that owns the view.

CreateTime

The time the view was created.

ModifiedTime

The time the view was last modified.

CheckOption

EsgynDB Manager User Guide

50 | Chapter 8. Database

Page 58: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Specifies that no row can be inserted or updated in the database through the view unless the

row satisfies the view definition—that is, the search condition in the WHERE clause of the query

expression must evaluate to true for any row that is inserted or updated. This option is only

allowed for updatable views. Refer to the EsgynDB SQL Reference manual for more details.

Updateable

Indicates if the view is updateable. Single table views can be updatable. Multi-table views

cannot be updatable. Refer to the EsgynDB SQL Reference manual for more details.

Insertable

Indicates if the view is insertable. Single table views can be insertable. Multi-table views cannot

be insertable. Refer to the EsgynDB SQL Reference manual for more details.

8.6. View Details

From the Views page, you can click on the hyperlink on a specific view to see its details.

8.6.1. Attributes

The attributes tab displays the view attributes.

8.6.2. Columns

The Columns tab displays the details about the view columns.

8.6.3. DDL

The DDL tab displays the CREATE VIEW statement used to create this view. This output is obtained

using the SHOWDDL statement.

8.6.4. Privileges

The Privileges tab displays all the SQL privilege information for the view. It shows the grantee and

grantor names and the list of privileges for the grantee.

EsgynDB Manager User Guide

Chapter 8. Database | 51

Page 59: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

8.6.5. Usage

The Usage tab displays all the SQL objects that use this view and also all the SQL objects used by

this view. For example, this view can have a child view. This page will display the parent base table as

well as the child view. The Usage_Type column shows either 'Uses' or 'Used By' to indicate the

relation of the view to the displayed object.

8.7. Indexes

In the schema details, page you can click on the Indexes link to view all the indexes in that schema.

Index Name

The name of the index. The index name is displayed as a hyperlink and allows you drilldown into

the index details.

Owner

The database user that owns the index.

CreateTime

The time the index was created.

ModifiedTime

The time the index was last modified.

Table Name

The name of the base table on which the index is defined. The table name is displayed as a

hyperlink and allows you drilldown into the table details.

Is Unique

Indicates if the index is a Unique or Non-Unique index.

Key Col. Count

The number of columns that make up the key for the index. For non-unique index, this includes

the columns defined in the index as well as the base table key columns.

Non Key Col. Count

For a unique index, this count shows the number of base table key columns that are not part of

EsgynDB Manager User Guide

52 | Chapter 8. Database

Page 60: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

the index key.

8.8. Index Details

From the Indexes page, you can click on the hyperlink on a specific index to view the details.

8.8.1. Attributes

The attributes tab displays the index attributes.

8.8.2. Regions

The Regions tab displays the HBase region details for all the HBase regions that make up this index.

8.8.3. DDL

The DDL tab displays the CREATE INDEX statement used to create this index. This output is

obtained using the SHOWDDL statement.

8.9. Libraries

In the schema details, page you can click on the Libraries link to view all the libraries in that schema.

Library Name

The name of the library. The library name is displayed as a hyperlink and allows you drilldown

into the library details.

Owner

The database user that owns the library.

CreateTime

The time the library was created.

ModifiedTime

The time the library was last modified.

Code File Name

The name of the jar or dll that this library encapsulates. The library code file is stored under

EsgynDB Manager User Guide

Chapter 8. Database | 53

Page 61: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

$TRAF_HOME/udr/lib/DB__ROOT.

8.9.1. Create Library

Creating a library is a two-step process. You first deploy the code file to the EsgynDB platform and

then create a library.

You can use the Create Library tool to perform these two steps with a single click. You can access

this tool in two ways.

• In the Libraries page, use the Create Library button.

• Use the Tools -> Create Library navigation menu.

To create a library, do the following:

• Enter a valid schema name in the Schema Name field. If the schema name contains special

characters or you need to preserve the case, you need to delimit the name within double quotes.

The schema name is pre-filled when you navigate to the Create Library tool from the Libraries

page.

• Enter a valid library name in the Library Name field. If the library name contains special

characters or you need to preserve the case, you need to delimit the name within double quotes.

• Use the browse button and select a .jar file or a .dll file on your workstation

• If you are re-using an existing code file or if the create library fails with an error that the code file

already exists, you can check the Overwrite existing code file option and the code file on the

server will be replaced by the selected code file.

• Click on the Create button to create the library.

• The results of the create will be displayed in a success or failure message box.

8.10. Library Details

From the Libraries page, you can click on the hyperlink on a specific library to see its details.

8.10.1. Attributes

The attributes tab displays the library attributes including the full path of the code file on the server.

EsgynDB Manager User Guide

54 | Chapter 8. Database

Page 62: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

8.10.2. DDL

The DDL tab displays the CREATE LIBRARY statement used to create this library. This output is

obtained using the SHOWDDL statement.

8.10.3. Privileges

The Privileges tab displays all the SQL privilege information for the library. It shows the grantee and

grantor names and the list of privileges for the grantee.

8.10.4. Usage

The Usage tab displays all the user defined routines (stored procedures and functions) that use this

library.

8.11. Alter Library

You can alter a library to update the code file. For example, if you have modified the stored procedure

java code and want to update the code file on the server, you can use the Alter library feature to

update the code file.

• Navigate to the Attributes tab of a specific library in the Library Details page.

• Click on the Alter button. It will take to you the Alter Library window.

• The schema name is pre-filled from the Library details page and cannot be changed.

• The library name is pre-filled from the Library details page and cannot be changed.

• Use the browse button and select a .jar file or a .dll file on your workstation.

• If you are re-using an existing code file or if the create library fails with an error that the code file

already exists, you can check the Overwrite existing code file option and the code file on the

server will be replaced by the selected code file.

• Click on the Alter button.

• The results of the alter will be displayed in a success or failure message box.

EsgynDB Manager User Guide

Chapter 8. Database | 55

Page 63: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

8.12. Drop Library

You can drop a library and remove it from the EsgynDB metadata.

• Navigate to the Attributes tab of a specific library in the Library Details page.

• Click on the Drop button to drop the library.

• A success or failure message is displayed.

8.13. Download Library

You can download the code file of library to your local workstation. This is helpful if you want to upload

it another EsgynDB instance.

• Navigate to the Attributes tab of a specific library in the Library Details page.

• Click on the Download button to download the code file to the default downloads folder on your

workstation.

• A success or failure message is displayed.

8.14. Procedures

In the schema details, page you can click on the Procedures link to view all the java stored

procedures in that schema.

Name

The name of the procedure. The procedure name is displayed as a hyperlink and allows you

drilldown into the procedure details.

Owner

The database user that owns the procedure.

CreateTime

The time the procedure was created.

ModifiedTime

The time the procedure was last modified.

EsgynDB Manager User Guide

56 | Chapter 8. Database

Page 64: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Library Name

The name of the library object used by the procedure. The library name is displayed as a

hyperlink and allows you drilldown into the library details.

8.15. Procedure Details

From the Procedures page, you can click on the hyperlink on a specific procedure to see its details.

8.15.1. Attributes

The attributes tab displays the procedure attributes.

8.15.2. DDL

The DDL tab displays the CREATE PROCEDURE statement used to create this procedure. This

output is obtained using the SHOWDDL statement. The DDL output shows the number of IN and

OUT parameters and their data types.

8.15.3. Privileges

The Privileges tab displays all the SQL privilege information for the procedure. It shows the grantee

and grantor names and the list of privileges for the grantee.

8.15.4. Usage

The Usage tab displays the library used by this stored procedure.

8.16. Functions

In the schema details, page you can click on the Functions link to view all the user defined functions

in that schema. This lists both the Scalar Functions and Table Mapping Functions.

Name

The name of the function. The procedure name is displayed as a hyperlink and allows you

drilldown into the function details.

EsgynDB Manager User Guide

Chapter 8. Database | 57

Page 65: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Owner

The database user that owns the function.

CreateTime

The time the function was created.

ModifiedTime

The time the function was last modified.

Function Type

Identifies the type of the function. Scalar Function or Table Mapping Function.

Language Type

Identifies the language in which the function is written.

Library Name

The name of the library object used by the function. The library name is displayed as a hyperlink

and allows you drilldown into the library details.

8.17. Function Details

From the Functions page, you can click on the hyperlink on a specific function to see its details.

8.17.1. Attributes

The attributes tab displays the function attributes.

8.17.2. DDL

The DDL tab displays the CREATE FUNCTION statement used to create this user defined function.

This output is obtained using the SHOWDDL statement. The DDL output shows the number of IN and

OUT parameters and their data types.

8.17.3. Privileges

The Privileges tab displays all the SQL privilege information for the function. It shows the grantee and

grantor names and the list of privileges for the grantee.

EsgynDB Manager User Guide

58 | Chapter 8. Database

Page 66: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

8.17.4. Usage

The Usage tab displays the library used by this function.

EsgynDB Manager User Guide

Chapter 8. Database | 59

Page 67: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 9. Connectivity

The Connectivity page displays information about the Data Connectivity service (DCS) summary and

the configured Master Executor processes.

Figure 10. Connectivity

9.1. Service Summary

The summary information displays information about the DCS Master. DCS Master is the master

process that routes and assigns client connection requests to master executor processes

(MXOSRVR).

You can see how many DCS masters are configured and on what nodes the current active and

primary DCS masters are running. You can also see the port on which the DCS Master is listening.

This is the port that clients need to use in their JDBC/ODBC connections.

9.2. Master Executor summary

The Master executor summary provides a summary of the total configured master executors

(MXOSRVR), the actual master executors that are up and the number of down processes if any. For

the Actual number of Master executors you get a further count of how many are in

Available/Connected/Connecting states.

EsgynDB Manager User Guide

60 | Chapter 9. Connectivity

Page 68: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

9.3. Master Executor Processes

The master executor processes execute the client queries.

• The list displays all the configured master executor processes that are running across all the

nodes. This includes the master executor processes that are currently connected and the master

executors that are available for new connections.

• If the master executor process is in a connected state, you will see the session information like the

connected user name, the application name, client workstation, the workload profile and sla

mapped to that connection.

• If multi-tenancy is enabled, for the connected master executor processes, you also see the tenant

name

If a client connection is rejected with error message that no more servers are

available, you can use this page to confirm that all master executor processes are

up and are indeed used up and then increase the number of master executors as

needed.

To increase the number of master executor processes, increase the number of configured servers in

the $DCS_INSTALL_DIR/conf/servers file, propagate this file to all nodes and restart the

connectivity service (DCS).

9.4. Process Stack

You can look at the current execution process stack for a master executor process, by selecting the

master executor process in the grid and then using the Action > Process Stack menu. A new pop-up

window displays the current process execution stack. This is helpful in analyzing if a query is stuck in

processing and if the master executor is waiting for resources.

EsgynDB Manager User Guide

Chapter 9. Connectivity | 61

Page 69: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 10. Security

EsgynDB supports authentication and authorization. EsgynDB SQL supports standard ANSI SQL

privileges on the EsgynDB database objects.

In addition, EsgynDB supports functional privileges called component privileges. The functional

privileges allow an authorized user to perform specific operations or use certain features.

Privileges can be granted to specific database users or roles.

10.1. Roles

A role offers the flexibility of implicitly assigning a set of privileges to users, instead of assigning

privileges individually. A role can be granted to one or more users or user groups.

A role can be granted by or revoked by a database user administrator, a role owner, or a member of

the role.

10.1.1. Roles Summary

The Roles summary page displays all EsgynDB roles.

Use the Add Role button to add a new database role.

10.1.2. Role Details

In the Role summary page when you click on a specific role, you’ll be taken to the role details page.

Attributes

The attributes tab displays the role attributes like the role name, the Role UID, the creator and the

create/modified time.

Grantees

The Grantees tab displays all the database users and user groups granted this role. The Grantee

Type column indicates if the grantee is a user or a user group.

Click on the Grant/Revoke button to grant the role to additional users/groups or revoke the role from

EsgynDB Manager User Guide

62 | Chapter 10. Security

Page 70: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

some users/groups.

Component Privileges

The Component privileges tab displays all the component level privileges granted to the role. If you

are an administrative user, you can click on the Grant/Revoke button to grant or revoke component

privileges to the role.

For more details on Component Privileges, please refer to the EsgynDB SQL Reference manual.

10.1.3. Delete Role

In the roles summary page, last column in the tabular grid displays an delete icon. To delete a role,

just click on the role’s corresponding delete icon.

You can also use the delete button in the role details page to delete that role.

10.2. Users

When authentication is enabled all access to EsgynDB has to be made with user credentials

registered in the database. If authorization is enabled, then the user needs to have the right

authorizations to access the SQL objects or use the EsgynDB features.

If LDAP or Active Directory is configured, then the login id (LDAP user) has to be registered and

mapped to a database user name in EsgynDB. The JDBC/ODBC connections are made using the

LDAP user id, but once the external LDAP id is authenticated, then SQL uses the internal database

for checking and enforcing authorizations.

10.2.1. Users Summary

The Users summary page displays all registered EsgynDB database users.

Use the Add User button to add a new database user.

10.2.2. Add User

In the Add User dialog, specify the external LDAP or active directory user name. The database user

name is an optional field. If the external user name does not contain special characters, you can leave

the database user name blank. The external user name will also be used as the database user name.

EsgynDB Manager User Guide

Chapter 10. Security | 63

Page 71: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

But you can optionally choose to specify a shorter descriptive name for the database user name.

If you have configured EsgynDB with multiple LDAP/AD servers, select the LDAP configuration name

that maps to the LDAP Server in which the user is defined.

10.2.3. User Details

In the User summary page when you click on a specific user, you’ll be taken to the user details page.

Attributes

The attributes tab displays the user attributes like the User name, the User UID, the creator and the

create/modified time.

Edit User Attributes

You can use the Edit button to change the LDAP configuration section name or mark the user as

inactive to prevent further logins from that user.

Roles

The Role tab displays all the roles granted to this user. Click on the Grant/Revoke button to grant or

revoke roles from the user.

Component Privileges

The Component privileges tab displays all the component level privileges granted to the user. If you

are an administrative user, you can click on the Grant/Revoke button to grant or revoke component

privileges to the user.

For more details on Component Privileges, please refer to the EsgynDB SQL Reference manual.

10.2.4. Delete User

In the users summary page, last column in the tabular grid displays an delete icon. To delete a user,

just click on the users’s corresponding delete icon.

You can also use the delete button in the user details page to delete that user.

EsgynDB Manager User Guide

64 | Chapter 10. Security

Page 72: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

10.3. User Groups

Multiple users can be combined into a single group called a user group. When privileges or roles are

granted to a user group, it effectively grants them all the users in the group. When privileges or roles

are revoked from a user group, it effectively revokes them from all users in the group. Groups are

defined in AD/LDAP and registered in EsgynDB. The Groups tab displays all the user groups

registered in EsgynDB.

Click on the Add User Group button to register a new user group.

10.3.1. Add User Group

In the Add User Group dialog, specify the external LDAP or active directory group name.

If you have configured EsgynDB with multiple LDAP/AD servers, select the LDAP configuration name

that maps to the LDAP Server in which the group is defined.

10.3.2. User Group Details

In the User Groups summary page when you click on a specific user group, you’ll be taken to the user

group details page. Here you can view/alter the group details and roles granted to the group.

Edit User Group

You can change the LDAP configuration name for the user group using the Edit button.

Grant/Revoke Role to User Group

Click on the Roles tab to view the roles granted to the user group.

Click on the Grant/Revoke button to grant or revoke roles to the user group. All database users

mapped to this user group inherited the role privileges.

10.3.3. Delete User Group

In the user groups summary page, last column in the tabular grid displays an delete icon. To delete a

user group, just click on the user group’s corresponding delete icon.

You can also use the delete button in the user group details page to delete that user group.

EsgynDB Manager User Guide

Chapter 10. Security | 65

Page 73: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

10.4. Roles based Authorization for DB Manager

DB Manager uses the Component Privileges infrastructure to enable and disable some of it features

to authorized users only.

The table below shows the required privileges to access the different DB Manager features.

A user with DB__ROOTROLE can grant these component privileges to roles and users.

DB Manager Page Feature Required Privilege Comments

Dashboard View System andService Status

NONE

Dashboard View System Metrics NONE

Active Workloads View RMS Query Statsand Query Plan

DBMGR.SHOW_ACTIVE_QUERIES

Internally DB Managerwill connect asDB__ADMIN user tofetch this information butthe UI and DB ManagerServer side call willenforce that the loginuser has theDBMGR.SHOW_ACTIVE_QUERIES componentprivilege

Historical Workloads View Query stats inRepository and queryplan

DBMGR.SHOW_REPO_QUERIES

Internally DB Managerwill connect asDB__ADMIN user tofetch this information butthe UI and DB ManagerServer side call willenforce that the loginuser has theDBMGR.SHOW_REPO_QUERIES componentprivilege

Workloads Manage WMSprofiles/slas/mappings

WMS.MANAGE_WMS

Workloads Cancel Query SQL_OPERATIONS.QUERY_CANCEL

EsgynDB Manager User Guide

66 | Chapter 10. Security

Page 74: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

DB Manager Page Feature Required Privilege Comments

Database View EsgynDBSchemas and SchemaObjects

SQL_OPERATIONS.SHOW

Internally DB Managerwill connect asDB__ADMIN user tofetch this information butthe UI and DB ManagerServer side call willenforce that the loginuser has theSQL_OPERATIONS.SHOW component privilege

Event Logs View Event Logs DBMGR.SHOW_EVENT_LOGS

Internally DB Managerwill connect asDB__ADMIN to fetchthis information but theUI and DB ManagerServer side call willenforce that the loginuser has theDBMGR.SHOW_EVENT_LOGS componentprivilege

Connectivity View sessions and dcspstack

DBMGR.MANAGE_SESSIONS

Database Create/Alter/Drop/Download Library

SQL_OPERATIONS.MANAGE orSQL_OPERATIONS.MANAGE_LIBRARY

Security Role management SQL_OPERATIONS.MANAGE orSQL_OPERATIONS.MANAGE_ROLES

Security User management SQL_OPERATIONS.MANAGE orSQL_OPERATIONS.MANAGE_USERS

Security Grant/Revoke SQLPrivileges

SQL_OPERATIONS.SHOW

Security Grant/Revoke Roles toUsers

SQL_OPERATIONS.MANAGE orSQL_OPERATIONS.MANAGE_ROLES

Security Grant/Revokecomponent Privileges

SQL_OPERATIONS.MANAGE orSQL_OPERATIONS.MANAGE_COMPONENTS

EsgynDB Manager User Guide

Chapter 10. Security | 67

Page 75: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

DB Manager Page Feature Required Privilege Comments

Tenants Tenant management SQL_OPERATIONS.MANAGE orSQL_OPERATIONS.MANAGE_TENANTS

Whiteboard Run Adhoc SQL queries DBMGR.USE_QUERY_WORKBENCH

Tools Create Library SQL_OPERATIONS.MANAGE orSQL_OPERATIONS.MANAGE_LIBRARY

Tools SQL Converter NONE Convert SQL queries toEsgynDB

Tools SQL Script Execute DBMGR.EXECUTE_SQL_SCRIPT

Execute mulit-line SQLscripts

Alerts View and update Alerts DBMGR.MANAGE_ALERTS

EsgynDB Manager User Guide

68 | Chapter 10. Security

Page 76: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 11. Tenants

Multi-tenancy allows multiple tenants (or clients) on a single cluster to run their own application and

manage their resources independently of other tenants.

This feature is only available if you are running EsgynDB with multi-tenancy enabled license.

To do this EsgynDB is providing support to:

• Manage system resources: Provide a mechanism that controls CPU and memory usage among

tenants. Each tenant gets part of the available CPU and memory allocated to EsgynDB on a

cluster. Managing resources is enforced by utilizing Linux cgroups.

• Isolate data: Each tenant is able to access data for their application but not able to view or access

data managed by other tenants. Isolation is enforced by granting privileges on objects associated

to users and user groups associated with tenants.

11.1. Tenants

A cluster is divided into multiple components called tenants. A tenant shares basic resources such as

CPU and memory. When a tenant is created, it is allocated a set of resources. Resource allocation is

monitored by the cgroup feature in Linux which is a mechanism that limits and accounts for various

system attributes for a collection of processes. In addition to resource allocation, a tenant is assigned

database resources such as a tenant administrator and assigned one or more schemas.

11.1.1. Key Terminologies

Tenant Name

A descriptive name for the tenant. The tenant will be registered in EsgynDB metadata with this

name. When applications make connection to EsgynDB, they can provided this tenant name in

the connection url.

CPU Shares

contains an integer value that specifies a relative share of CPU time available to the tasks in a

cgroup

cpuSharesPerCore

We assume a total shares of 1024 per node and so this value determines the number of cpu

EsgynDB Manager User Guide

Chapter 11. Tenants | 69

Page 77: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

shares per core. So on a 32 core node, the number of cpu shares per core is 1024/32 = 32.

computeUnit

This is an Esgyn term indicating how many compute resource units to allocate to a tenant. We

set 1 computeUnit as 4 cores and 32 GB Memory. Esgyn recommends at least 4

computeUnits per tenant.

coresPerUnit

Number of cores to allocate for a compute unit. Esgyn uses 4 cores per compute unit.

memoryPerUnit

The amount of memory to allocated for a compute unit. Esgyn uses 32GB per compute unit.

11.1.2. Configuration

In the tenants configuration tab, you can see all registered tenants. By default, there will be a

EsgynDB system tenant. This is configured at install time. You can see the tenant summary including

the Tenant Name, Tenant ID, Who created the tenant, the Admin role for the tenant, the compute

Units, the user groups assigned to the tenant and default schema.

You can use the Add button to create a new tenant.

Add Tenant

In the Add dialog

• Specify a tenant name

• Specify an administrative role name to manage the tenant.

• Select the user groups to be mapped to this tenant. ONLY users belonging to the selected

user groups will be allowed to connect as this tenant.

• Select the number of compute units to allocate to the tenant.

• If you want to control the session concurrency, you can set the maximum number of

concurrent sessions allowed for this tenant.

• And optionally you can specify a default schema name for the tenant. The schema will be

created if it does not already exist.

The tenant is registered in Esgyn metadata and a tenant cgroup is created on all Esgyn nodes. The

EsgynDB Manager User Guide

70 | Chapter 11. Tenants

Page 78: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

tenant cgroup is created as child cgroup under a ESGYNDB parent cgroup. The parent cgroup is

indicated by the ESGYN_CG_CPU, ESGYN_CG_CPUACCT and ESGYN_CG_MEM environment

variables.

The code computes the cgroup thresholds as a % value of the EsgynDB threshold on one node and

uses the % values to create the cgroup on each node.

The example below shows how the compute units translates into cgroup values and how it reflects

against the overall EsgynDB cgroup limits.

Example

• A cluster has 4 nodes

• Each node in cluster has 32 cores/256 GB memory

cpuSharesPerCore = 1024/32 = 32

coresPerUnit = 4

memoryPerUnit = 32GB

• EsgynDB is allocated 50% of the node resources

esgynCPUShares = 512 shares

esgynMemory = 128GB

• Computing Tenant CGroup limits

• First compute the tenant cgroup limits as a % value of the EsgynDB limits. This

computation is done on one node.

tenantCPUPercent = (number of slices on node * coresPerUnit * cpuSharePerCore *

100) / esgynCPUShares

tenantMemoryPercent = (number of slices on node * memoryPerUnit * 100) /

esgynMemory

• Next create the tenant cgroup on each node as % of the EsgynDB cgroup values

tenantCPUShares = (tenantCPUPercent/100) * esgynCPUShares

tenantMemory = (tenantMemoryPercent/100) * esgynMemory

EsgynDB Manager User Guide

Chapter 11. Tenants | 71

Page 79: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• Tenant 1 needs 4 compute units

tenantCPUPercent = (1 * 4 * 32 * 100) / 512 = 25%

tenantMemoryPercent = (1 * 32GB * 100) / 128 = 25%

tenantCPUShares = (25/100) * 512 = 128 shares

tenantMemory = (25/100) * 128GB = 32 GB

The Tenant1 cgroup is created as 128 shares and 32GB memory on each node. The Swap

is always set as twice that of the memory.

• Tenant 2 needs 8 compute units

tenantCPUPercent = (2 * 4 * 32 * 100) / 512 = 50%

tenantMemoryPercent = (2 * 32GB * 100) / 128 = 50%

tenantCPUShares = (50/100) * 512 = 256 shares

tenantMemory = (50/100) * 128GB = 64 GB

The Tenant2 cgroup is created as 256 shares and 64GB memory on each node. The Swap

is always set as twice that of the memory.

11.1.3. Status

The status tab displays the CGroup thresholds for each tenant and the current utilization.

The grid displays the total CPU and memory thresholds configured across all nodes where the

tenant’s compute units have been placed and the current actual usage of memory and cpu time.

When you click on a specific tenant name, you get the Tenant Resource details. It shows the

configured thresholds and current actuals on a per node basis.

11.1.4. Alter Tenant

Click on an tenant in the tenant configuration page and you will see the tenant details.

Click on the edit button to change the tenant configuration. You can change the user groups, tenant

EsgynDB Manager User Guide

72 | Chapter 11. Tenants

Page 80: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

compute units or default schema or the max sessions for the tenant.

11.1.5. Granting Privileges to Tenant

You can create tenant specific roles and grant the required privileges to these roles. Then grant these

roles to the user groups mapped to the tenant. Any user connecting as the tenant will inherit the

privileges.

Optionally you can directly grant privileges or the roles to the users.

EsgynDB Manager User Guide

Chapter 11. Tenants | 73

Page 81: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 12. Query Workbench

The query workbench page allows you to execute ad-hoc queries and view the results in a tabular

form or to generate a visual and textual explain plan.

Type the SQL query text in the Query text area.

The query text should be valid EsgynDB query syntax.

You can ONLY use a single EsgynDB SQL statement. It can be a DDL or DML

statement. Compound SQL statements are not supported.

The SQL statement should conform to EsgynDB SQL syntax and any errors

reported by the engine are displayed with full error text.

Figure 11. Query Workbench

EsgynDB Manager User Guide

74 | Chapter 12. Query Workbench

Page 82: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

12.1. Execute Query

Use the Execute button to execute the query. For a query that returns a result set, the results are

displayed in a tabular format. For non-select queries or queries that returns a scalar result, the results

are displayed as normal text.

The Elapsed Time counter starts ticking as soon the query is submitted for execution and helps to

know how long the query is executing or how long the query took to complete.

If for some reason, you need to cancel the query once the execution has started, click on the Cancel

button.

If you move away from the Query Workbench page and navigate to a different page, before the

execute or cancel operation is complete then the success/fail status of the execute/cancel is shown

via the notifications panel. See Notifications Panel for details. Once you click on the result for the

query workbench notification, you’ll be automatically navigated back to the Query Workbench page

and the results will be displayed.

12.2. Explain Plan

You can use the Explain button to generate an explain plan for the query. You get a visual explain

rendered as a tree graph and also a textual plan.

The Elapsed Time counter starts ticking as soon the query is submitted for explain and helps to know

how long it takes to generate the explain.

If you move away from the Query Workbench page and navigated to a different page, before the

explain operation is complete then the success/fail status of the explain is shown via the notifications

panel. See Notifications Panel for details. Once you click on the result for the query workbench

notification, you’ll be automatically navigated back to the Query Workbench page and the results will

be displayed.

You can right mouse click on the graph and move the graph around or use your mouse scroll key to

zoom-in and zoom-out the graph.

If you double-click on a specific node in the tree, you can see the details and cost for that specific

operator in a pop-up window.

EsgynDB Manager User Guide

Chapter 12. Query Workbench | 75

Page 83: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

12.3. Control Options

Use the Options button to set control options like SET statements or Control Query statements that

can influence the query plan and execution.

You can use these options to tune your query performance. Refer to the SQL Reference manual for

more details on the SET and Control query commands.

The options once set are applied before every query execution or explain. You can use the clear

button to clear the option settings.

12.4. Export Workbench Data

You can use the Save button to save the query text, the execution output, the explain output and any

control options in a JSON format to an external file on your workstation. The file is saved with a .wbj

(Workbench JSON) extension.

This feature is very handy for both developers who are collaborating with other developers and even

in production support where application users can use this export feature to quickly capture the query

profile for queries that either have bad performance or other defects, and email the .wbj file to Esgyn

Support.

12.5. Import Workbench Data

You can use the Open button to import a previously exported .wbj (Workbench JSON) file or any

other script file that has SQL statements.

By default the File Open dialog only displays the .wbj files. You can use the All Files option to display

all other file types to open .txt or .sql or .ddl files that only contain SQL statements.

Based on what was saved in the imported file, the query text, the query execution results, explain

graph and control options are loaded and rendered into Workbench.

12.6. Clear Workbench

The Clear button lets you clear and completely reset the Workbench. The query text, execution

results, explain results and control options are all cleared.

EsgynDB Manager User Guide

76 | Chapter 12. Query Workbench

Page 84: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 13. Alerts

DB Manager leverages Bosun open source framework to monitor key system or workload metrics and

generate email or http alerts based on pre-defined rule templates. Alerts feature is only available in

the EsgynDB Advanced Edition.

You can configure rule templates and notification templates in Bosun. When the rules evaluate to true,

the alerts are triggerd. You configure your Bosun alert definitions in the

$MGBLTY_INSTALL_DIR/bosun/conf/bosun.conf file.

Refer to the Bosun documentation at https://bosun.org/documentation.html for instructions on how to

define the alert rule and notification templates.

Additionally, refer to the OpenTSDB documentation and the TCollector documentation to understand

the type of metrics that are available and how to write the TSDB query expression that will be used in

your Bosun alert template.

http://opentsdb.net/docs/build/html/index.html

http://opentsdb.net/docs/build/html/user_guide/utilities/tcollector.html

13.1. Alerts Summary

Using the Alerts page in DB Manager, you can view all open alerts.

The Alerts summary displays all the open alerts. You can narrow down the filter predicates using the

Filter button and find alerts with specific alert status and/or severity and/or alert text.

The Alert summary includes:

Time

The time when the alert notification was generated.

Incident ID

An unique incident ID for the alert

Alert Key

The Alert Key

EsgynDB Manager User Guide

Chapter 13. Alerts | 77

Page 85: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Alert

The subject text of the alert notification.

Status

Status of the alert. Acknowledged or Un-Acknowledged.

Severity

Severity State of the alert. Critical/Warning/Normal/Unknown.

Active

Indicates if the alert is still active, meaning if the alert trigger condition still exists. Only inactive

alerts can be closed.

Silenced

Indicates if the alert has been silenced.

Click on the Alert Key hyperlink to drill-down into the details of a specific alert.

13.2. Alert Details

The alert detail page displays all the details of the alert. This includes the alert summary information

as well as the detail information that is sent out in the notification.

If the alert has been acknowledged already by a user, it shows who acknowledged or closed the alert,

when the alert was updated and the notes entered during the update.

Use the Actions > Update menu to update the alert. You can acknowledge new alerts and enter a

comment. For alerts that are no longer active, meaning the alert condition is no longer true, you can

close the alerts.

Refer to the Bosun documentation at https://bosun.org/documentation.html for more details.

EsgynDB Manager User Guide

78 | Chapter 13. Alerts

Page 86: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 14. Tools

The Tools navigation menu provides a list of generic tools to manage or make changes to EsgynDB.

14.1. Backup/Restore

EsgynDB supports online backup and restore of Esgyn schemas and tables. This feature is only

enabled when using an EsgynDB Advanced Edition license.

You can access the Backup/Restore feature using the Tools >Backup/Restore menu.

14.1.1. Authorization

In the current release, only DB__ROOT and DB__ADMIN database users are allowed to issue

backup and restore commands. If LDAP authentication is enabled, you should login as the LDAP

users who are mapped to the DB__ADMIN and DB__ROOT database users. The Backup/Restore

menu will not be available for other users.

14.1.2. Backup/Restore Summary

The Backup/Restore page displays all existing backups, if any.

The backup summary includes the following information:

Tag Name

The backup tag name. It is made up of the user entered backup tag name followed by a julian

timestamp that is appended at the time of the actual backup operation. For example if you

schedule a monthly backup for a tag named "sales_monthly", each monthly backup instance will

be named sales_monthly_<timestamp>.

Backup Time

The timestamp when the backup operation started

Status

The status of the backup.

Backup Type

Indicates if the backup is a regular or incremental backup.

EsgynDB Manager User Guide

Chapter 14. Tools | 79

Page 87: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Use the Refresh button to refresh the backup list.

14.1.3. New Backup

In the backup summary page, use the New Backup button to create or schedule a new backup.

• Enter a backup tag name or select a tag from the drop-down list. This list shows the current list of

user specified tag names.

• Select the backup type, regular or incremental.

• Browse the object tree and select one or more schemas and/or tables.

• If you select the root tree node, then all user schemas and tables will be backed up.

• You can also select individual schemas and tables by traversing the object tree and selecting

them.

• If all tables in a schema are selected, then the entire schema is backed up.

• The selected objects are displayed in the right pane, so you know which exact objects will get

backed up.

• Specify the time when the backup should be executed.

• Select the Run once now option to execute the backup operation immediately when the user

clicks Submit.

• Select the Run once at selected time option to schedule the backup operation at a later date

and time. When you select this option, you’ll see a date time selection control that will allow

you the exact date and time when the backup should be executed.

• Select the Recurring option if you want to perform recurring backups of the selected objects.

For example you want to take daily or weekly backups of a specific user schema.

• When you select this option, you’ll see a calendar control. Click on the calendar control to

set the desired recurring schedule.

• You can select a daily or weekly or monthly or yearly schedule and also specify at what

times the backup operation should be executed.

• The backup schedules are added to the EsgynDB service user’s (trafodion) crontab file and

cron would execute the operations at the scheduled time.

EsgynDB Manager User Guide

80 | Chapter 14. Tools

Page 88: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• Click on Submit button to submit the backup operation as scheduled.

• If you selected Run once now the backup dialog will remain open until the backup completes. You

can choose to close the dialog and not wait for the backup to complete.

14.1.4. Backup Schedules

When you schedule the backup to run once at a future date time or create a recurring schedule, the

schedule is added to the EsgynDB service user’s (trafodion) crontab file.

To use the schedule feature, a python module python-crontab has to be installed

on the nodes where DB Manager is running. This is a pre-requisite.

View Scheduled Backup jobs

In the backup summary page, click on the Scheduled Jobs tab.

The scheduled job details include the following:

Job ID

An unique identifier to identify the specific backup schedule. This is internally generated when

the backup job is scheduled.

Schedule

A human readable description of the recurring job schedule

Command

The job command that will be executed at the scheduled time. The backup operations are

initiated through the edb_br_action.py script.

Actions

Click on the Modify button to modify the schedule of the selected job

Modify Schedule of Backup jobs

Click on the Modify button for a selected job to change its execution schedule. This will display the

backup scheduler dialog where you can set your new recurring schedule.

EsgynDB Manager User Guide

Chapter 14. Tools | 81

Page 89: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Delete Scheduled Backup jobs

You can delete one or more scheduled jobs by selecting them in the grid and clicking on the Delete

button. The selected jobs will be removed from the cron schedule. Note this will only remove it from

the cron schedule and will not impact any backup operations that may already be in progress.

14.1.5. Restore Backup

To restore a backup, select the backup tag in the backup summary page and click on the Restore

button. This will open up a pop-up dialog box.

• All the objects in the selected backup will be fetched and listed in a tree structure. You can pick

and choose which objects you want restored.

• You can select the entire backup by selecting the root tree node or traverse the object tree and

select individual schemas or tables.

• The selected objects are displayed in the right pane, so you know which exact objects will get

restored.

• Click on Reset button to reset your selection if needed.

• Click on Submit to restore the selected objects. The restore is executed immediately after the

submit. The restore dialog will remain open until the restore operation completes. You can choose

to close the dialog and not wait for the restore to complete.

14.1.6. Export Backup

You can make a copy of your backup to an external HDFS directory.

To export a backup to an external HDFS directory, select the backup tag in the backup summary page

and click on the Export button.

In the pop-up dialog, specify the fully qualified external HDFS destination directory in url form and

click on Submit.

Example: hdfs://node1.abc.com:8020/user/trafodion/backups

EsgynDB Manager User Guide

82 | Chapter 14. Tools

Page 90: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

14.1.7. Import Backup

To import a backup from an external HDFS directory, click on the Import button.

• In the pop-up dialog, specify the backup tag name that should be imported.

• Specify the fully qualified external HDFS source directory from where the backup should be

imported.

Example: hdfs://node1.abc.com:8020/user/trafodion/backups

• Click Submit to initiate the import.

14.1.8. Delete Backup

From the backup summary page, You can delete one or more backups that are no longer needed.

• Sort the backup list by sorting on the Backup Time in descending order.

• Select one or more backup tag names in the grid and then click on the Delete button.

• Select Yes in the confirmation dialog.

• The deletes will be scheduled to run.

14.1.9. Backup/Restore Logs

If the backup/restore operations report a failure, you can analyze the Esgyn logs to diagnose the

failures.

Go to Logs page and use the filter to select BACKUP_RESTORE component logs.

14.1.10. Additional Reference

For additional details on backup/restore feature, refer to the EsgynDB Backup Restore Guide.

14.2. Create Library Tool

Creating a SQL library is a two-step process. You first deploy the code file to the EsgynDB platform

and then create a library. The Create Library tool allows you to perform these two steps with a single

click.

EsgynDB Manager User Guide

Chapter 14. Tools | 83

Page 91: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

The create library tool is made easily accessible through the Tools navigation menu for convenience,

without having to navigate through the database library pages.

See Create Library for details.

14.3. SQL Converter Tool

The SQL Converter tool allows to convert DDL or DML statements from another database dialect to

EsgynDB.

In this dbmgr-2.4.0 release, we support converting from Teradata dialect to EsgynDB.

If you want to migrate an entire Teradata schema including tables and views, you can extract the

schema to a text file and use the SQL Converter tool to convert the entire schema to EsgynDB syntax

with just a few clicks.

Figure 12. SQL Converter

Converting SQL statements

• Select the source database dialect. In this release, the only supported source dialect is Teradata.

EsgynDB Manager User Guide

84 | Chapter 14. Tools

Page 92: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• Use the browse button to search and select a input SQL file on your workstation. The input SQL

file contains all the Teradata statements that need converting.

• Click on the Convert button.

• You should see the SQL Statements converted to EsgynDB syntax and displayed in the right

panel.

• If needed, you can now hand edit the converted SQL and add additional EsgynDB constructs like

adding salt partitioning or GRANT privileges statements etc.

• Use the Save button if you want to save a copy of the converted SQL text to a local file on your

workstation.

• Use the Execute button to immediately execute the SQL statements on the EsgynDB server.

14.4. Execute SQL Script Tool

The Execute SQL Script tool allows you to execute a multiple SQL statements in a single connection

to the EsgynDB engine.

For example, you can create schema, create tables, load data into the tables, run several reporting

queries on the tables all within a single script and run this through the tool.

When you execute the converted SQL text in the SQL Converter tool, the execution is done through

this SQL Script tool.

EsgynDB Manager User Guide

Chapter 14. Tools | 85

Page 93: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Figure 13. SQL Script Executer

Executing SQL script

• Use the browse button to search and select a SQL script file on your workstation.

• Click on the Execute button to execute the SQL statements contained in the script, on the

EsgynDB server.

• If you need to abort the script execution for any reason, you can click the Cancel button.

• Once the script execution completes, the results are displayed in the results text area.

• Use the Save button to save the results to a file on your local workstation.

• The Elapsed Time counter starts ticking as soon the script is submitted for execution and helps to

know how long the script has been executing.

EsgynDB Manager User Guide

86 | Chapter 14. Tools

Page 94: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

Chapter 15. Troubleshooting and Support

15.1. Troubleshooting

Use these common tips to troubleshoot any display issues with EsgynDB Manager.

• Cannot login to DB Manager

• Check the browser URL for accuracy. Make sure you have the right host name and port

number.

• Verify that the DB Manager ports (4205/4206) are not blocked by any firewall.

• Check if DB Manager is running. Use the mgblty_check or dbmgr.sh status to confirm

EsgynDB Manager is running.

• If DB Manager is up, verify that EsgynDB, DCS and REST is up and running.

• trafcheck

• dcscheck

• restcheck

• Page is blank or partially loaded

• It could be a transient error like browser load timeouts. Log out and log back in.

• Sometimes refreshing the browser cache also helps.

• Check the browser console for errors.

• The Datetime values do not look right

• DB Manager displays all datetime values in the server’s local time zone

• Make sure the timeZoneName property in the DB Manager config.xml matches the EsgynDB

server time zone

• Make sure the timezoneName is specified the correct canonical form like

America/Los_Angeles or Asia/Shanghai or Etc/UTC etc.

Note: You will need to restart DB Manager anytime you change property values in config.xml

• Scheduling backup jobs fails with error ImportError: No module named crontab

EsgynDB Manager User Guide

Chapter 15. Troubleshooting and Support | 87

Page 95: EsgynDB Manager User Guide€¦ · • Monitor runtime status of EsgynDB Nodes • Time-series charts for monitoring key system and EsgynDB metrics • Workloads • Monitoring •

• Scheduling feature requires a pre-requisite python module python-crontab. This module

needs to be installed on the nodes where DB Manager is configured to run.

sudo pip install python-crontab

15.2. Support

When contacting Esgyn Support, the following information will be handy and requested:

• Latest logs in $TRAF_HOME/dbmgr-2.4.0/logs/ directory

• The configuration file $TRAF_HOME/dbmgr-2.4.0/conf/config.xml

• EsgynDB Manager version information from the About page.

For UI issues:

• A screen shot of the error message in the screen or in the browser console.

• If error is reproducible, a description of the sequence of actions the user performed to reproduce

the error.

EsgynDB Manager User Guide

88 | Chapter 15. Troubleshooting and Support