kdb+ 32位版本开放下载了

Discussion in 'kdb+' started by itfin, Apr 14, 2008.

  1. zwz

    zwz

    《Q for Mortals 2.0》的Word版本,适合打印。。
    下载后把后缀.xls改为.rar再解压。。
     
  2. 几个简单的事实:
    1、kdb+只有150K大小;
    2、Kdb 附有SQL92接口,for pure SQL functionality.


    Database optimization techniques in Kdb could help ease the enterprise data crunch

    DATA ANALYSIS IS getting out of hand. As enterprise data warehouses grow rapidly, the requirements for data analysis to produce timely, meaningful results seem to be hitting a brick wall.


    IT SOLUTION SEARCH
    With so many touch points for customers to interact with the enterprise, the demand for fast data-mining capabilities in applications such as e-CRM (customer relationship management) is quickly growing. (Look next week for the InfoWorld Test Center Research Report on CRM and the importance of CRM analytics.)

    With data demands showing no signs of easing up, it makes sense that a new way of thinking and processing records may be just what your IS department needs. And that's why a company such as Kx Systems and its Kdb database is so interesting.

    Kdb is a high-performance relational database with optimized storage and retrieval that enables analysis speeds as much as one thousand times faster than those in traditional databases.

    With benchmarks of a million random-write updates per second and reads of tens of millions of record aggregations per second on data sets billions of records deep, Kdb should raise the brows of financial and e-CRM application developers. Kdb is ideal for accessing large volumes of historical data and capturing real-time transactional events.

    Rather than continue to build optimized look-up routines on old database paradigms, Kdb gains its speed advantages by shedding the conventions of traditional, row-based databases in favor of optimized, column-based storage.

    Although record-based storage works well for distributed parallel tasking, Kdb's inversion process allows entire columns to be aggregated in a single call rather than row by row.

    Furthermore, Kdb has an attractively small footprint -- the download is only 150KB -- and takes up little memory, which makes it interesting for small devices such as PDAs.

    The ability to quickly analyze massive amounts of time-series and real-time data makes Kdb well-suited for areas such as OLAP (online analytical processing) and OLTP (online transaction processing).

    Whereas OLAP typically demands large table manipulations and preaggregation tricks such as denormalization and indexing to speed processing, Kdb makes it possible to reduce the number of bulk OLTP system-write operations from thousands to no more than the number of columns in your table. As such, Kdb boasts the capability of processing several million OLAP records each second.

    Kdb's open-standards approach offers solid connectivity through JDBC (Java Database Connectivity) and ODBC, as well as its native KDBC (Kdb Database Connectivity), HTML, and XML. Kdb is available for a range of platforms, including Windows NT, Windows 2000, Linux, Solaris, AIX, HP-UX, and FreeBSD.

    Although Kdb includes a SQL92 interface for pure SQL functionality, it also supplies its own KSQL, which advances query capabilities, adds time-series functionality, and natively takes advantage of the K engine.

    I was impressed with the K development platform's well-integrated set of components, which included an interpreted, financially optimized programming language; data management system; primitives; and GUIs under one roof.

    K offers good sort and search capabilities; is extremely readable, portable, and powerful; and uses a very small vocabulary. In addition, it offers strong distributed computing and integration into IS environments with client connections for C/C++, Java, Visual Basic, Excel, and more.

    Changing to a new platform will, of course, cause some growing pains. But learning to use K and KSQL should not be difficult for anyone comfortable with standard SQL.

    The most time-consuming aspect will be learning to write good extensions for time-series analysis. But even here, experienced SQL programmers should have their bearings in KSQL within a week or so.

    The software can be downloaded from www.kx.com, along with the K development environment and the manuals.

    Now, I'm not recommending that you pick up camp and move your Microsoft, Oracle, Informix, or IBM-stored assets. In fact, only a limited number of SQL system migrations have been successfully ported to Kdb.

    But if you are writing complex time-series queries and are waiting on results, Kdb can provide performance enhancements as a supplemental application server that can offload some of the strain from your enterprise databases.

    来源:http://www.infoworld.com/articles/op/xml/01/04/09/010409opborck.html
     
  3. zwz

    zwz

    As a project to build a near full-scale application in q, the following articles work towards implementing an algorithmic strategy in q:

    Building qx, a test exchange ... read more
    A market maker for qx ... read more
    The participation strategy specification ... read more
    Implementing the strategy, part 1 ... read more
    Implementing the strategy, part 2 ... read more
    Market trials

    详见:http://www.gbkr.com/subjects/q/index.html
     
  4. 个人用的话,也要购买商业版么?
     
  5. 下载页面貌似被屏蔽了
     
  6. zwz

    zwz

    个人版是32位的,免费,但有会话时间限制。商业版是64位的,比较贵的。
     
  7. zwz

    zwz

    是的。可能被误屏蔽了吧。
     
  8. 除了官方网站,还有地方可以下载吗?其他地方的资料好像不多
     
  9. 可以通过一些在线代理页面如http://www.proxyie.cn/访问www.kx.com,目前已经更新到2.5版本了。在线文档页面可以正常访问.
     
    Last edited by a moderator: Feb 20, 2009
  10. 谢谢,已经下载了。下来一看,东西很少,呵呵
     
  11. 用odbc连接试了一下。
    安装了odbc.exe,在ADO下面用它网站上的odbc.txt 上的说明的 连接串 "Provider=MSDASQL.1;DRIVER=kdb+;DBQ=localhost:5001;UID=usr;PWD=pwd;"连不通。

    报错信息: [q][ODBC]localhost:5001

    不知是不是帐户和密码不对,看了一下文档没提默认的帐户和密码是什么,也没说如何设这个。

    搞不定,kdb看来要放一放了。
     
  12. zwz

    zwz


    从报错信息来看,你可能:
    1)没有设置好port。默认情况下q没有打开port,你必须在启动q时带参数(q.exe -p 5001 ,p为小写字母)或启动后输入命令(\p 5001)来设置port。
    2)没有创建ODBC数据源名称。请到控制面板=》管理工具=》ODBC数据源确认。
    3)你的机子上的localhost名称被修改。可以检查一下hosts文件或者直接用127.0.0.1替换localhost。
    4)你别告诉我,你用ODBC连接时还没有启动q :p

    如果没有设置密码,把连接串中的"PWD=pwd"改为"PWD="即可。要设置帐号和密码,可这么做:
    1)把你的帐号和密码保存在一个文本文件中。如用记事本建立一个文本文件,文件名为qusers,输入用户名和密码yourusrname:yourpassword(每个用户名、密码对为一行,中间用分号隔开)并保存,假设保存为c:\q\w32\qusers。
    2)启动q时加上"-U "或“-u ”参数:
    q -p 5001 -U c:\q\w32\qusers
    注意:如果是-U(大写字母),则客户端可以存取本机的文件,如果是-u(小写),则客户端只能存取q文件夹下的文件。

    ps:如果客户端是C#、JAVA等,最好用QDBC,不要用ODBC,可以到code.kx.com(这个端点没被屏蔽)下载相应的例子代码。
     
  13. zwz

    zwz

    q -p 5001 -U c:\q\w32\qusers 中的“\"可能要改为"/"
    如果是-U,则客户端可以存取q服务端的磁盘文件,如果是-u,则客户端只能存取q服务端q文件夹下的文件(我不知道是哪个文件夹,自己试试)。
     
  14. 谢谢张兄,表弄出来了。原因就是第1条。没想到端口需要在启动的时候指定,以为会有默认的端口。
     
  15. 在ADO通过ODBC连接后,发现Q语言的那些查询语法, 比如 select [a] [by b] from t [where c] 等,不能通过ADO的执行.看来ADO只能执行标准的SQL,Q语言和SQL有分别,不能这样用.
     
  16. qpy: python的kdb+接口。开源。

    作者:matt.warren

    This python interface to KDB is modeled after the java interface for KDB. It interacts with the binary interface for the KDB Database.

    It is currently BETA quality. It works, but needs some rigorous testing.

    It allows you to send queries and data to the database and receive data back.

    Everything is implemented in a single python file so there is no compiling necessary. just drop the q.py file into your project and you can quickly query the database with just a few lines of code.

    sample usage:

    import q
    conn = q.q.('server', 5000, 'username')
    result = conn.k('select from trade')
    print result
     
  17. 和simons一样,也是80年代进入这个行业。二十年。
    将这个interview单独制作成pdf,方便保存学习。
     
  18. 弱弱的问一句,kdb+这类内存数据库,在系统关机或关闭退出程序时,它(们)是不是也需要将内存中的数据库信息回写到硬盘系统里?!:)等下次开机或启动程序时再从硬盘系统文件里读取到内存中?:p