Is there any version control tool for ksqldb queries? - ksqldb

I'm new to ksqldb, and I’m looking for a version control tool for ksqldb like flyway migrations for RDMBS in java.
I read the page below and understand the way of upgrading queries, but I'd like to operate to control versions of streams and tables more systematically.
https://docs.ksqldb.io/en/latest/concepts/upgrades/
Maybe there is no tools to meet this kind of requirements so far, and I just need to develop by myself?
or is any projects for this ongoing?

From ksqldb 0.17.0, we can use a version control tool!
The ksql-migrations tool is available with all ksqlDB versions starting from ksqlDB 0.17 or Confluent Platform 6.2. You can use the tool to manage any ksqlDB cluster running version ksqlDB 0.10 (Confluent Platform 6.0) or newer.
For details, please refer the ksqldb's document.
Announcement
https://www.confluent.io/blog/announcing-ksqldb-0-17-0-new-features-and-updates/#version-control

Related

Does TypeORM work with AWS Aurora Serverless?

Does TypeORM work with AWS Aurora Serverless, specifically the Postgres compatible version?
As of Dec. 2019, it doesn't - we've been looking for the same thing in the past couple of weeks.
There is a driver package called typeorm-aurora-data-api-driver which you can use in combination with TypeORM, but according to its author (source), it hasn't been tested with the PostgreSQL flavor of Aurora Serverless and it would require additional work in TypeORM to support it.
Note that this "driver" package relies on the data-api-client package to connect to the Aurora Serverless cluster.
Edit
The driver package has been updated to work with Postgres in recent releases.

django-pyodbc for Django 1.11

I am currently using Django 1.11.1 and am trying to connect to my iSeries Database using the django-pyodbc engine. However all the documentation I can find states django-pyodbc is only supported through Django 1.10. Is there any coding modifications I can make to have it support 1.11?
There are several forks and versions named django-pyodbc, however, the best maintained I've found is django-pyodbc-azure. It supports Django 1.11 and can be found here:
https://github.com/michiya/django-pyodbc-azure
I have used it with SQL Server 2005 - 2016 (but never Azure). Good luck!

How to install Torch on windows 8.1?

Torch is a scientific computing framework with wide support for machine learning algorithms. It is easy to use and efficient, thanks to an easy and fast scripting language, LuaJIT, and an underlying C/CUDA implementation.
Q:
Is there a way to install torch on MS Windows 8.1?
I got it installed and running on Windows (although not 8.1, but I don't expect the process to be different) following instructions in this repository; it's now deprecated, but wasn't deprecated few months ago when I built it. The new instructions point to torch/torch7 repository, but it has a different structure and I haven't been able to build it on Windows yet.
There are instructions on how to install Torch7 from luarocks, but you may run into issues on windows as well; I haven't tried this process. It seems like there is no official support for Windows yet, but some work is being done by contributors (there is a link to a pull request in that thread).
Based on my experience, compiling that deprecated repo may be your best option on Windows at the moment.
Update (7/9/2015): I've recently submitted several changes that fix compilation issues with mingw, so you may try the most recent version of torch7 and follow the build instructions in the ticket. Note that the changes only apply to the core lib and additional libraries may need similar changes.
This webpage hosted by New York University recommends installing a Linux virtual machine in order to run Torch7 on Windows through Linux. Another option would off course be to install a Linux dist in parallel with Windows 8.
Otherwise, if you don't mind running an older version of Torch, there is a Windows installer for Torch5 at SourceForge.
I think to use a GPU from inside the virtual machine, the processor and the motherboard should not only support VT-x , but VT-d should be supported too.
But the question is, if I use a CPU with VT-d supported, do you think there will be a significant loss in PCIe connections efficiency?
From what I understand,
VT-d is important if I want to give the virtual machines direct access to my hardware components (like PCI Express cards). Like directly attach graphics card to vm instead of host machine. Isn't that mean that the PCIe connections efficiency will be the same just like if it was the host?

Cassandra and Analytics on single node

With DataStax Enterprise, is it possible to set up a cassandra cluster that can do cassandra "realtime" and analytics on a single machine? Obviously, this is not for production, but for tiny little proof of concepts / logical experiments, I'd rather fire up a single linux vm, rather than 2 or 3. Would this be possible with a tarball install, if not through apt-get?
Yes. On the latest versions of dse 3.1.x, 3.2.x, and 4.0.x it should be possible to turn both the Solr and Hadoop features on, on the same node for development purposes.

Live application migration between two different versions of Erlang VMs

I have Erlang application running on R13 version of Erlang VM.
I want to upgrade VM to R14 without stopping the application.
How cay I do live migration of the application between
different versions of Erlang VM?
You need two things:
a) Lots and lots of planning.
b) An application that runs on several nodes.
The usual trick is to take down part of your node cluster and upgrade that to the new version. It should be able to talk to the older nodes. Then bump the older nodes when the new version of Erlang has taken over.
Erlang does not provide this kind of upgrade for free. It does make it much less painful though.
Short answer, you can not.
This is because applications compiled for the new version of the BEAM emulator (Erlang VM) would not run properly on older versions of the emulator.
Or in more details:
Upgrading an applications without stopping it can only be done using release handler. But release handler can only upgrade applications running in the VM, not the VM itself. You can still prepare a relup file but when systools:make_relup/3 notices that the new release uses a different version of the BEAM emulator it will add the instruction restart_new_emulator (Low-Level) to restart the node during the upgrade (see the description for restart_new_emulator on the page I mentioned earlier).
What you could do, however, is upgrading the Erlang VM without interrupting the service (assuming your application provides some service to an external party). But that very much depends on the architecture of your application and has no generic answer.

Resources