create col_type
create
col_type
<end_user
|col_type_name> as
<number
|text
>
create table
create
table
<|merge|big> table_name ( column_name1 <number
|text
|col_type_name>, ...)
create view
create
view
view_name as
select
* from
table_name1, table_name2, ... where
table_name1.column_nameA = table_name2.column_nameB ...
insert values
insert
into
table_name values
('col1_value'
,'col2_value'
,...)
refresh dirty view
Refresh the views after insert
Dirty means that data has been inserted in the first table of the view since last refresh
refresh
dirty
view
view data model & parameters
Desc (describe) command
desc
<|col_type
|table
|view
|context|computed_columns|parameter>
desc
col_type
<|verbose
>
desc
table
the_table <|verbose
>
desc
view
the_view <|verbose
>
upsert (merge table)
Insert into a merge table will upsert (update if PK already exits, insert otherwise)
save
Save data on disk (persistence)
save
insert from file
insert
into
table_name select
* from
file(<'path/to/file'
|'file_name under CSV_FILES_DIR/table_name'
>)
delete
refresh_online
Unlike refresh, refresh_online won't generate downtime
refresh_online
dirty
view
partitions
Size of table is limited to 4G lines, hence need for partition
refresh_online & partitions
A partition can have its refresh_online views attached
refresh advanced
Applies deletes + updates + data model changes on tables and views)
refresh
dirty
table
Recompute view but not max_perf
refresh
view
view_name
Recompute permissions if changes and drop cache
refresh
permission
Recompute computed columns if changes and create a new version of stormbase.so under _SO_LINUX
refresh
computed_column
Drop cache
refresh
cache
Does all above and recomputes max_perf and re execute init file
refresh
dirty
view
deletes & refresh_online
Some big tables have a "delete before insert" logic along with refresh_online needs
In previous version of Stormbase such tables were defined as big_online, now all big tables support this functionality
Big_online keyword is kept for backward compatibility