eXtremeDB相关问题解答(3)
> 1. Could our database support multi-database under one single instance?
>
> 2. Could we support temporary table?
>
> 3. Could we support view?
>
> 4. Could we support stored procedure and functions?
>
> 5. Could eXtremeDB be integrated into BI app like Microstrategy ?
>
> 6. Could we support Architeture like MPP so that all the data could be distributed onto different nodes evenly.
>
> 7. What is the average compression ratio or ratio range typically ?
Could we reach the ratio of 10:1
1. Yes, eXtremeDB can open and maintain connections to multiple databases from a single task or process. Each database will require its own "database connection" (the database connection is a way to identify the database to the application)
2. The eXtremeDB databases are normally defined statically with the schema. eXtremeDB does not support temporary tables in the normal SQL meaning of the word (tables that exist within a session). That's said, there is a limited support for "create table" statement
to create in memory tables (or persistent tables. The in-mmeory tables created via the create statement will only exists during the current session, so essentially they are the same as "normal" temporary tables
3. There is a limited support for views (see the eXtremeSQL User's Guide)
In order to create a view , the application must have the "Views" class defined in the schema:
class Views
{
string name;
string body;
tree<name> pk;
};
Only the name of the table and the names of fields are essential. "name" contains the name of the view and the body contains the text of view expression.
View are created in standard SQL manner:
CREATE VIEW name AS select-expression;
XSQL>create view SV as select sid from S; insert into S (sid,sname)
XSQL>values (1,1); select * from SV;
sid
------------------------------------------------------------------------------
1
XSQL>drop view SV;
Things to be aware about
a. Views are implemented as nested select so the query above will be translated to
select * from (select sid from S);
The xsql optimizer is not always smart enough to efficiently transform nested queries. So sometimes query with views will be less efficient than one written manually without views. I can not give you precise example now or give you some estimation how much
presence of view can degrade performance of query.
b. The information about created views is stored in Views table. If you want view definition to be persistent , you should define table Views as "persistent". Certainly it is relevant for disk database only.
c. Views are read-only. Updateable views are not supported. It means it is not possible to do something like:
insert into SV (sid) values (1);
4. Storage procedures are not supported since the eXtremeDB is an embedded database as opposed to a server-type database. SQL Support for functions in SQL is limited to the API -- functions are not stored. SQL supports a number of built-in string and math
functions as well as user-defined functions that can be used in SQL statements. For example
static String* dateformat( McoSql::Value* date) { char str[64]; int date_val = (int)date->intValue(); int yy = date_val / 10000; int mm = date_val / 100 % 100; int dd = date_val % 100; // Format dd.mm.yyyy assuming all dates are after 2000 eXtremeSQL User Guide
version 4.5 page 33
sprintf( str, "%d.%d.20%02d", dd, mm, yy ); return String::create( str ); } static SqlFunctionDeclaration udf( tpString, // tpInt is the return value of the UDF "dateformat", // the name of the function as we’ll use it in a query (void*)dateformat, // the function
pointer
1 // the number of arguments to the UDF ); The UDF can then be called in a normal SQL select statement. For example, the following statement formats the date values in the result set by calling the UDF:
select dateformat(date_val) from Contributions;
5. There is currently no integration between the eXtremeDB data source and MicroStrategy BI environment. However we are considering the integration of the FE with a number of platforms, including the MicroStrategy Intelligence Server
6. Again, sharding (as a tool within the MPP database architecture) is not currently supported. We are in the process adding sharding and will be happy to consider requirements
7. Compression is supported for the large data data sets (sequences) through RLE. Its not possible to quantify the compression rate as not depends on the data being compressed. By the same token there is no "typical" compression rate.
eXtremeDB相关问题解答(3)的更多相关文章
- wdos相关问题解答
wdos系统自动分区的大小说明 wdOS系统提供了可自动分区和手工分区 自动分区适用大部分新手或对分区没有特的要求的人 手工分区适用老手或熟悉分区或有特别需求的人 具体用哪个,没多大区别,关键是看应用 ...
- centos与ubuntu安装及相关问题解答
1.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别. 答:Linus的发行版本有slackware,debian,redhat,Alpine,ArchLinux,Gentoo,LFS, ...
- 通过Ajax——异步获取相关问题解答
问题呈现: 解决方案: dataType定义的是接收的值的类型,及controller控制器返回什么类型的值,这就写成什么类型, 我写的是return content("...") ...
- ip相关问题解答
用路由器上网时电脑的设置: ===================== 路由器如何设置另外讨论,现只讲电脑的设置.在Windows XP下: 1.确定桌面上有没有“网上邻居”图标,如果没有,在桌面空白 ...
- 浅析py-faster-rcnn中不同版本caffe的安装及其对应不同版本cudnn的解决方案
浅析py-faster-rcnn中不同版本caffe的安装及其对应不同版本cudnn的解决方案 本文是截止目前为止最强攻略,按照本文方法基本可以无压力应对caffe和Ross B. Girshick的 ...
- WPF/Silverlight Layout 系统概述——Measure(转)
前言 在WPF/Silverlight当中,如果已经存在的Element无法满足你特殊的需求,你可能想自定义Element,那么就有可能会面临重写MeasureOverride和ArrangeOver ...
- 在linux环境下编译运行OpenCV程序的两种方法
原来以为在Ubuntu下安装好了OpenCV之后,自己写个简单的程序应该很容易吧,但是呢,就是为了编译一个简单的显示图片的程序我都快被弄崩溃了. 在谷歌和上StackOverFlow查看相关问题解答之 ...
- 第三十六节,目标检测之yolo源码解析
在一个月前,我就已经介绍了yolo目标检测的原理,后来也把tensorflow实现代码仔细看了一遍.但是由于这个暑假事情比较大,就一直搁浅了下来,趁今天有时间,就把源码解析一下.关于yolo目标检测的 ...
- win 2012 安装mysql 5.7.20 及报错 This application requires Visual Studio 2013 Redistributable. Please install the Redistributable then run this installer again 的解决办法
本文地址:http://www.cnblogs.com/jying/p/7764147.html 转载请注明出处. 安装过程其实挺简单,基本上下一步下一步,可以参考我的另一篇mysql安装文章: ...
随机推荐
- Android Camera+SurfaceView实现自己定义拍照
对Activity强制横屏,保证预览方向正确. 使用OrientationEventListener监听设备方向.推断竖拍时,旋转照片后再保存.保证竖拍时预览图片和保存后的图片方向一致. 执行效果: ...
- 48.AngularJS ng-src 指令
转自:https://www.cnblogs.com/best/tag/Angular/ 1. <!DOCTYPE html> <html> <head> < ...
- 使用sshfs来挂载远程的文件
只要安装sshfs就可以通过ssh的端口来远程挂载文件夹, 不需要其他额外的配置非常的方便. 这个软件在只有ssh权限的情况下远程范围文件是非常有用的. 1. 安装sshfs 2. 用法非常简单 ...
- BZOJ 3280 费用流
思路: 同BZOJ 1221 //By SiriusRen #include <queue> #include <cstdio> #include <cstring> ...
- js中字符串转驼峰转为下划线
function dasherize(str) { return str.replace(/::/g, '/') .replace(/([A-Z]+)([A-Z][a-z])/g, '$1_$2') ...
- php八大设计模式之策略模式
策略模式提供一个虚拟的整体,根据不同的要求(参数)提供不同的"零件"(调用不同的"零件"实现不同的结果). <?php /** * 策略模式 * 跟工厂模 ...
- FZU 1202 信与信封问题 二分图匹配
找匹配中的关键边. 做法: 拆掉一条匹配边,然后对边两边的点做一次增广,如果可以增广,那么此边不是关键边,否则是关键边. 详情可以参见:http://www.docin.com/p-109868135 ...
- Unity Launcher类,轻松打开网页,照片,app 等
using UnityEngine; using UnityEngine.WSA; public class test : MonoBehaviour { void Start () { //打开百度 ...
- 统计 MapReduce 输出路径修改。
先在上一篇MR 的104 行加入代码.jobConf.setOutputFormat(MyMultipleFilesTextOutputFormat.class); 用意是自定义 job 的输出格式: ...
- silverlight wcf mvvm
近期工作比較忙.也没有时间发表新内容,今天有点时间,就顺便写点,说说近期开发的一套系统心得. 我刚去这个公司已经将前端确定要用Silverlight,我不知道为什么要选择这个,或许是为以后转C/S系统 ...