Download the PHP package tarantool/mapper without Composer

On this page you can find all versions of the php package tarantool/mapper. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package mapper

Tarantool Mapper

License: MIT Testing Latest Version Total Downloads Telegram

Getting started

Supported versions are php 8+ and tarantool 2+.\ The recommended way to install the library is through Composer:

Usually, you manage dependencies in your service provider.\ To get started you should create client instance and pass it to mapper constructor.\ In this example we use PurePacker and StreamConnection.\ To see other implementations please check client documentation

Schema management

To get started you should describe your spaces, their format and indexes.

Working with the data

Now you can store and retreive data from tarantool storage using mapper instance.

Schema Cache

Any new mapper instance will fetch schema from the tarantool, this requests can takes a bit of database load.\ Use your favorite psr/cache implementation to persist schema on the application side.\ For example, we use apcu adapter from symfony/cache package.\ If new schema version is not persisted in cache, mapper will fetch it

Query Cache

If you don't want to repeat select queries you can inject cache interface implementation to space.\ Use your favorite psr/cache implementation to persist schema on the application side.\ For example, we use array adapter from symfony/cache package.

Changes registration

In some cases you want to get all changes that were made during current session.\ By default spy configuration is set to false, this improves performance a bit.

Multiple connections

If you split your data across multiple tarantool instances you can use prefix based data api.\ Api is the same but you prefix space name with a connection prefix.

Lua code delivery

Iproto usage is very powerful but sometimes is not enough.\ You can easily execute lua code and pass local variables using associative array.

In addition, if you don't want to deliver it every request, use magic call method.\ When you use call method, mapper generates unique function name and creates it if it's not exist.

Migrations

Use basic migration class to implement some logic before or after schema creation.\ Pass migrations to mapper migrate method and that's all.

Performance

We can calculate mapper overhead using getInstance method that is called per each instance.\ If you don't use cache, there is single schema fetch on connection and each time schema is upgraded.\ Perfomance test was made on (AMD Ryzen 5 3600X), Ubuntu 23.10 using PHP 8.3.6

Instance type Instances per second
constructor 4 664 172
properties 4 328 442
simple array 11 983 040

All versions of mapper with dependencies

PHP Build Version
Package Version
Requires php Version >=8.0
tarantool/client Version >=0.10.0
psr/cache Version ^2.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package tarantool/mapper contains the following files

Loading the files please wait ....